RIGHT  START              ;右寄せ処理 [b02.cas]
       IN     S,LEN       ;文字列の入力
       LD     GR1,LEN     ;GR1に文字長を入れる
LOOP   LAD    GR1,-1,GR1  ;GR1-1 → GR1
       LD     GR0,S,GR1   ;1文字取り出す [  a  ]
       CPA    GR0,=' '    ;空白か?
       JZE    LOOP
       LD     GR2,LEN     ;GR2に文字長を入れる
       LD     GR4,GR1     ;GR1 → GR4 [  b  ]
       SUBA   GR2,GR1     ;GR2-GR1 → GR2
       SUBA   GR2,=1      ;GR2-1 → GR2
       LD     GR0,=' '    ;GR0に空白を入れる
       LD     GR1,GR2     ;GR2 → GR1
       LAD    GR3,0       ;0 → GR3
N0     SUBA   GR2,=1      ;GR2-1 → GR2
       JMI    N1
       ST     GR0,R,GR2
       JUMP   N0
N1     LAD    GR2,0       ;0 → GR2
N2     LD     GR0,S,GR2   ;Sの1文字を取り出す
       ST     GR0,R,GR1   ;1文字を格納 [  c  ]
       CPA    GR4,GR2
       JZE    FIN
       LAD    GR1,1,GR1   ;GR1+1 → GR1
       LAD    GR2,1,GR2   ;GR2+1 → GR2
       JUMP   N2
FIN    LAD    GR1,1,GR1   ;GR1+1 → GR1
       ST     GR1,LEN
       OUT    R,LEN       ;Rを出力
       RET
R      DS     20          ;出力域
LEN    DS     1
S      DS     256         ;入力域
       END