微机原理实验一之存贮器内部数据传输

xiaoxiao2021-02-28  137

微机原理实验共分为四次,这是最简单的第一次,请慢慢欣赏

源程序

.model tiny .stack 100 .code start:mov ax,8000h mov ds,ax mov es,ax nop mov cx,100h mov si,3000h mov di,6000h call move mov cx,100h mov si,3000h mov di,6000h cld repe cmpsb jne error true:jmp $ error:jmp $ move proc near cld cmp si,di jz return jnb move1 add si,cx dec si add di,cx dec di std move1:rep movsb return:ret move endp end start

此次实验的源程序非经典的汇编语言,目测估计为masm 6.x版本,尽管看起来不太舒服,但不影响阅读使用,这个程序的作用显然无须多说:即将ds:si开始处的数据转移至es:di处,转移长度记录在cx中。

效果图

总结 本次实验最大的收获就在于此程序中考虑到了正逆序复制对于数据的影响,一般来说数据正序复制是合理的,但如果源地址和目的地址存在重叠的部分,那么这时候往往采用逆序复制会起到更好的效果,具体原因,可以自行演示两只手指重叠的效果

转载请注明原文地址: https://www.6miu.com/read-45841.html

最新回复(0)