关于汇编语言生成的代码问题
时间:2011-09-03
来源:互联网
同样的汇编程序在不同的操作系统中生成的代码相同吗?
我的理解是:
应该是不相同的,虽然说汇编语言是底层的,反映指令的.编译器还是会在程序中添加一些可以在该操作系统中运行的相关信息,代码.这是由编译器决定的.
这样想对吗?
我的理解是:
应该是不相同的,虽然说汇编语言是底层的,反映指令的.编译器还是会在程序中添加一些可以在该操作系统中运行的相关信息,代码.这是由编译器决定的.
这样想对吗?
作者: bluesea147 发布时间: 2011-09-03
不同的汇编编译器的语法是不一样的。你说的那个添加一些东西对应的东西叫文件结构。不同的操作系统使用的可执行文件的文件结构是不一样的。就是单独的一个操作系统也会使用多种可执行文件,比如windows主要就有exe和dll两种可执行文件。另外同样是exe文件,内部的结构也可能是不同的。比如32位的 windows exe 到了16位的 dos 就不行了。一般的编译器都能生成多种类型的文件,以适应不同的应用和系统。不过masm应该是只能生成在windows里运行的程序。
但如果对应的CPU相同的话,不同的编译器生成的最终文件的指令部分应该是差不多的,但这个基本是不可能出现的,因为不同的编译器的语言是不一样的,所以做不到相同的汇编程序能被不同的编译器编译。
还有你的问题有毛病,汇编源代码不是在操作系统中变成可执行文件的,是用编译器生成可执行文件的。
但如果对应的CPU相同的话,不同的编译器生成的最终文件的指令部分应该是差不多的,但这个基本是不可能出现的,因为不同的编译器的语言是不一样的,所以做不到相同的汇编程序能被不同的编译器编译。
还有你的问题有毛病,汇编源代码不是在操作系统中变成可执行文件的,是用编译器生成可执行文件的。
作者: MHBBCRCPJ 发布时间: 2011-09-03
1楼说的对呀,汇编语言是基于操作系统的.使用同种型号的cpu但是不同的操作系统下生成的代码不尽相同.
作者: zhuzhucong 发布时间: 2011-09-03
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28