汇编语言的高手进来下

来源:百度知道 编辑:UC知道 时间:2024/05/30 10:09:19
用汇编语言编一个加法程序:1234+9876
已经编得程序
data segment
a dw 1234H
b dw 9876H
d1 dw ?
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov ax,a
add ax,b
mov d1,ax
xs1: and ax,0f000H
mov cl,12
ror ax,cl
add ax,37H
mov dl,ax
mov ah,02
int 21H
xs2: mov ax,d1
and ax,0f00H
mov cl,08
ror ax,cl
add ax,37H
mov dl,ax
mov ah,02
int 21H
xs3: mov ax,d1
and ax,0f0H
mov cl,04
ror ax,cl
add ax,37H
mov dl,ax
mov ah,02
int 21H
xs4: mov ax,d1
and ax,0fH
add ax,37H
mov dl,ax
mov ah,02
int 21H
mov ah,4CH
int 21H
code ends
end start
但是换了1234+9876就不行了。。
请高手们改下可以换成XXXX+YYYY都可以通用的程序
谢谢·~~~

ADD AL,30H
CMP AL 3AH
JB CC
ADD AL, 07H
CC:MOV DL,AL

续:
全部源码见下:
data segment
a dw 1234H
b dw 1234H
d1 dw ?
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov ax,a
add ax,b
mov d1,ax
xs1: and ax,0f000H
mov cl,12
ror ax,cl
ADD AL,30H
CMP AL,3AH
JB CC
ADD AL, 07H
CC:MOV DL,AL
mov ah,02
int 21H
xs2: mov ax,d1
and ax,0f00H
mov cl,08
ror ax,cl
ADD AL,30H
CMP AL,3AH
JB c1
ADD AL, 07H
c1:
MOV DL,AL
mov ah,02
int 21H
xs3: mov ax,d1
and ax,0f0H
mov cl,04
ror ax,cl
ADD AL,30H
CMP AL,3AH
JB c2
ADD AL, 07H
c2:MOV DL,AL
mov ah,02
int 21H
xs4: mov ax,d1
and ax,0fH
ADD AL,30H
CMP AL,3AH
JB c3
ADD AL, 07H
c3:MOV DL,AL
mov