+++ /dev/null
-GETWD START
- RPUSH
- LD GR6,GR1
- LD GR7,GR2
- LD GR3,=-1 ; 数字列の処理状態フラグの初期化
- LAD GR6,-1,GR6
-LP LAD GR6,1,GR6
- LD GR4,0,GR6 ; 1文字の取出し
- CPL GR4,='.'
- JZE FIN
- CPL GR4,=' '
- JNZ NUM
- CALL SETWD
- JUMP LP
-NUM LD GR3,GR3 ; 数字列の処理中?
- JZE LP
- LD GR3,=0 ; 次の数字列の処理開始
- LD GR1,GR6 ; 数字列の先頭アドレスを退避
- JUMP LP
-FIN CALL SETWD
- LD GR2,=-1
- ST GR2,0,GR7 ; 数値の終わりを示す印を格納
- RPOP
- RET
-SETWD LD GR3,GR3
- JNZ FIN2
- LD GR2,GR6
- SUBL GR2,GR1
- CALL DTOB ; 数字列を数値に変換
- ST GR0,0,GR7
- LD GR3,=-1 ; 数字列の処理中状態を解除
- LAD GR7,1,GR7
-FIN2 RET
- END