Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 有人能帮助将此asm代码转换为c++;对于x64?_C++_Assembly - Fatal编程技术网

C++ 有人能帮助将此asm代码转换为c++;对于x64?

C++ 有人能帮助将此asm代码转换为c++;对于x64?,c++,assembly,C++,Assembly,我正在创建一些东西,但它使用内联asm。我需要在X64编译,如果有人可以帮助转换这个代码到一个C++等效,这将是非常有益的。谢谢 DWORD dwReturn; __asm { push dwReturn; pushfd; pushad; }; __asm { popad; popfd; ret; } 唉,这是不可能做到的,您的内联程序集并没有编写任何可以用高级语言转换的算法。您使用的指令非常依赖于架构,当然,在C++中没有支持。 我不知道有哪种编译器内部可以执行pusha、push或

我正在创建一些东西,但它使用内联asm。我需要在X64编译,如果有人可以帮助转换这个代码到一个C++等效,这将是非常有益的。谢谢

DWORD dwReturn;

__asm 
{
push dwReturn;
pushfd;
pushad;
};

__asm 
{
popad;
popfd;
ret;
}

唉,这是不可能做到的,您的内联程序集并没有编写任何可以用高级语言转换的算法。您使用的指令非常依赖于架构,当然,在C++中没有支持。
我不知道有哪种编译器内部可以执行
pusha
push
pushf

我想说的是,基本上这会推动变量,然后返回。这个汇编代码有什么意义?你写道这是你创造的。你的目标是什么?摆脱内联汇编程序?是的,这不是全部功能,只是asm部分,因此可能没有多大意义。这不是我的功能,我没有写它,我只是想知道我能做的事情,但是在C++中,我在X64中编译我的项目。也许是代码> SETJMP < /Cux/<代码> LojJMP < /Cord>,这取决于用例。我真的不知道我是否应该更新答案