在汇编中默认的输入时10进制 比如 mov al,10 在内存中就会是0A 所以要在数后面加h表示16进制 mov al,10h
代码
data segment
x db 12h,34h,23h,45h,34h,56h,78h,90h
y db 11h,11h,11h,11h,11h,11h,11h,11h
sum db ?
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax ;操作数据
lea si,x
lea di,y
lea bx,sum
clc ;清楚进位标志的数据
mov cx,8
again:
mov al,[si] ;操作位数是一位
adc al,[di]
mov [bx],al
pushf ;压栈防止 影响cf进位
inc si
inc di
inc bx
popf
dec cx ;循环操作指令
jnz again ;循环结束
mov al,0
adc [bx+1],al ;实现进位
mov ax,4c00h
int 21h
code ends
end start
运行截图