projects
/
YACASL2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ライセンスの年度表記を変更
[YACASL2.git]
/
as
/
fe_tests
/
2009_10
/
Q12
/
outb.casl
diff --git
a/as/fe_tests/2009_10/Q12/outb.casl
b/as/fe_tests/2009_10/Q12/outb.casl
index
9e1d70a
..
32fd6cb
100644
(file)
--- a/
as/fe_tests/2009_10/Q12/outb.casl
+++ b/
as/fe_tests/2009_10/Q12/outb.casl
@@
-22,6
+22,7
@@
EMB LD GR1,NCHAR ; GR0 <- '0'
EMLOOP LD GR2,LEN ; GR2 <- LEN
CPA GR2,DIG ; ループ先頭。(GR2 = DIG)の場合は、ループ脱出
JZE PRT ; ↓
EMLOOP LD GR2,LEN ; GR2 <- LEN
CPA GR2,DIG ; ループ先頭。(GR2 = DIG)の場合は、ループ脱出
JZE PRT ; ↓
+
CALL STSTR ; GR1をSTR領域に格納
JUMP EMLOOP ; ループ終端
PRT LD GR2,LEN ; GR2にLENの値を格納
CALL STSTR ; GR1をSTR領域に格納
JUMP EMLOOP ; ループ終端
PRT LD GR2,LEN ; GR2にLENの値を格納
@@
-33,11
+34,10
@@
PRT LD GR2,LEN ; GR2にLENの値を格納
STR DS 17
LEN DS 1
NCHAR DC '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
STR DS 17
LEN DS 1
NCHAR DC '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-DIG DC 16
+DIG DC 16
END
;; GR1をSTR領域に格納し、LENをインクリメント
END
;; GR1をSTR領域に格納し、LENをインクリメント
-STSTR START
- PUSH 0,GR1
+STSTR PUSH 0,GR1
PUSH 0,GR2
LD GR2,LEN ; GR2にLENの値をロード
ST GR1,STR,GR2 ; STR+GR2 <- GR1
PUSH 0,GR2
LD GR2,LEN ; GR2にLENの値をロード
ST GR1,STR,GR2 ; STR+GR2 <- GR1
@@
-79,7
+79,7
@@
ODFIN POP GR3
POP GR2
RET
ODY DS 1
POP GR2
RET
ODY DS 1
-ODMB DC #8000
+ODMB DC #8000
END
;; アドレスがGR1、長さがGR2の文字列を逆順に並べ替える
;; 例: 12345 -> 54321、54321- -> -12345
END
;; アドレスがGR1、長さがGR2の文字列を逆順に並べ替える
;; 例: 12345 -> 54321、54321- -> -12345