gpt4 book ai didi

assembly - 冒号的未知含义 ( : ) in assembly instruction

转载 作者:行者123 更新时间:2023-12-01 09:14:32 28 4
gpt4 key购买 nike

我正在使用反汇编程序(SmartDec:http://decompilation.info/)并且生成的反汇编中的许多指令看起来类似于:

mov rax, [rip + 0x32b5]:64

我不熟悉 :64本指令的一部分。这是什么意思?

其他例子:
cmp [rcx + r8 * 0x8]:64, 0x0
mov eax, [rip + 0x592a]:32
jmp [rip + 0x6bad]:64

这个反汇编器没有显示相应的机器码,所以我用了一个十六进制编辑器,查找了它说这条指令所在的地址:
1665:   mov rax, [rip + 0x19a4]:64

这就是 Little Endian 中的内容,值(value) 16 个字节:
54 00 00 49 89 E8 FF 15 DC 5F 00 00 E9 57 FF FF

最佳答案

它是内存操作数的大小,无论出于何种原因打印。我是从 example on the SmartDec home page 推导出来的读作 movzx edx, [ecx]:16因此,这相当于 movzx edx, word [ecx]在其他汇编程序中(或 word ptr)。仅当无法从其他操作数推导出大小时才有用,例如 movzx案件。 SmartDec似乎每次都显示它,例如对于您在问题中的示例,mov rax, [rip + 0x32b5]:64很明显,大小是 64 位,所以它没有多大帮助。

关于assembly - 冒号的未知含义 ( : ) in assembly instruction,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48029953/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com