【发布时间】:2010-10-16 12:51:36
【问题描述】:
当您使用如下的 x86 程序集(Intel 语法)时,究竟使用了哪个段,我有点困惑:
移动斧头,[di]
我很确定它不会是代码段,我在想数据段还是堆栈? (或者说栈是数据段的一部分?)
【问题讨论】:
-
通常是
DS(数据段)。堆栈将是SS的一部分——堆栈段。SP和(我认为)BP是默认为SS而大多数其他操作默认为DS。 -
好的,有道理。不要以为您知道这一行中的直接寻址会指向什么?调用远 ptr 2480h:0DB0h
-
这在很大程度上取决于您正在编程的模式。实模式?保护模式?
-
bitRAKE 让我想起了另一个奇怪的事情。当您进行各种字符串操作时,源通常是
DS:SI(数据段源索引),目标通常是ES:DI(额外段,目标索引)。