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

c/c++编译最终生成的代码是什么?该如何解决

2012-04-23 
c/c++编译最终生成的代码是什么?如果说是机器码的话,那么怎么做到在不同cpu上运行的,还是生成的是跟操作系

c/c++编译最终生成的代码是什么?
如果说是机器码的话,那么怎么做到在不同cpu上运行的,还是生成的是跟操作系统有关的代码,最终由操作系统翻译?

[解决办法]
跟cpu型号没有关系,跟cpu支持的指令集相关。
[解决办法]
目标代码(英语:object code)指计算机科学中编译器或汇编器处理源代码后所生成的代码,它一般由机器代码或接近于机器语言的代码组成。[1]目标文件(英语:object file)即存放目标代码的计算机文件,它常被称作二进制文件(binaries)。
目标文件包含着机器代码(可直接被计算机中央处理器执行)以及代码在运行时使用的数据,如重定位信息,如用于链接或调试的程序符号(变量和函数的名字),此外还包括其他调试信息。[2]目标文件是从源代码文件产生程序文件这一过程的中间产物,链接器正是通过把目标文件链接在一起来生成可执行文件或库文件。目标文件中唯一的要素是机器代码,例如,用于嵌入式系统的目标文件可能仅仅含有机器代码。
[解决办法]
指令集不兼容就不能执行
[解决办法]
pc的都支持x86指令集
[解决办法]

探讨

那主流cpu是支持同一套指令集了,也没见过什么软件在同一操作系统下发布不同的版本的

热点排行