【发布时间】:2013-05-22 17:22:06
【问题描述】:
将我的常量 $3360220 存储在内存位置 0x7FFFFFFFb098 中的正确 gcc 可编译 GAS ASM 代码是什么? 这会产生预期的结果吗? movabs 指令在下一行“溢出”可以吗? 添加的问题:我的反汇编代码看起来像这样,尽管我写了
jmp 0x401070
,这是为什么,我该如何解决?它还将我的 movq 转换为 movabs
0: 49 c7 c1 dc 45 33 00 mov $0x3345dc,%r9
7: 49 ba 98 f0 ff ff ff movabs $0x7fffffff098,%r10
e: 07 00 00
11: 4d 89 0a mov %r9,(%r10)
14: e9 00 00 00 00 jmpq 0x19
我使用objdump -d file.o > file.d 在 linux x86-64 中创建了 .d 文件。如何使用正确的链接?
我最初输入错误的地址错过了十六进制中的“b”。抱歉。
【问题讨论】: