首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

C++中的char*b=new char[十];在反汇编里的代码如下,麻烦大神来帮忙解释下反汇编代码中的意思

2013-03-26 
C++中的char*bnew char[10]在反汇编里的代码如下,麻烦大神来帮忙解释下反汇编代码中的意思。本人对汇编略

C++中的char*b=new char[10];在反汇编里的代码如下,麻烦大神来帮忙解释下反汇编代码中的意思。
本人对汇编略懂点,但是结合C++程序看还是不太明白。

char*b=new char[10];

004113BE  push        0Ah  

004113C0  call        operator new[] (4111D1h)  

004113C5  add         esp,4  

004113C8  mov         dword ptr [ebp-0D4h],eax  ;尤其这两句

004113CE  mov         eax,dword ptr [ebp-0D4h]  ;尤其这两句

004113D4  mov         dword ptr [b],eax  

;上面那两句把寄存器eax中的数据给 dword ptr [ebp-0D4h],然后再把dword ptr [ebp-0D4h]给eax,这个有什么意义吗?感觉这两个语句没做任何事情。

[解决办法]
debug编译,未优化
[解决办法]
C++这种语句很多,有时侯不必抓牛角尖
[解决办法]
那两句应该就是debug产生的吧
直接这样就可以了 mov dword ptr [b],eax  

热点排行