int register eax asm("eax") = addr; // addr is a memory address asm("jmp *%eax");
我想这样做,而不必设置任何其他的寄存器值(例如,我想要做的就是这样):
asm("jmp *(addr)");
什么是正确的方法来做到这一点? 也就是说,如何“插入”acvariables到asm调用?
Ubuntu 12.04 64位,Intel x86 64位处理器,gcc 4.7.4版本。
Windows x64平台上的inline asm中的libsoxr不能编译
系统调用x86_64 Linux中的内联asm?
内联程序集相当于_InterlockedCompareExchange128
如何使用程序集来获得返回float的__stdcall函数的结果
C / C ++内联汇编程序,带有stringvariables中的指令
内联assembly可以closures保护模式吗?
“用C表达式操作数汇编指令”
asm volatile("jmp *%0" : : "r" (addr));
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。