以下に,1〜nの総和を再帰的に求めるプログラムの記述例を示します.
% type foo.asm
;lab. mnemonic comment
.text
_MAIN: ld #0x7
swp
or #0xff ; sp = 0x7ff
mv sp, acc
in ; input
push
call radd
pop
out ; result
halt
;
radd: mv ixr, sp
ld ixr, 1
push
or #0
jpz radd0
dec acc
push
call radd
pop
mv ixr, sp
add ixr, 0
radd0: mv ixr, sp
st ixr, 2
pop ; dummy pop
ret
.data
ZERO: .word 0
D100: .word 100
%
次に,kiteasm でアセンブルして得られるオブジェクト・ファイルを以下に示します.
% kiteasm foo Text segment : 00000000 Data segment : 00000400 BSS segment : 00000600 Const segment : 00000700 Input file : foo.asm Output file : foo.hex % % type foo.hex :10000000C107BC0091FFF001C800D400200AD00055 :10001000CC00F800F008C201D400910050158C0506 :10002000D400200AD000F0088200F008C602D000F8 :10003000E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFEE :1008000000000064FFFFFFFFFFFFFFFFFFFFFFFF90 :00000001FF %
ホーム
もどる
辞書
This is my e-mail address: