- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
如何在 64 位中替换 _asm nop
指令。在 32 位中编译和工作。
1 Câu trả lời
我相信您可以使用 __nop 内部函数。这应该编译成适用于您正在构建的处理器的机器指令。
http://msdn.microsoft.com/en-us/library/aa983381(VS.80).aspx
làm mới:
这是我刚刚用 VS2008 创建的示例。它针对 Win32 和 x64 配置进行编译:
#include "stdafx.h"
#include
int _tmain(int argc, _TCHAR* argv[])
{
// The intrinsic function below will compile to a NOP machine instruction.
// This is the same as _asm nop in the 32-bit compiler.
__nop();
trả về 0;
}
如果您想知道,我反汇编了上面的示例,x64 输出为:
wmain proc near
db 66h
nop
nop
xor eax, eax
retn
wmain endp
Win32 输出是:
_main proc near
nop
xor eax, eax
retn
_main endp
关于c++ - 在 64 位、VS2008、C++ 中替换 _asm nop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2321070/
我刚刚编写了一个整数数组的 bubble_sort(见上一个问题)并决定忽略标准交换并实现一个程序集交换,它看起来像这样: int swap(int* x, int* y) { if(x != y)
我一直在尝试从 c 中的一行代码转换为汇编代码,但我只是无法弄清楚使用 asm 的指向成员函数的指针的正确翻译是什么。这是代码片段: struct file{ int size; }FILE; voi
我试图了解内存的工作原理,以及每条指令如何分配内存。我也在尝试理解偏移量和基指针的概念。我正在为英特尔处理器和 MIPS 这样做。我可以在 Visual Studio 中访问内存窗口,但是当我在 UN
我正在尝试在 Visual Studio 2015 中实现 bool 运算以及 _asm _emit,想在 x86 程序中插入一些 x64 操作码,我必须做很多 mov 到内存命令,所以我尝试制作某种
我正在开发一个必须非常非常快的程序。 我会用 C++ 来实现,因为它必须做很多逻辑运算,比如 XOR、AND 甚至计算二进制数中 1 的个数,我认为使用 是个好主意_asm{} 在代码的某些部分中更快
_asm { //---------------------------------- dword_type(DYN_LOADER_START_MAGIC) //-----------
我正在基于部分汇编和 C 代码使用 16 位 Turbo C++ 3.0 版编写程序。我必须在汇编 block 中使用 C 代码的局部变量。我在 Borland C++ 5 和 MS VC++ 6 中
我有一个驱动程序代码有一个使用 _asm(内联汇编)的汇编代码,当我在 32 位 WDK 中编译时它工作正常但它抛出以下错误: "error C4235: nonstandard extension
如何在 64 位中替换 _asm nop 指令。在 32 位中编译和工作。 最佳答案 我相信您可以使用 __nop 内部函数。这应该编译成适用于您正在构建的处理器的机器指令。 http://msdn.
Tôi là một lập trình viên xuất sắc, rất giỏi!