REI5A  START
       LAD   GR1,0        ;カウンタを0にする
       LD    GR0,A        ; Aの値をGR0に入れる
       JMI   FUSUU        ;負数か判断
       LD    GR3,=' '     ;正のときはスペース
       ST    GR3,BUFF,GR1 ;文字を保存
       JUMP  KEISAN       ;数値処理にジャンプ
FUSUU  LD    GR3,='-'     ;負数のときはマイナス
       ST    GR3,BUFF,GR1 ;文字を保存
       LAD   GR0,0        ;絶対値処理
       SUBA  GR0,A        ;絶対値処理
KEISAN LAD   GR1,1,GR1    ;カウンタインクリメント
       LD    GR2,WORK,GR1 ;除数をGR2に読み込み
       CALL  DIV          ;わり算処理へ
       PUSH  0,GR3        ; GR3を一時待避
       OR    GR3,WORK     ;文字コードの判別
       ST    GR3,WORK     ;結果をWORKに
       POP   GR3          ; GR3を復帰
       JZE   SPACE        ; ORの結果が0のとき分岐
       OR    GR3,MOJI     ;  #0030を加算
       JUMP  HOZON        ;文字コード保存処理へ
SPACE  LD    GR3,=' '     ; ORが0のときスペース
HOZON  ST    GR3,BUFF,GR1 ;文字コードを保存
       CPA   GR1,C4       ;ループ回数の比較
       JMI   KEISAN       ; 4回ループする
       OR    GR0,MOJI     ; 1の位を文字コードに
       LAD   GR1,1,GR1    ;カウンタインクリメント
       ST    GR0,BUFF,GR1 ;文字コードの保存
       OUT   BUFF,LEN     ;結果の表示
       RET
A      DC    -2050
BUFF   DS    6            ;文字コード保存領域
LEN    DC    6            ;文字コードの長さ
WORK   DC    0,10000,1000,100,10
MOJI   DC    #0030
C4     DC    4
       END                 
DIV    START
       LAD   GR3,0        ;商を0にする
DLOOP  CPA   GR0,GR2      ;除数で引けるか判別 
       JMI   FIN          ;引けないときはFINへ
       SUBA  GR0,GR2      ;被除数−除数
       LAD   GR3,1,GR3    ;商をインクリメント
       JUMP  DLOOP        ;繰り返し処理
FIN    RET
       END