指令LODS DWORD PTR DS是什么:[ESI]?

时间:2014-05-16 18:12:08

标签: assembly

我有以下汇编指令(您也可以在标题中看到):

 LODS DWORD PTR DS:[ESI]

在一个网站上我发现了:

 The lods instruction is unique among the string instructions. 
 You will never use a repeat prefix with this instruction. 
 The lods instruction copies the byte or word pointed at by ds:si 
 into the al, ax, or eax register, after which it increments or 
 decrements the si register by one, two, or four. 

但我不明白这一点:我怎么能确定在哪个寄存器al,ax或eax中复制字节或字。

有人可以通过更多

向我解释

1 个答案:

答案 0 :(得分:2)

操作的大小决定了目标寄存器以及ESI寄存器的前进程度。对于LODS DWORD,加载一个双字(32位)数据,这意味着32位EAX寄存器。 LODS WORD将16位进入16位AX寄存器,LODS BYTE将成为8位AL。