C Rela ELF64它指向的是操作数还是操作数?

C Rela ELF64它指向的是操作数还是操作数?,c,linux,assembly,64-bit,elf,C,Linux,Assembly,64 Bit,Elf,我仍然在用Java编写ELF64加载程序,在REL(a)部分的描述中,有一个说明了入口的偏移量指向操作,而不是要操作的实际值 但是,检查我的示例中System V的10类型(S+A)时,我发现它正好指向B9移动的操作数(我认为是ecx) 我还想知道,因为我想要一个64位的C程序,它只显示一个32位的地址。我错过了什么?它指向了当然的价值。重新定位不知道或不关心可能不是单个字节的操作码。相对地址在64位模式下也使用32位偏移量。从程序内存读取或写入程序内存的操作码不需要更改,但其立即值需要更改,因

我仍然在用Java编写ELF64加载程序,在REL(a)部分的描述中,有一个说明了入口的偏移量指向操作,而不是要操作的实际值

但是,检查我的示例中System V的10类型(S+A)时,我发现它正好指向B9移动的操作数(我认为是ecx)


我还想知道,因为我想要一个64位的C程序,它只显示一个32位的地址。我错过了什么?

它指向了当然的价值。重新定位不知道或不关心可能不是单个字节的操作码。相对地址在64位模式下也使用32位偏移量。从程序内存读取或写入程序内存的操作码不需要更改,但其立即值需要更改,因为这是将程序重新定位到内存中实际位置的关键。好的,恐怕我必须为某些操作编写类似反汇编程序的代码。这样做更有意义,所以最后那句话中的文档是错误的。我将向作者发送一个更正节点。谢谢