+ -
当前位置:首页 → 问答吧 → 求高人把C++代码转成汇编代码

求高人把C++代码转成汇编代码

时间:2011-08-19

来源:互联网

只要支持基本类型:int,double,字串等等的运算就可以,还有函数调用,其实就是汇编基本指令,会写汇编程序的人应该不难。

简单的说,就是我给出一段C代码(C++在汇编级和C没有区别),你用汇编写出来。

我发现win32的汇编和传统的汇编语言差别很大,现在的Win32汇编支持double这种运算,现在的CPU有这个运算单元,等等,也就是有很多新指令,一般汇编教程根本不提。

本人没有汇编基础,结论依赖于查看VS的反汇编代码,希望有汇编达人谈点经验看法,这个难度大不大,我感觉只要会汇编语言,难度不大。

当然,还有个问题,就是通常的汇编语言有很多伪指令,我需要真正的指令,而且最终我需要代码的二进制数据,而不是asm的汇编源码,比如mov这个指令,好像实际上有好几种mov,都是一个字节。

作者: pgmsoul   发布时间: 2011-08-19

cl -FAs name.cpp

作者: leetow2003   发布时间: 2011-08-19

引用楼主 pgmsoul 的回复:
只要支持基本类型:int,double,字串等等的运算就可以,还有函数调用,其实就是汇编基本指令,会写汇编程序的人应该不难。

简单的说,就是我给出一段C代码(C++在汇编级和C没有区别),你用汇编写出来。

我发现win32的汇编和传统的汇编语言差别很大,现在的Win32汇编支持double这种运算,现在的CPU有这个运算单元,等等,也就是有很多新指令,一般汇编教程根本不提。

本人……

LZ,这并不是一个困难的事,如果你有调试好的C/C++源代码,那么可以由编译器直接编译成xx.asm文件;
如果你认为上述方法还不能满足你的要求,那你可以把源代码编译成可执行代码xx.exe文件,然后通过像OllyDBG(Win32程序),debug(16-dos程序)这样的反编译工具进行反汇编,供自己对照查看。


作者: gsy999   发布时间: 2011-08-19