有关汇编编程的问题,请高手帮忙

来源:百度知道 编辑:UC知道 时间:2024/06/15 04:46:51
mov cx,20
lea si,buffer1
lea si,buffer2
rep movsw
请问:
(1)这个程序主要完成什么动作?
(2)rep第一次执行时要完成什么工作?
(3)movsw第一次执行时要完成什么动作?
(4)rep与movsw哪一条先执行?
谢谢烁皓,不好意思,是敲错了,应该是
mov cx,20
lea si,buffer1
lea di,buffer2
rep movsw
第(2)、(3)问怎么解答呢?

你的这个程序是不是错了?应该有个edi的地址吧?怎么两个都是esi呢?mov cx,20
lea si,buffer1
lea di,buffer2
rep movsw 的程序,是把buffer1里的数据安字传送到buffer2里,传20个次(如果20是10进制的话,)
rep先执行
rep第一次执行时判断cx是否为0,为0执行下面的指令,不为0时,cx减一,并执行后面的movsw指令,movsw就是传送数据。