高级语言的可移植性????

我知道编译器包括(汇编程序,编译程序,解释程序。)这些程序裸机自带吗?那为什么高级语言编写的程序可以在计算机上运行?exe可执行程序是二进制代码吗?一个集成开发环境的语言包括了编译器,那它生成的exe程序又是怎么在其他机器上运行的,而且可以在任何机器上运行,不受cpu的不同影响。编程语言-原代码-编译或解释-生成。然后在其他机器上,是这样的流程吗?为什么又说高级语言具有可移植性呢?汇编语言可移植吗?????????????????????????????????????????????????
我想知道高级语言的可易植性????
编译程序是先编译,在到其他的机器上运行.
解释程序是编写程序时调试用的,还是裸机自带.原代码直接拿到其他电脑上,一边运行一边解释???????????????????

高级语言编写的程序可以在同种操作系统上运行.为什么?难道不受cpu的构架和指令集影响吗?请详细回答,拜托各位了,此种问题我都不止问三遍了,每次都是高分,可是都没有得到满意的回答.分我不稀罕,只要回答的好,我还会追加的,拜托拉!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

首先 要理解什麽样的是高级语言
高级语言的运行机制
高级语言 都有自己的一套编译环境
将这些语言编译成 自己编译环境 可以解读的代码形式
然后 再解析为 系统所 识别的代码形式
也就是 系统级代码
高级语言的可移植性 是能移植 到 各种系统 而不是
直接解析为机器码 让cpu等硬件去执行
是 解析为系统级代码
如dos 的命令 一样 让系统识别 系统识别了 命令和代码 才会解析为 机器代码
高级语言的可移植性 是 可以 移植到别的系统
系统来解析语言让 其 可以在机器上运行
所以 高级语言的 都是 先将代码解析给 系统
再去做相应的处理
windos 的exe 文件 和linux 的 .bin 文件
同为2进制文件 但是 这些代码是给不同系统去识别的

系统能识别 才能运行 才能让硬件 支持
比如java 它有一套自己的运行环境 jvm 虚拟机
它现将 java 文件解析 为class 文件
然后将class 文件解析为 系统所对应的2进制格式的代码
然后交给系统 系统识别了 再交给 各个硬件去处理
所以 高级语言的可移植性 是基於平台的
没有平台 这些高级语言是没有办法 让 硬件 工作的
低级语言 如汇编就是 直接去通过编译器
编译成 各个 硬件所能支持 然后再运行的

不知道 这个答案 符合你的要求不
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-05-27
裸机就是裸机,没有这些编译程序。高级语言是把程序编译成低级语言,可以发给物理执行部件去进行相应的工作。.com程序才是二进制代码的。一个集成开发环境的语言包括了编译器,那它生成的exe程序又是怎么在其他机器上运行的???,就是把程序编译成低级语言,可以发给物理执行部件去进行相应的工作。这就是操作系统平台的兼容性问题。不是所有的程序都有很好的移植性的。
绝大部分的物理件都是在汇编语言下工作的,所以汇编是直接对物理部件进行编程,所以它的可移植性很差。

java是可移植的,因为它不是编译成机器码,而是编译成特定的字节码文件,有系统的java虚拟机解释成机器码在运行,就是说java编辑的程序只要在有java虚拟机的计算机上就可以运行

而不论汇编还是c/c++等由于是直接编译形成了机器码的可执行文件,所以无法移植其他系统上,当然在相同的系统上是可以运行的。
第2个回答  2008-05-29
我知道编译器包括(汇编程序,编译程序,解释程序。)这些程序裸机自带吗?
答:这些程序裸机上不自带。

那为什么高级语言编写的程序可以在计算机上运行?
答:因为这些程序经过安装后,能生成exe的二进制文件

exe可执行程序是二进制代码吗?
答:是。

一个集成开发环境的语言包括了编译器,那它生成的exe程序又是怎么在其他机器上运行的,而且可以在任何机器上运行,不受cpu的不同影响。
答:在windows下生成的exe并不能在linux或手机上运行的。而如果都是windows的机器,则可以运行,因为windows操作系统对cpu等硬件特性进行了封装,不论什么配置的cpu对应用程序的软件接口是一样的。

编程语言-原代码-编译或解释-生成。然后在其他机器上,是这样的流程吗?
答:通常都是这种流程。

为什么又说高级语言具有可移植性呢?
答:可移植性是对不同配置的,但操作系统都一样的机器的机器而言的。而不是对不同的操作系统而言的。

汇编语言可移植吗?
答:可移植,但移植起来非常的困难,所以说它的可移植性比较差,因为它都是针对特定的硬件编写的,没有经过操作系统的抽象。

问题补充:
我想知道高级语言的可易植性????
答:高级语言,都具备很好的可移植性,你知道这些就行了。

编译程序是先编译,在到其他的机器上运行.
答:对的。

解释程序是编写程序时调试用的,还是裸机自带.原代码直接拿到其他电脑上,一边运行一边解释?
答:不是自带的。像java就是解释程序,需要安装了java解释器的机器,才能运行java编写后的程序。是解释后再运行的,边解释边运行的。

参考资料:

第3个回答  2008-05-27
java是可移植的,因为它不是编译成机器码,而是编译成特定的字节码文件,有系统的java虚拟机解释成机器码在运行,就是说java编辑的程序只要在有java虚拟机的计算机上就可以运行

而不论汇编还是c/c++等由于是直接编译形成了机器码的可执行文件,所以无法移植其他系统上,当然在相同的系统上是可以运行的。
第4个回答  2008-05-27
裸机就是裸机,没有这些编译程序。高级语言是把程序编译成低级语言,可以发给物理执行部件去进行相应的工作。.com程序才是二进制代码的。一个集成开发环境的语言包括了编译器,那它生成的exe程序又是怎么在其他机器上运行的???,就是把程序编译成低级语言,可以发给物理执行部件去进行相应的工作。这就是操作系统平台的兼容性问题。不是所有的程序都有很好的移植性的。
绝大部分的物理件都是在汇编语言下工作的,所以汇编是直接对物理部件进行编程,所以它的可移植性很差。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网