易截截图软件、单文件、免安装、纯绿色、仅160KB

C代码编译成汇编的问题

    我用GCC把C代码编译成汇编代码

.file "1.c"
.def ___main; .scl 2; .type 32; .endef
.section .rdata,"dr"
LC0:
.ascii "Hello,World\0"
.text
.globl _main
.def _main; .scl 2; .type 32; .endef
_main:
pushl %ebp
movl %esp, %ebp
subl $8, %esp
andl $-16, %esp
movl $0, %eax
addl $15, %eax
addl $15, %eax
shrl $4, %eax
sall $4, %eax
movl %eax, -4(%ebp)
movl -4(%ebp), %eax
call __alloca
call ___main
movl $LC0, (%esp)
call _printf
leave
ret
.def _printf; .scl 3; .type 32; .endef

就一个简单得打印hello world 

高手们,能不能给我注释一下,语句是什么意思...我自己也有看书,但还是想问一下大家,希望有些详细的注释,这样看得明白一点
这是反汇编代码,不是宏汇编吧……两者还是有点区别的

咦..这样的啊。。C不是要先编译成汇编么。这样是分两种的么?

这应该不是反汇编的,是gcc -S 生成的代码.不过是AT&T 格式的和INTEL 格式不太一样.

是啊是啊,是 gcc -S生成的,究竟是反汇编 还是宏汇编呢 ?

GCC格式是AT&T  不是intel

AT&T也是宏汇编,不过汇编指令不同

那就好..那请问大家能不能帮我注释一两段呢?

是啊,关注


你最好把你的代码做一次O4优化,优化的代码就不会有那么多垃圾代码了。

常期在线,专业接分,楼主莫吝


妈呀,注


相关问答:

一个简单的c游戏

13个人围成一圈,从第一个人开始顺序报号1,2,3。凡报到3者退出圈子,找出最后留在圈子中的人原来的序号
结果应该是13 可我的程序的结果是11 希望好心人帮改一下
#include <stdio.h>
#include < ......

使用C的高手请进

大家好!我是一位C爱好者,向大家请教下,C程序员可好找工作?公司用C干些什么?
无所谓好不好找工作,一般通信、系统、嵌入式、硬件方面用的多,而且由于C的底层特性,学会后在学其他的会比较容易

不管用什么语 ......

一个非常简单的C程序的运行结果

#include <stdio.h>
main()
{
int a,b,sum;
a=1;b=2;
sum=a+b;
printf("sum is %d\n");
}


结果是:2367460

为什么?
printf("sum is %d\n", ......

C、C++、VC++ 精品电子书发布啦!

内容涉及:C、C++、STL、VC++、MFC、COM、ATL、Windows网络编程、数据库编程、Windows驱动编程、软件工程、Windows操作系统编程,等等方面。

下载地址:http://www.cctry.com/forumdisplay.php?fid=46

......

求用C写八皇后程序的代码

各位,如何用C语言写一个八皇后的程序啊 有知道的还请赐教 谢谢
在清华的数据结构书有这东东!太久忘了!

C/C++ code:
#include<stdio.h>
#include<math.h>
#define N 8
int x[N+1];
int coun ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号