c语言生成的目标文件和汇编语言生成的文件有什么区别

RT,都是hex文件的话,是一样的么?

不一样。
目标文件中都有编译器自己加入的一些信息。各不相同。
并且,同样一条指令,不同的编译器编译出来的结果也不尽相同。
比如:
同样一句:把ax寄存器置0;
即使是汇编,也有 xor ax,ax和sub ax,ax的区别。不一样。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-07
低效的是汇编语言的意思是一个低级别的语言计算机运行速度更快,更高效的C语言是一种高层次的语言,效率较低的计算机上执行
第2个回答  2013-04-10
编译C代码转换成可执行的机器指令的CPU,每个C文件产生。 obj文件。 链接(多个)生成obj文件和使用库文件(LIB)结合在一起,产生一个可执行文件(exe)。
第3个回答  2013-03-22
汇编语言和二进制代码是有直接对应关系的,也就是说汇编语言在编译时是直接翻译就可以了,不存在优化的问题,所以汇编语言的编译器都相当小。
而c语言在编译时首先进行的是词法分析和语法分析,然后是优化,还会加入版本信息和一些防止溢出的判断,所以编译后的文件相比汇编直接写成的程序要大很多。然后c语言编译后的程序运行时其实是需要C run-timelibrary的支持的
相似回答