程序集(AT&T格式)操作数值

时间:2018-09-28 16:09:41

标签: assembly x86 att

我正在阅读这本书,但找不到以下问题的答案。假定以下值存储在指示的存储器地址和寄存器中:

0x100 = 0xFF; 0x104 = 0xAB; 0x108 = 0x13; 0x10C = 0x11; %eax = 0x100; %ecx = 0x1; %edx = 0x3。

以下操作数的值是什么(以及为什么)? 260(%ecx,%edx)

操作数形式为Imm(Eb,Ei),操作数值应为 M [Imm + R [Eb] + R [Ei]]。在这种情况下,答案将是M [260 + 0x1 + 0x3]-> M [260 + 0x4]-> M [264]。但是,内存中没有0x264地址。

1 个答案:

答案 0 :(得分:2)

只有0x ...是0x ...,即hexadecimal integer。如果没有0x,则为decimal integer。您必须将“ 260”从十进制转换为十六进制。