Re: call 64位地址的二进制码调用错误

64-bit CPU

call 64位地址的二进制码调用错误


enoloo 2007-08-02, 17:10 下午

我查阅了IA-32手册,看的不是很明白。 call(ff/2)能够调用64位地址。 猜测在x64下是否是 ff1500000000 64-bits-addr?

该指令能跳转到目标64位地址;但是该指令被解析的时候是 :

ff1500000000 (单独一条)

。。。(后面的64-bits-addr当成指令解析)

 

所以在 。。。 处就崩溃了。 查了好久没找到原因,请高人帮忙指点分析。

Re: call 64位地址的二进制码调用错误


土豆泥 2007-08-06, 13:04 下午
1)你是从32位的代码调用64位么?如果是,建议看一下WOW (Win32 on Win64)的反汇编代码。
2)参考IA32手册卷2A的 Table 2-4 关于REX 前缀的说明。

Powered by Community Server Powered by CnForums.Net