アセンブラファイルとテストの整理
[YACASL2.git] / as / mul.casl
diff --git a/as/mul.casl b/as/mul.casl
deleted file mode 100644 (file)
index ec7b57b..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-;平成21年 春期 基本情報技術者 午後 問12-2
-MAIN   START
-       LAD     GR1,X
-       LAD     GR2,Y
-    LAD GR3,A
-    CALL MUL
-       RET
-X      DC      2,3
-Y      DC      4,5
-A   DS  2
-       END
-MUL     START              ; 32ビット×32ビット→32ビット
-        RPUSH
-        PUSH  0,GR3
-        PUSH  0,GR2
-        LD    GR2,1,GR2    ; 乗数下位語を取り出してGR2に設定
-        CALL  MULS         ; 被乗数×乗数下位語→積(A)
-        POP   GR2
-        LD    GR2,0,GR2
-        LAD   GR3,SV       ; 結果の格納先として作業領域を設定
-        CALL  MULS         ; 被乗数×乗数上位語→積(B)
-        LD    GR6,1,GR3
-        POP   GR3
-        ADDL  GR6,0,GR3    ; 積(A)の上位語と積(B)の下位語を加算
-        ST    GR6,0,GR3
-        RPOP
-        RET
-SV      DS    2
-        END
-MULS    START              ; 32ビット×16ビット→32ビット
-        RPUSH
-        LAD   GR6,0        ; 積 上位語の初期化
-        LAD   GR7,0        ; 積 下位語の初期化
-        LD    GR4,0,GR1    ; 被乗数 上位語の取出し
-        LD    GR5,1,GR1    ; 被乗数 下位語の取出し
-LP      SRL   GR2,1        ; 乗数を1ビット右にシフト
-        JOV   ADD32
-        JZE   FIN
-        JUMP  NEXT         ; 加算処理をスキップ
-ADD32   ADDL  GR6,GR4      ; 32ビット+32ビット→32ビット
-        ADDL  GR7,GR5
-        JOV   ADJ1
-        JUMP  NEXT 
-ADJ1    ADDL  GR6,=1       ; けた上げ処理
-NEXT    SLL   GR4,1        ; 被乗数(32ビット)を1ビット左にシフト
-        SLL   GR5,1
-        JOV   ADJ2
-        JUMP  LP
-ADJ2    OR    GR4,=1
-        JUMP  LP
-FIN     ST    GR6,0,GR3    ; 乗算結果の格納
-        ST    GR7,1,GR3
-        RPOP
-        RET
-        END