下列关于编译系统对某高级语言进行翻译的叙述中,错误的是( )。

admin2019-06-12  19

问题 下列关于编译系统对某高级语言进行翻译的叙述中,错误的是(    )。

选项 A、不同的高级程序语言可以产生同一种中间代码
B、在机器上运行的目标程序完全独立于源程序
C、目标代码生成阶段的工作与目标机器的体系结构相关
D、经过反编译,可以将目标代码还原成源代码

答案D

解析 本题主要考查对编译系统的理解。
求解这个题目,首先要了解源程序、中间代码、目标代码的关系。其中源程序是指用高级语言编写的程序,将源程序经过编译,就可以得到中间代码并最终得到目标代码,目标代码就是可以在具体机器上执行的代码,这时源程序和编译程序都不再参与目标程序的执行过程,所以在机器上运行的目标程序是完全独立于源程序的。
    另外,目标代码是在机器上运行的代码,所以它的生产与目标机器的体系结构是密切相关的。
    中间代码是一种简单且含义明确的记号系统,与具体的机器无关,可以有若干种形式。可以将不同的高级程序语言翻译成同一种中间代码,另外由于与具体机器无关,使用中间代码有利于进行与机器无关的优化处理,以及提高编译程序的可移植性。
    编译是将高级语言源程序翻译成机器语言程序(即目标代码),反编译是编译的逆过程。反编译通常不能把可执行文件还原成高级语言源代码,只能转换成功能上等价的汇编程序。
转载请注明原文地址:https://kaotiyun.com/show/u7RZ777K
0

最新回复(0)