2025-05-27 16:03:52 +08:00

23 lines
1001 B
NASM
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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