Compile WORD
This commit is contained in:
35
wipforth.wat
35
wipforth.wat
@@ -1157,6 +1157,41 @@
|
||||
;; DUP 0<> 0BRANCH [-92] \ Loop back to KEY if zero length
|
||||
;; ;
|
||||
|
||||
(data (i32.const 0x0668)
|
||||
"\00\60\00\00"
|
||||
"\04WORD\00\00\00"
|
||||
"\00\00\00\00"
|
||||
"\18\04\00\00" ;; LIT
|
||||
"\00\00\00\00" ;; 0
|
||||
"\84\07\00\00" ;; KEY
|
||||
"\f0\05\00\00" ;; TUCK
|
||||
"\0c\06\00\00" ;; SPACE?
|
||||
"\b4\04\00\00" ;; 0BRANCH
|
||||
"\38\00\00\00" ;; 56
|
||||
"\f0\05\00\00" ;; TUCK
|
||||
"\ac\05\00\00" ;; WORDBUF
|
||||
"\c0\02\00\00" ;; +
|
||||
"\f0\03\00\00" ;; C!
|
||||
"\90\02\00\00" ;; 1+
|
||||
"\08\02\00\00" ;; DUP
|
||||
"\18\04\00\00" ;; LIT
|
||||
"\20\00\00\00" ;; 32
|
||||
"\38\03\00\00" ;; >=
|
||||
"\b4\04\00\00" ;; 0BRANCH
|
||||
"\08\00\00\00" ;; 56
|
||||
"\0c\04\00\00" ;; EXIT
|
||||
"\a4\04\00\00" ;; BRANCH
|
||||
"\bc\ff\ff\ff" ;; -68
|
||||
"\28\02\00\00" ;; SWAP
|
||||
"\18\02\00\00" ;; DROP
|
||||
"\08\02\00\00" ;; DUP
|
||||
"\5c\03\00\00" ;; 0<>
|
||||
"\b4\04\00\00" ;; 0BRANCH
|
||||
"\a4\ff\ff\ff" ;; -92
|
||||
"\0c\04\00\00") ;; EXIT
|
||||
|
||||
;; => 0x80 bytes
|
||||
|
||||
;; : STRING= ( len str1 str2 -- bool )
|
||||
;; 2DUP C@ SWAP C@ \ Load a byte from each address
|
||||
;; = 0BRANCH [48] \ Check for byte mismatch
|
||||
|
||||
Reference in New Issue
Block a user