概述
在内存中存放两个6字节无符号整数,分别实现加法减法
方法一:
data segment
x db 12h,34h,23h,45h,34h,56h
y db 11h,11h,11h,11h,11h,11h
sum db 0
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,6
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
方法二:
data segment
x dw 1122h
dw 3344h
dw 5566h
y dw -1111h
dw -1111h
dw -1111h
z dw 0000h
dw 0000h
dw 0000h
s dw 0000h
dw 0000h
dw 0000h
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov ax,[x]
add ax,[y]
mov [z],ax
mov ax,[x+2]
add ax,[y+2]
mov [z+2],ax
mov ax,[x+4]
add ax,[y+4]
mov [z+4],ax
mov ax,[x]
sub ax,[y]
mov [s],ax
mov ax,[x+2]
sub ax,[y+2]
mov [s+2],ax
mov ax,[x+4]
sub ax,[y+4]
mov [s+4],ax
mov ax,4c00h
int 21h
code ends
end start
最后
以上就是彩色铅笔为你收集整理的汇编——多字节有符号加法的全部内容,希望文章能够帮你解决汇编——多字节有符号加法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复