Born to be proud
10/29
2014

The First ASM

写的第一个汇编程序,发出来纪念一下。


;试编写程序,完成下面公式的计算。
;A ←(X-Y+24)/ Z 的商,B ←(X-Y+24)/ Z 的余数
;其中,变量 X 和 Y 是 32 位有符号数,变量 A、B、Z 是 16 位有符号数。

DATA SEGMENT
X DD 481
Y DD 240
A DW ?
B DW ?
Z DW 24
DATA ENDS

CODE SEGMENT
    ASSUME DS: DATA, CS: CODE
START:
    MOV AX, DATA
    MOV DS, AX
    MOV AX, word ptr ds:[0]
    MOV DX, word ptr ds:[2]
    MOV BX, word ptr ds:[4]
    MOV CX, word ptr ds:[6]
    SUB AX, BX
    SBB DX, CX
    ADD AX, 24
    ADC DX, 0
    MOV BX, Z
    IDIV BX
    MOV A,AX
    MOV B,DX

    MOV AX, 4C00H
    INT 21H
CODE ENDS
END START