X-Git-Url: http://git.subgeniuskitty.com/vvhitespace/.git/blobdiff_plain/f0e3023da0dabbd199dedfd00b84deb75bca8578..0e0d0a4a1058f9d75cea563a76c1113a0da87fc2:/stdlib/string.pvvs diff --git a/stdlib/string.pvvs b/stdlib/string.pvvs index 5571349..8b68e22 100644 --- a/stdlib/string.pvvs +++ b/stdlib/string.pvvs @@ -36,4 +36,36 @@ NSSVSSTSSSSSSSSSSSSTN | Mark: 00100000 00000001 SNN | DROP NTN | RTS +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ Name: +@ isdigit (100001) +@ Description: +@ Tests 'character' on stack. Is it an ASCII number? +@ Returns 1 or 0 representing True/False. +@ Call Stack: +@ character <-- TOS +@ Return Stack: +@ 1 or 0 <-- TOS +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +NSSVTSSSSTN | Mark: 100001 (isdigit) + +SSSSSTTSSSSN | PUSH 48 (ASCII '0') +TSST | SUBTRACT +SNS | DUP +NTTSSTSSSSTSSSSSSSSN | BMI > 00100001 00000000 (not digit) +SNS | DUP +SSSTSTSN | PUSH 10 +TSST | SUBTRACT +NTTSSTSSSSTSSSSSSSTN | BMI > 00100001 00000001 (is digit) + +NSSVSSTSSSSTSSSSSSSSN | Mark: 00100001 00000000 (not digit) +SNN | DROP +SSSSN | PUSH 0 +NTN | RTS + +NSSVSSTSSSSTSSSSSSSTN | Mark: 00100001 00000001 (is digit) +SNN | DROP +SSSTN | PUSH 1 +NTN | RTS + #endif