version 1.66, 2012/05/26 10:35:35
|
version 1.67, 2012/05/28 14:20:04
|
Line 132 DOES> ( -- r )
|
Line 132 DOES> ( -- r )
|
: sfnumber ( c-addr u -- r true | false ) |
: sfnumber ( c-addr u -- r true | false ) |
fp-char @ >float1 ; |
fp-char @ >float1 ; |
|
|
Create si-prefixes ," PTGMk.munpf" |
Create si-prefixes ," PTGMk munpf" |
si-prefixes count '.' scan drop Constant zero-exp |
si-prefixes count bl scan drop Constant zero-exp |
|
|
: prefix-number ( c-addr u -- r true | false ) |
: prefix-number ( c-addr u -- r true | false ) |
si-prefixes count bounds DO |
si-prefixes count bounds DO |
2dup I c@ scan nip 0<> IF |
2dup I c@ scan nip dup 0<> IF |
I c@ >float1 |
1 = IF 1- fp-char @ ELSE I c@ THEN |
|
>float1 |
dup IF 1000 s>f zero-exp I - s>f f** f* THEN |
dup IF 1000 s>f zero-exp I - s>f f** f* THEN |
UNLOOP EXIT THEN |
UNLOOP EXIT THEN drop |
LOOP |
LOOP |
sfnumber ; |
sfnumber ; |
[ELSE] |
[ELSE] |