我的脚本输入两个数字,从第一个数字中减去第二个数字并输出结果:
CR EQU $0D
LF EQU $0A
START ORG $1000
*---------- Code for output ---------*
LEA MSG1,a1
MOVE.B #14,d0
TRAP #15
*---------- Code for input ---------*
MOVE.B #4,d0
TRAP #15
move.b d1,d2
*---------- Code for output ---------*
LEA MSG2,a1
MOVE.B #14,d0
TRAP #15
*---------- Code for input ---------*
MOVE.B #4,d0
TRAP #15
sub.b d2,d1
move #3,d0
trap #15
*---------- Halt Simulator ---------*
MOVE.B #9,d0
TRAP #15
* Stop execution
STOP #$2000
MSG1 DC.B 'Enter a first number: ',0
MSG2 DC.B 'Enter a second number: ',0
END START end of program with start address specified
如果第一个数字 = 50
第二个数字 = 100
结果是 = 50
但如果第一个数字 = 100
第二个数字 = 50
结果是 206
为什么是206?怎么了?以及256在这个操作中有什么意义。
在以下链接上也有很好的资源来解释这一点: