我没有得到什么区别。SI和DI寄存器的实际区别是什么?
12
A
回答
22
如果您使用的是像MOVSB指令,SI被视为小号乌尔斯河寄存器,而迪被视为d estination寄存器。但它们都是普通的x86寄存器。
10
我的程序集有点生疏,但是其中一个是Source Index,另一个是Destination Index。 movsb
等指令将从SI
指向的内存位置复制一个字节,并将其移动到DI
所指向的内存位置,然后将两者都递增,因此如果要将存储在处的字节复制到DI+1
,需要进一步的movsb指令。
0
如告诉上述二代表目标索引和Si代表源索引,当我们要移动从我们使用SI例如,MOV AX,[SI]存储器中的数据。 当我们想要将数据移动到内存中时,我们使用di。例如,MOV [二],斧
两者都是16位寄存器,并且不能被分成8位
5
SI
代表源索引。源索引用作指向字符串指令(LODS,MOVS或CMPS)中正在读取的当前字符的指针。源索引也可用作间接寻址时添加Bx或Bp的偏移量。
例如:
MOV [Bx + SI] , Ax
该指令拷贝Ax的内容到存储器位置为地址为BX和SI的总和。
DI
代表目标索引,用作一个指针被写入或在一个字符串指令相比当前字符。
它也可以像SI一样用作偏移量。
相关问题
- 1. 寄存器和临时寄存器有什么区别?
- 2. 物理寄存器和重新排序缓冲区实际上是什么?
- 3. Response.Write和<%= %>之间的实际区别是什么?
- 4. RTMFP和BitTorrent的实际区别是什么?
- 5. `_.defaults`和`_.extend`之间的实际区别是什么?
- 6. while(true)和for(;;)之间的实际区别是什么?
- 7. gluortho2d和glViewport的实际区别是什么
- 8. 特殊形式和宏之间的实际区别是什么?
- 9. Objective-C中'object'和'variable'的实际区别是什么?
- 10. DI原理和“程序到接口,而不是实现”有什么区别?
- 11. 处理器/寄存器/内存中数据,地址和指令的区别是什么?
- 12. PIC寄存器(%ebx)是做什么的?
- 13. Android - 什么是实际使用 - 类别
- 14. Azure通知集线器遥测选项的实际区别是什么?
- 15. Atlassian SDK中atlas-run和atlas-run-standalone之间的实际区别是什么?
- 16. Jdbc中Type2和Type4驱动程序的实际区别是什么
- 17. upvar和全局命令在tcl中的实际区别是什么
- 18. 命令窗口和立即窗口之间的实际区别是什么?
- 19. WCF中传输和消息可靠性的实际区别是什么?
- 20. 在MySQL中`REPLACE`和`INSERT ... ON DUPLICATE KEY UPDATE`之间的实际区别是什么?
- 21. PHP中“关联”和“索引”数组之间的实际区别是什么?
- 22. ctor注入的PHP-DI寄存器实例
- 23. 什么是专用寄存器?
- 24. 什么是DI
- 25. 低位和高位寄存器的区别
- 26. 是什么区别:
- 27. 什么是实际应用过滤器?
- 28. 是什么的file_get_contents和FREAD的区别
- 29. 对象和实例有什么区别?
- 30. `Rational`和`BigNum`实现有什么区别
您可以同时使用MOV [SI],斧头,斧头MOV,[二],如果您使用的是简单的MOV指令,他们基本上是相同的,只是因为你可以使用MOV [BX],斧头。当你使用像MOVSB这样的指令时,CPU假定SI是源,DI是目的地,但是当你手动执行时,你可以使用两者都执行。 – Bob 2010-06-02 05:45:12