Compile DIGIT
This commit is contained in:
52
wipforth.wat
52
wipforth.wat
@@ -1353,6 +1353,58 @@
|
||||
;; DROP -1 \ Return -1 for an invalid digit
|
||||
;; ;
|
||||
|
||||
(data (i32.const 0x086c)
|
||||
"\1c\08\00\00"
|
||||
"\05DIGIT\00\00"
|
||||
"\00\00\00\00"
|
||||
"\08\02\00\00" ;; DUP
|
||||
"\08\02\00\00" ;; DUP
|
||||
"\18\04\00\00" ;; LIT
|
||||
"\30\00\00\00" ;; 48
|
||||
"\38\03\00\00" ;; >=
|
||||
"\28\02\00\00" ;; SWAP
|
||||
"\18\04\00\00" ;; LIT
|
||||
"\39\00\00\00" ;; 57
|
||||
"\2c\03\00\00" ;; <=
|
||||
"\8c\03\00\00" ;; AND
|
||||
"\b4\04\00\00" ;; 0BRANCH
|
||||
"\14\00\00\00" ;; 20
|
||||
"\18\04\00\00" ;; LIT
|
||||
"\30\00\00\00" ;; 48
|
||||
"\cc\02\00\00" ;; -
|
||||
"\a4\04\00\00" ;; BRANCH
|
||||
"\34\00\00\00" ;; 52
|
||||
"\08\02\00\00" ;; DUP
|
||||
"\08\02\00\00" ;; DUP
|
||||
"\18\04\00\00" ;; LIT
|
||||
"\41\00\00\00" ;; 65
|
||||
"\38\03\00\00" ;; >=
|
||||
"\28\02\00\00" ;; SWAP
|
||||
"\5a\00\00\00" ;; 90
|
||||
"\2c\03\00\00" ;; <=
|
||||
"\8c\03\00\00" ;; AND
|
||||
"\b4\04\00\00" ;; 0BRANCH
|
||||
"\38\00\00\00" ;; 56
|
||||
"\18\04\00\00" ;; LIT
|
||||
"\2d\00\00\00" ;; 45
|
||||
"\cc\02\00\00" ;; -
|
||||
"\08\02\00\00" ;; DUP
|
||||
"\08\02\00\00" ;; DUP
|
||||
"\80\03\00\00" ;; 0>=
|
||||
"\28\02\00\00" ;; SWAP
|
||||
"\70\05\00\00" ;; BASE
|
||||
"\cc\03\00\00" ;; @
|
||||
"\14\03\00\00" ;; <
|
||||
"\8c\03\00\00" ;; AND
|
||||
"\b4\04\00\00" ;; 0BRANCH
|
||||
"\08\00\00\00" ;; 8
|
||||
"\0c\04\00\00" ;; EXIT
|
||||
"\18\02\00\00" ;; DROP
|
||||
"\ff\ff\ff\ff" ;; -1
|
||||
"\0c\04\00\00") ;; EXIT
|
||||
|
||||
;; => 0xc4 bytes
|
||||
|
||||
;; : NEGATE INVERT 1+ ;
|
||||
|
||||
;; : NUMBER? ( len -- value TRUE | FALSE )
|
||||
|
||||
Reference in New Issue
Block a user