本文主要是介绍汇编语言 第三版 王爽 实验5 第5、6小题程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目:
注意:
dw 是定义的字型数据,每个数据16个位,两个字节。
db是定义的字节型数据,每个数据8位,一个字节。
所以 需要a b 里的数据段的数据 放到al寄存器中保存。
段寄存器之间不能直接转移数据,需要通过al寄存器来中转。
mov al,es:[bx]
add ds:[bx],al
思路:
直接把a段的数据和b段的数据相加保存在a段里,在把a段的数据复制到c段。
这里有一个问题,a b段的数据不是很大 ,相加之后还是小于255,所以不会溢出。如果大于255如何解决呢?
第5小题:
assume cs:code
a segmentdb 1,2,3,4,5,6,7,8
a ends
b segmentdb 1,2,3,4,5,6,7,8
b ends
c segmentdb 0,0,0,0,0,0,0,0
c ends
code segment
start:mov ax,amov ds,axmov ax,bmov es,axmov bx,0mov cx,8s1:mov al,es:[bx]add ds:[bx],alinc bxloop s1mov ax,cmov es,axmov bx,0mov cx,8s2:mov al,ds:[bx]mov es:[bx],alinc bxloop s2mov ax,4c00hint 21h
code ends
end start
结果:
思路:
没什么难点,用一个栈就可以了。
assume cs:code
a segmentdw 1,2,3,4,5,6,7,8,9,0ah,0bh,0ch,0dh,0eh,0fh,0ffh
a ends
b segmentdw 0,0,0,0,0,0,0,0
b ends
code segment
start:mov ax,amov ds,axmov bx,0mov ax,bmov ss,axmov sp,10hmov cx,8s:push [bx]add bx,2loop smov ax,4c00hint 21hcode ends
end start
结果:
这篇关于汇编语言 第三版 王爽 实验5 第5、6小题程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!