]> j8takagi.net Git Repository - YACASL2.git/commitdiff
コマンドテスト用アセンブラファイル追加、修正
authorj8takagi <j8takagi@nifty.com>
Mon, 8 Feb 2010 19:35:47 +0000 (04:35 +0900)
committerj8takagi <j8takagi@nifty.com>
Mon, 8 Feb 2010 19:35:47 +0000 (04:35 +0900)
49 files changed:
as/cmd/ADDA/adda0.casl [moved from as/cmd/ADDA/adda0_0.casl with 72% similarity]
as/cmd/ADDA/adda0_ov0.casl
as/cmd/ADDA/adda0_ov1.casl
as/cmd/ADDA/adda0_s0.casl
as/cmd/ADDA/adda0_s1.casl
as/cmd/ADDA/adda0_z.casl [new file with mode: 0644]
as/cmd/ADDA/adda1.casl [new file with mode: 0644]
as/cmd/ADDA/adda1_ov0.casl
as/cmd/ADDA/adda1_ov1.casl
as/cmd/ADDA/adda1_s0.casl
as/cmd/ADDA/adda1_s1.casl
as/cmd/ADDA/adda1_z.casl [new file with mode: 0644]
as/cmd/ADDA/adda2.casl [moved from as/cmd/ADDA/adda1_0.casl with 90% similarity]
as/cmd/ADDA/adda2_ov0.casl [new file with mode: 0644]
as/cmd/ADDA/adda2_ov1.casl [new file with mode: 0644]
as/cmd/ADDA/adda2_s0.casl [new file with mode: 0644]
as/cmd/ADDA/adda2_s1.casl [new file with mode: 0644]
as/cmd/ADDA/adda2_z.casl [new file with mode: 0644]
as/cmd/ADDL/addl0.casl
as/cmd/ADDL/addl0_ov0.casl
as/cmd/ADDL/addl0_ov1.casl
as/cmd/ADDL/addl0_s0.casl
as/cmd/ADDL/addl0_s1.casl [new file with mode: 0644]
as/cmd/ADDL/addl0_z.casl [new file with mode: 0644]
as/cmd/ADDL/addl1.casl
as/cmd/ADDL/addl1_ov0.casl
as/cmd/ADDL/addl1_ov1.casl
as/cmd/ADDL/addl1_s0.casl
as/cmd/ADDL/addl1_s1.casl [new file with mode: 0644]
as/cmd/ADDL/addl1_z.casl [new file with mode: 0644]
as/cmd/AND/and0.casl
as/cmd/AND/and0_s.casl
as/cmd/AND/and0_z.casl
as/cmd/AND/and1.casl
as/cmd/AND/and1_s.casl
as/cmd/AND/and1_z.casl
as/cmd/CALL/call0.casl
as/cmd/CALL/call1.casl
as/cmd/CALL/call2.casl [deleted file]
as/cmd/CPA/cpa0_0.casl [new file with mode: 0644]
as/cmd/CPA/cpa0_1.casl [new file with mode: 0644]
as/cmd/CPA/cpa0_2.casl [new file with mode: 0644]
as/cmd/CPA/cpa0_3.casl [new file with mode: 0644]
as/cmd/CPA/cpa1_0.casl [moved from as/cmd/CPA/cpa1.casl with 78% similarity]
as/cmd/CPA/cpa1_1.casl [new file with mode: 0644]
as/cmd/CPA/cpa1_2.casl [new file with mode: 0644]
as/cmd/CPA/cpa1_3.casl [new file with mode: 0644]
as/cmd/literal_semi.casl [new file with mode: 0644]
as/err/opd_x_err.casl [new file with mode: 0644]

similarity index 72%
rename from as/cmd/ADDA/adda0_0.casl
rename to as/cmd/ADDA/adda0.casl
index ec6f2f876fb0fc6633990a0d685a835ca8fd7d9a..7c951b1738ce1df9585dce2c4f021fc18dfe2844 100644 (file)
@@ -1,5 +1,6 @@
+;;; ADDA r,adr
 MAIN    START
-BEGIN   LAD     GR1,A
+BEGIN   L     GR1,A
         ADDA    GR1,B
         RET
 A       DC      3
index d0f516338984dc45bf9c4e8062019b36ba8a7e20..ad85f713c621f4a34758299386658dcf5026c48e 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDA r,adr 正数でオーバーフロー
 MAIN    START
         LD      GR1,A
         ADDA    GR1,B
index b3a940e24e1df5c2089356292ff0c78f754ffb10..d20f312072dd59ac04811b681d390f9900119395 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDA r,adr 負数でオーバーフロー
 MAIN    START
         LD      GR1,A
         ADDA    GR1,B
index 3770d349027206959701f880089f46ad36460d91..b4d33f9f38d2fee8ed3f9040b69c0aa9f6dcf1ac 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDA r,adr 演算結果が負数(r > adr)
 MAIN    START
         LD      GR1,A
         ADDA    GR1,B
index 3b8fd4d43086db74df8f5a87cd0166fd4665d0cd..bef7e13454f245d1b6f66d31546baaa4a8acc7c0 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDA r,adr 演算結果が負数(r < adr)
 MAIN    START
         LD      GR1,A
         ADDA    GR1,B
diff --git a/as/cmd/ADDA/adda0_z.casl b/as/cmd/ADDA/adda0_z.casl
new file mode 100644 (file)
index 0000000..cee1302
--- /dev/null
@@ -0,0 +1,8 @@
+;;; ADDA r,adr 演算結果が零
+MAIN    START
+        LD      GR1,A
+        ADDA    GR1,B
+        RET
+A       DC      -10
+        DC      10
+        END
diff --git a/as/cmd/ADDA/adda1.casl b/as/cmd/ADDA/adda1.casl
new file mode 100644 (file)
index 0000000..023afe6
--- /dev/null
@@ -0,0 +1,9 @@
+;;; ADDA r,adr,x
+MAIN    START
+BEGIN   LD      GR1,A
+        LAD     GR2,1
+        ADDA    GR1,A,GR2
+        RET
+A       DC      3
+        DC      1
+        END
index 1a38af55e3a0af5c6c27214605b3d770298d9233..9c405037549b3f18d7147e80a58ab90663f2284a 100644 (file)
@@ -1,8 +1,9 @@
+;;; ADDA r,adr,x 負数でオーバーフロー
 MAIN    START
         LD      GR1,A
-        LD      GR2,B
-        ADDA    GR1,GR2
+        LAD     GR2,1
+        ADDA    GR1,A,GR2
         RET
-A       DC      32767
-B       DC      10
+A       DC      #8001           ; -32767
+        DC      #FFF6           ; -10
         END
index 326a3d13f90035a814ad0af0ca87077df58aa127..9c405037549b3f18d7147e80a58ab90663f2284a 100644 (file)
@@ -1,8 +1,9 @@
+;;; ADDA r,adr,x 負数でオーバーフロー
 MAIN    START
         LD      GR1,A
-        LD      GR2,B
-        ADDA    GR1,GR2
+        LAD     GR2,1
+        ADDA    GR1,A,GR2
         RET
-A       DC      -32767
-B       DC      -10
+A       DC      #8001           ; -32767
+        DC      #FFF6           ; -10
         END
index 054f18911f5a70df72c7ed87bf44c663b67067a7..0c482b5b4bc305b3e7e1c5961c09bfa4c6f8818e 100644 (file)
@@ -1,8 +1,9 @@
+;;; ADDA r,adr,x 演算結果が負数(r > adr)
 MAIN    START
         LD      GR1,A
-        LD      GR2,B
-        ADDA    GR1,GR2
+        LAD     GR2,1
+        ADDA    GR1,A,GR2
         RET
 A       DC      10
-B       DC      #FFEC           ; -20
+        DC      #FFEC           ; -20
         END
index 9f28bc12efda19e5986d26ca3a30d48efdaa9ba1..4fe0c370eb18fc437ac938a224c99a21d940234b 100644 (file)
@@ -1,8 +1,9 @@
+;;; ADDA r,adr,x 演算結果が負数(r < adr)
 MAIN    START
         LD      GR1,A
-        LD      GR2,B
-        ADDA    GR1,GR2
+        LAD     GR2,1
+        ADDA    GR1,A,GR2
         RET
 A       DC      -10
-B       DC      20
+        DC      20
         END
diff --git a/as/cmd/ADDA/adda1_z.casl b/as/cmd/ADDA/adda1_z.casl
new file mode 100644 (file)
index 0000000..1003ab5
--- /dev/null
@@ -0,0 +1,9 @@
+;;; ADDA r1,adr,x 演算結果が零
+MAIN    START
+        LD      GR1,A
+        LAD     GR2,1
+        ADDA    GR1,A,GR2
+        RET
+A       DC      -10
+        DC      10
+        END
similarity index 90%
rename from as/cmd/ADDA/adda1_0.casl
rename to as/cmd/ADDA/adda2.casl
index 6c69581dca259611598bba2bba98d33672e6b4b6..eee6ad56e31b2c906d0ee28a62b259a4128790d9 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDA r1,r2
 MAIN    START
 BEGIN   LD      GR1,A
         LD      GR2,B
diff --git a/as/cmd/ADDA/adda2_ov0.casl b/as/cmd/ADDA/adda2_ov0.casl
new file mode 100644 (file)
index 0000000..afbd655
--- /dev/null
@@ -0,0 +1,9 @@
+;;; ADDA r1,r2 正数でオーバーフロー
+MAIN    START
+        LD      GR1,A
+        LD      GR2,B
+        ADDA    GR1,GR2
+        RET
+A       DC      32767
+B       DC      10
+        END
diff --git a/as/cmd/ADDA/adda2_ov1.casl b/as/cmd/ADDA/adda2_ov1.casl
new file mode 100644 (file)
index 0000000..c26cf69
--- /dev/null
@@ -0,0 +1,9 @@
+;;; ADDA r1,r2 負数でオーバーフロー
+MAIN    START
+        LD      GR1,A
+        LD      GR2,B
+        ADDA    GR1,GR2
+        RET
+A       DC      -32767
+B       DC      -10
+        END
diff --git a/as/cmd/ADDA/adda2_s0.casl b/as/cmd/ADDA/adda2_s0.casl
new file mode 100644 (file)
index 0000000..57b8579
--- /dev/null
@@ -0,0 +1,9 @@
+;;; ADDA r1,r2 演算結果が負数(r1 > r2)
+MAIN    START
+        LD      GR1,A
+        LD      GR2,B
+        ADDA    GR1,GR2
+        RET
+A       DC      10
+B       DC      #FFEC           ; -20
+        END
diff --git a/as/cmd/ADDA/adda2_s1.casl b/as/cmd/ADDA/adda2_s1.casl
new file mode 100644 (file)
index 0000000..4a86734
--- /dev/null
@@ -0,0 +1,9 @@
+;;; ADDA r1,r2 演算結果が負数(r1 < r2)
+MAIN    START
+        LD      GR1,A
+        LD      GR2,B
+        ADDA    GR1,GR2
+        RET
+A       DC      -10
+B       DC      20
+        END
diff --git a/as/cmd/ADDA/adda2_z.casl b/as/cmd/ADDA/adda2_z.casl
new file mode 100644 (file)
index 0000000..2e879b8
--- /dev/null
@@ -0,0 +1,9 @@
+;;; ADDA r1,r2 演算結果が零
+MAIN    START
+        LD      GR1,A
+        LD      GR2,B
+        ADDA    GR1,GR2
+        RET
+A       DC      -10
+B       DC      10
+        END
index 5e2924c3bc2729d33afc50573ebe613ce1f6dbb7..2128758d042ce5c4c8e2ac930f0f28f047375c14 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDL r,addr[,x]
 MAIN    START
 BEGIN   LAD     GR1,A
         ADDL    GR1,B
index 2c48a4716994a17d134fe5dd3fc927f78541131d..e8d10a0f0dbaf56fde18ff32ba3d8fc4b149563d 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDL r,addr[,x] 正数でオーバーフロー発生
 MAIN    START
         LD      GR1,A
         ADDL    GR1,B
index 4ef996fd3944fd60505f21f5a6cc830612ffadb4..c99962c2c694a0f4503c55d3a1d26e1cd693b18e 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDL r,addr[,x] 負数でオーバーフロー発生
 MAIN    START
         LD      GR1,A
         ADDL    GR1,B
index 215236de183fae39976934d8a09ca3a6ddcca17c..85b25ce95310897e8fe133f9c7bd569f9f429296 100644 (file)
@@ -1,7 +1,8 @@
+;;; ADDL r,addr[,x] 演算結果の符号が負(r > adr)
 MAIN    START
         LD      GR1,A
         ADDL    GR1,B
         RET
 A       DC      10
-B       DC      #FFEC           ; 65516
+B       DC      #FFEC        ; -20
         END
diff --git a/as/cmd/ADDL/addl0_s1.casl b/as/cmd/ADDL/addl0_s1.casl
new file mode 100644 (file)
index 0000000..59c29f5
--- /dev/null
@@ -0,0 +1,8 @@
+;;; ADDL r,addr[,x] 演算結果の符号が負(r < adr)
+MAIN    START
+        LD      GR1,A
+        ADDL    GR1,B
+        RET
+A       DC      #FFEC        ; -20
+B       DC      10
+        END
diff --git a/as/cmd/ADDL/addl0_z.casl b/as/cmd/ADDL/addl0_z.casl
new file mode 100644 (file)
index 0000000..d082259
--- /dev/null
@@ -0,0 +1,8 @@
+;;; ADDL r,addr[,x] 演算結果が零
+MAIN    START
+        LD      GR1,A
+        ADDL    GR1,B
+        RET
+A       DC      10
+B       DC      #FFF6        ; -10
+        END
index 6c69581dca259611598bba2bba98d33672e6b4b6..aff696bfece0b10fe134cb4d2a29331b3921293a 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDL r1,r2
 MAIN    START
 BEGIN   LD      GR1,A
         LD      GR2,B
index 1a38af55e3a0af5c6c27214605b3d770298d9233..ca3fc2e2457b13a1c1cb1fe5a9441fcbfab9e084 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDL r1,r2 正数でオーバーフロー発生
 MAIN    START
         LD      GR1,A
         LD      GR2,B
index 326a3d13f90035a814ad0af0ca87077df58aa127..104b43193b1f66177aae19c551272f1b80b12335 100644 (file)
@@ -1,3 +1,4 @@
+;;; ADDL r1,r2 負数でオーバーフロー発生
 MAIN    START
         LD      GR1,A
         LD      GR2,B
index 34da997bf772eda265ae128cb5ccdc3ce7bc1969..1db3977d6a9ae660941556d28ff73d1f94af8cef 100644 (file)
@@ -1,8 +1,9 @@
+;;; ADDL r1,r2 演算結果の符号が負(r1 > r2)
 MAIN    START
         LD      GR1,A
         LD      GR2,B
         ADDL    GR1,GR2
         RET
 A       DC      10
-B       DC      #FFEC           ; 65516
+B       DC      #FFEC       ; -20
         END
diff --git a/as/cmd/ADDL/addl1_s1.casl b/as/cmd/ADDL/addl1_s1.casl
new file mode 100644 (file)
index 0000000..2fde062
--- /dev/null
@@ -0,0 +1,9 @@
+;;; ADDL r1,r2 演算結果の符号が負(r1 < r2)
+MAIN    START
+        LD      GR1,A
+        LD      GR2,B
+        ADDL    GR1,GR2
+        RET
+A       DC      #FFEC       ; -20
+B       DC      10
+        END
diff --git a/as/cmd/ADDL/addl1_z.casl b/as/cmd/ADDL/addl1_z.casl
new file mode 100644 (file)
index 0000000..52b9e2d
--- /dev/null
@@ -0,0 +1,9 @@
+;;; ADDL r1,r2 演算結果が零
+MAIN    START
+        LD      GR1,A
+        LD      GR2,B
+        ADDL    GR1,GR2
+        RET
+A       DC      10
+B       DC      #FFF6        ; -10
+        END
index c6169ec657fa58bcc4a2200e30dcdf66cc1a26a0..1fe63d111cd3728d48be017b903b79515e01b5c6 100644 (file)
@@ -1,3 +1,4 @@
+;;; AND r,adr[,x]
 MAIN    START
         LD      GR1,A
         AND     GR1,B
index bfbd4572c629e43cd35971d78cfa50d8b83fe71c..448c768731ebaaa6236edfc61034f9634c0de573 100644 (file)
@@ -1,3 +1,4 @@
+;;; AND r,adr[,x] 演算結果の符号が負
 MAIN    START
         LD      GR1,A
         AND     GR1,B
index 64270ecee2351c996e756cc154b9f35b16be479b..0ac684e79476b591a9e3dedca7d0e6490002d011 100644 (file)
@@ -1,3 +1,4 @@
+;;; AND r,adr[,x] 演算結果が零
 MAIN    START
         LD      GR1,A
         AND     GR1,B
index d41a1d838376e7a9e7c31e5155274d89ab74d28e..91ea8cfccd430a4af867e06219aeeb5f70e2de19 100644 (file)
@@ -1,3 +1,4 @@
+;;; AND r1,r2
 MAIN    START
         LD      GR1,A
         LD      GR2,B
index ad41d2482de2b7456cc101f97c6e9b98cf71b48d..c7f520c4fbc004c6ebb79dba440eacc5359a751b 100644 (file)
@@ -1,3 +1,4 @@
+;;; AND r1,r2 演算結果の符号が負
 MAIN    START
         LD      GR1,A
         LD      GR2,B
index 1135b54ef63151d6fd9f548dd5755389636bb88f..a91dbdf8730ad27c2aa88145b7374cf6f6e60a40 100644 (file)
@@ -1,3 +1,4 @@
+;;; AND r1,r2 演算結果が零
 MAIN    START
         LD      GR1,A
         LD      GR2,B
index d6a6a40073a030253f8d9bd4eb3a7ea3265196fd..ec37f341b0ff7fbe27624cda3e459180391ecf11 100644 (file)
@@ -1,4 +1,5 @@
-MAIN    START
+;;; CALL ほかのプログラムの入口名を指定
+        MAIN    START
         LAD     GR1,29
         CALL    COPY
         RET
index bc420fbbf813bee9405baf0deb5cc733dc09af90..70f8ae09179d32afced3371ef542dc66acb00cc3 100644 (file)
@@ -1,3 +1,4 @@
+;;; CALL 同じプログラムの中にあるラベルを指定
 MAIN    START   BEGIN
 BEGIN   LAD     GR1,29
         CALL    COPY
diff --git a/as/cmd/CALL/call2.casl b/as/cmd/CALL/call2.casl
deleted file mode 100644 (file)
index afa5fdd..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-MAIN    START   BEGIN
-BEGIN   LD      GR1,=29
-        CALL    INCR
-        ST      GR1,A
-        RET
-A       DS      1
-        END
-INCR    START
-        ADDA      GR1,=1
-        RET
-FIN     END
diff --git a/as/cmd/CPA/cpa0_0.casl b/as/cmd/CPA/cpa0_0.casl
new file mode 100644 (file)
index 0000000..9ce1eb9
--- /dev/null
@@ -0,0 +1,7 @@
+MAIN    START   BEGIN
+BEGIN   LD      GR1,A
+        CPA     GR1,B
+        RET
+A       DC      #5000
+B       DC      #7000
+        END
diff --git a/as/cmd/CPA/cpa0_1.casl b/as/cmd/CPA/cpa0_1.casl
new file mode 100644 (file)
index 0000000..ef5ec06
--- /dev/null
@@ -0,0 +1,7 @@
+MAIN    START   BEGIN
+BEGIN   LD      GR1,A
+        CPA     GR1,B
+        RET
+A       DC      #5000
+B       DC      #3000
+        END
diff --git a/as/cmd/CPA/cpa0_2.casl b/as/cmd/CPA/cpa0_2.casl
new file mode 100644 (file)
index 0000000..adca4a5
--- /dev/null
@@ -0,0 +1,7 @@
+MAIN    START   BEGIN
+BEGIN   LD      GR1,A
+        CPA     GR1,B
+        RET
+A       DC      #5000
+B       DC      #5000
+        END
diff --git a/as/cmd/CPA/cpa0_3.casl b/as/cmd/CPA/cpa0_3.casl
new file mode 100644 (file)
index 0000000..1c24511
--- /dev/null
@@ -0,0 +1,7 @@
+MAIN    START   BEGIN
+BEGIN   LD      GR1,A
+        CPA     GR1,B
+        RET
+A       DC      #5000
+B       DC      #8000
+        END
similarity index 78%
rename from as/cmd/CPA/cpa1.casl
rename to as/cmd/CPA/cpa1_0.casl
index a5ca590184fcab51b20432dc1c78d752ceffd318..551c76ae61fd77a37e5b84e55d7ef7b2ddfd1768 100644 (file)
@@ -1,6 +1,6 @@
 MAIN    START   BEGIN
 BEGIN   LAD     GR1,#5000
-        LAD     GR2,#F000
+        LAD     GR2,#7000
         CPA     GR2,GR1
         RET
         END
diff --git a/as/cmd/CPA/cpa1_1.casl b/as/cmd/CPA/cpa1_1.casl
new file mode 100644 (file)
index 0000000..45c7ae9
--- /dev/null
@@ -0,0 +1,6 @@
+MAIN    START   BEGIN
+BEGIN   LAD     GR1,#5000
+        LAD     GR2,#3000
+        CPA     GR2,GR1
+        RET
+        END
diff --git a/as/cmd/CPA/cpa1_2.casl b/as/cmd/CPA/cpa1_2.casl
new file mode 100644 (file)
index 0000000..2eb7c86
--- /dev/null
@@ -0,0 +1,6 @@
+MAIN    START   BEGIN
+BEGIN   LAD     GR1,#5000
+        LAD     GR2,#5000
+        CPA     GR1,GR2
+        RET
+        END
diff --git a/as/cmd/CPA/cpa1_3.casl b/as/cmd/CPA/cpa1_3.casl
new file mode 100644 (file)
index 0000000..99af974
--- /dev/null
@@ -0,0 +1,8 @@
+MAIN    START   BEGIN
+BEGIN   LD      GR1,A
+        LD      GR2,B
+        CPA     GR1,GR2
+        RET
+A       DC      #5000
+B       DC      #8000
+        END
diff --git a/as/cmd/literal_semi.casl b/as/cmd/literal_semi.casl
new file mode 100644 (file)
index 0000000..a3cc7ea
--- /dev/null
@@ -0,0 +1,4 @@
+MAIN    START
+        LAD     GR1,=';'        ; 「;」の処理が正常にできるか
+FIN     RET
+        END
diff --git a/as/err/opd_x_err.casl b/as/err/opd_x_err.casl
new file mode 100644 (file)
index 0000000..ee98241
--- /dev/null
@@ -0,0 +1,9 @@
+;;; ADDA r,adr,x 演算結果が負数(r < adr)
+MAIN    START
+        LD      GR1,A
+        LAD     GR2,1
+        ADDA    GR1,A,1
+        RET
+A       DC      -10
+        DC      20
+        END