first commit
This commit is contained in:
23
Lab/Lab1/material/1.asm
Executable file
23
Lab/Lab1/material/1.asm
Executable file
@@ -0,0 +1,23 @@
|
||||
DATA SEGMENT
|
||||
NUM1 DD 11451400H ; 被加数
|
||||
NUM2 DD 19198100H ; 加数
|
||||
SUM DD ? ; 结果
|
||||
DATA ENDS
|
||||
CODE SEGMENT
|
||||
ASSUME CS:CODE, DS:DATA
|
||||
start:
|
||||
MOV AX, DATA
|
||||
MOV DS, AX
|
||||
MOV AX, WORD PTR NUM1 ; 将NUM1低位赋给AX
|
||||
MOV WORD PTR SUM, AX ; 将AX赋给SUM低位(MOV指令不能直接在两个内存单元间赋值)
|
||||
MOV AX, WORD PTR NUM2 ; 将NUM2低位赋给AX
|
||||
ADD WORD PTR SUM, AX ; 将AX加到SUM的低位上
|
||||
|
||||
MOV AX, WORD PTR NUM1+2 ; 将NUM1高位赋给AX
|
||||
ADC WORD PTR SUM+2, AX ; ADC(Add with Carry)将AX加到SUM的高位(初始为零)上,再加上CF存着的低位进位
|
||||
MOV AX, WORD PTR NUM2+2 ; 将NUM2高位赋给AX
|
||||
ADD WORD PTR SUM+2, AX ; 将AX加到SUM的高位上
|
||||
MOV AH, 4CH ; 退出程序
|
||||
INT 21H
|
||||
CODE ENDS
|
||||
END start
|
||||
Reference in New Issue
Block a user