求助:徽机原理的基础汇编(一两句搞定那种)

来源:百度知道 编辑:UC知道 时间:2024/05/16 11:47:56
若有两个4字节的无符号数相加,这两个数分别存放在2000H和3000H开始的存储单元,将所求的和存放在2000H开始的内存单元中,试编制程序....
课堂作业...
最好简单解释下..呵呵!

Code Segment
Assume CS:Code,ds:Code
Start: push cs
pop ds
push cs
pop es
mov bx,2003h ;被加数开始地址
mov si,3003h ;加数开始地址
mov cx,4 ;相加次数
std ;变址寻址地址递减
clc ;进位标志复位
Addition: lodsb ;取一个字节的无符号加数
adc [bx],al ;带进位加法
dec bx ;被加数地址递减
loop Addition ;循环
xit_Proc: mov ah,4ch ;结束程序
int 21h
abc dd 12345678
CODE Ends
END Start

楼主的意思两个无符号的双字相加么?
那楼上回答也太复杂了吧

mov ax,[3000] ;低字放入ax中
mov dx,[3002] ;高字放入dx中

clc;cf清零

add [2000],ax ;先把低字相加
adc [2002],dx ;高字相加再加上低字的进位

所求的和存放在2000H开始的内存单元中

CLR C
MOV A,2000H
ADD A,3000H
MOV 2000H,A
MOV A,2001H
ADDC A,3001H
MOV 2001H,A
MOV A,2002H
ADDC A,3002H
MOV 2002H,A
MOV A,2003H
ADDC A,3003H
MOV 2003H,A
JNC NEXT
MOV