projects
/
YACASL2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
CASL2LIBで、固定小数点表示のプログラムを中心に修正
[YACASL2.git]
/
test
/
system
/
casl2
/
lib_mull
/
mull.casl
diff --git
a/test/system/casl2/lib_mull/mull.casl
b/test/system/casl2/lib_mull/mull.casl
index
b7d6997
..
6085ce1
100644
(file)
--- a/
test/system/casl2/lib_mull/mull.casl
+++ b/
test/system/casl2/lib_mull/mull.casl
@@
-1,12
+1,12
@@
MAIN START
MAIN START
- LAD GR
3
,0 ; Xのインデックス
-LOOPX CPA GR
3,XCNT ; (GR3
= XCNT)の場合、ループ脱出
+ LAD GR
4
,0 ; Xのインデックス
+LOOPX CPA GR
4,XCNT ; (GR4
= XCNT)の場合、ループ脱出
JZE FIN ; ↓
JZE FIN ; ↓
- LD GR1,X,GR
3 ; GR1に、(X+GR3
)番地の値を転送
- LAD GR
4
,0 ; Yのインデックス
-LOOPY CPA GR
4,YCNT ; (GR4
= YCNT)の場合、ループ脱出
+ LD GR1,X,GR
4 ; GR1に、(X+GR4
)番地の値を転送
+ LAD GR
5
,0 ; Yのインデックス
+LOOPY CPA GR
5,YCNT ; (GR5
= YCNT)の場合、ループ脱出
JZE XNEXT ; ↓
JZE XNEXT ; ↓
- LD GR2,Y,GR
4 ; GR2に、(X+GR4
)番地の値を転送
+ LD GR2,Y,GR
5 ; GR2に、(X+GR5
)番地の値を転送
CALL OUTL ; GR1の数値を出力
PUSH 0,GR1 ; GR2の数値を出力
LD GR1,GR2 ; ↓
CALL OUTL ; GR1の数値を出力
PUSH 0,GR1 ; GR2の数値を出力
LD GR1,GR2 ; ↓
@@
-19,11
+19,19
@@
LOOPY CPA GR4,YCNT ; (GR4 = YCNT)の場合、ループ脱出
CALL OUTL ; ↓
POP GR1 ; ↓
YNEXT OUT SEP,SLEN ; 区切り線を出力
CALL OUTL ; ↓
POP GR1 ; ↓
YNEXT OUT SEP,SLEN ; 区切り線を出力
- LAD GR
4,1,GR4 ; GR4 <- GR4
+ 1
+ LAD GR
5,1,GR5 ; GR5 <- GR5
+ 1
JUMP LOOPY ; LOOPYへジャンプ
WOV OUT YOMSG,YLEN ; オーバーフローした場合のメッセージを表示
JUMP LOOPY ; LOOPYへジャンプ
WOV OUT YOMSG,YLEN ; オーバーフローした場合のメッセージを表示
+ PUSH 0,GR1 ; GR0の数値を出力
+ LD GR1,GR0 ; ↓
+ CALL OUTL ; ↓
+ POP GR1 ; ↓
+ PUSH 0,GR1 ; GR3の数値を出力
+ LD GR1,GR3 ; ↓
+ CALL OUTL ; ↓
+ POP GR3 ; ↓
JUMP YNEXT ; YNEXTへジャンプ
JUMP YNEXT ; YNEXTへジャンプ
-XNEXT LAD GR
3,1,GR3 ; GR3 <- GR3
+ 1
+XNEXT LAD GR
4,1,GR4 ; GR4 <- GR4
+ 1
JUMP LOOPX ; LOOPXへジャンプ
FIN RET
X DC 0,1,2,127,128,255,256,257,32767,#8000,#FFFF
JUMP LOOPX ; LOOPXへジャンプ
FIN RET
X DC 0,1,2,127,128,255,256,257,32767,#8000,#FFFF
@@
-32,6
+40,6
@@
XCNT DC 11
YCNT DC 11
SEP DC '--------------------'
SLEN DC 20
YCNT DC 11
SEP DC '--------------------'
SLEN DC 20
-YOMSG DC '
Warning:
overflow'
-YLEN DC
17
+YOMSG DC 'overflow'
+YLEN DC
8
END
END