当前位置:首页 » 编程软件 » 高级程序语言编译时转化成什么

高级程序语言编译时转化成什么

发布时间: 2022-04-29 13:01:59

1. 把高级语言编写的源程序转换为可执行程序的过程叫什么

高级语言转换为可执行程序的过程叫编译,主要有以下几个过程:
1、预编译,处理头文件及查错(语法错误);
2、编译,把预处理过的文件编译成目标代码;
3、链接,把所有的目标代码链接成可执行文件。

2. 能将高级语言源程序转换成目标程序的是( )。

热心网友
B)解释程序 C)编译程序
这两个都是正确的,以下出自 唐朔飞 老师的书,计算机组成原理第2版 的内容,
第4页上方:
通常由用户用高级语言编写程序(称为源程序),然后将它和数据一起送入计算机内,再由计算机将其翻译成机器能识别的机器语言程序(称为目标程序),机器自动运行该机器语言程序,并....
第4页中部:
机器语言(用0、1代码表示的语言),用户必须用二进制代码(0、1)来编写程序(即机器语言程序)
第5页的下面:
通常,将高级语言程序翻译成机器语言程序的软件称为翻译程序。翻译程序有两种:一种是编译程序,另一种是解释程序。
编译程序是将用户编写的高级语言程序(源程序)的全部语句一次全部翻译成机器语言程序,而后再执行机器语言程序。因此只要源程序不变,就无须再次进行翻译。
解释程序是将源程序的一条语句翻译成对应于机器语言的一条语句,并且立即执行这条语句,接着翻译源程序的下一条语句,并执行这条语句,如此重复直至完成源程序的全部翻译任务。它的特点是翻译一次执行一次,即使下一次重复执行该语句时,也必须重新翻译。

你的问题是,能将高级语言编写的源程序转换为目标程序的是什么?
我自己的总结:
编译程序 和 解释程序 虽然做事方式上有很大差别,但是做的事都是将源程序转换成目标程序,只不过编译是编译一次,只要源程序无变化,就无须再次编译,编译得到内容永远留下来了。解释虽然内容不会留下来,但是每次执行都进行翻译,所以根据你的题意,转换为目标程序的 两者都是。

至于 编辑程序,那太多了,什么 视频编辑程序、图片编辑程序、音乐编辑程序、记事本也算,文本编辑器什么的,总之就是做东西的,这个编辑程序不算什么名词,也没有什么概念,意义也不严格。
还有 链接程序,我不知道这个是什么,这个不出名,可能是因为我不会C,和C有关么?我想这个也没什么意义吧。

3. 高级编程语言也要编译成汇编语言,不同的cpu汇编语言不一样,那会编译成那种汇编语言呢

高级语言一般最终不是编译成汇编语言而是机器语言,而像C#这类语言编译后为公共语言,不是机器码,运行时公共语言代码由NET框架负责进一步即时翻译即时执行为机器指令。只有C++这类语言编译后为CPU可以直接执行的机器码。


附图是VS2019中C++语言的一段调试时的反汇编窗口,其中白字是C++源代码,下面是对应的汇编码,汇编行左列为内存地址,中间是对应的机器指令和数据(内存中的实际值),右侧是对应的汇编码。

比如,定义整数变量a并赋值1的语句,被编译器编译成C7 45 F8 01 00 00 00 这样几个字节,其中C7为汇编码中的MOV指令,可以操作16位寄存器和内存以及立即数,45 F8 是当前命名空间中变量地址,即变量a的地址(F845),而01 00 00 00 为32位宽度的数值1(内存排列顺序是前低后高)。也就是说机器语言的指令格式为:指令代码,地址,数据,当然根据不同指令,有时候地址和数据是不需要的。而右侧 MOV dword ptr[a],1 是指令助记符,也就是汇编指令,而用汇编指令编写的程序也是需要编译成机器指令的。


指令C7对应的汇编码及含义

4. 计算机程序中,用高级语言编写的程序经编译后产生的程序叫什么

高级语言编写的代码经过编译后就是可执行程序,高级语言到可执行文件主要有七个个过程。
高级语言编译的七个过程:
预处理,词法分析,语法分析,语义分析,中间代码产生,代码优化,目标代码产生。
下面对这几个过程详细讲解:
1、预处理:
对原文件进行预处理,比如头文件,导入的模块,宏定义等进行处理;
2、词法分析:
词法分析是第一阶段,这个阶段的任务是从左到右一个字符一个字符的读入源程序,对构成源程序的字符流进行扫描和分解,从而识别出一个个单词。
3、语法分析:
语法分析的任务是在词法分析的基础上将单词程序分解成各位语法短语。
4、语义分析:
语义分析是审查源程序有无语义错误,为代码生成阶段收集类型信息。
5、中间代码生成:
在进行了上述的语法分析阶段等工作之后,有的编译程序将源程序变成一种内部表示形式,这种内部表示形式叫做中间语言或中间代码。中间代码生成阶段要在语法和语义分析的基础上,将源程序进一步变为一种内部表示形式,它通常易于生成、易于翻译成目标代码,不过不是所有的语言都必须经过这一步。
6、代码优化:
这一阶段的任务是对前一阶段产生的中间代码进行变换或进行改造,目的是使生成的目标代码更为高效。代码优化阶段,对前阶段生成的中间代码进行变换或改造,以便生成目标代码时更加节省时间和空间,这一工作也不是必须的。
7、目标代码生成:
这一阶段的任务是吧中间代码变换成特定机器上的绝对指令代码或可重定位的指令代码或汇编指令代码。

5. 用高级语言编写的源程序,经编译后产生的是

目标程序。

目标程序,又称为“目的程序”,为源程序经编译可直接被计算机运行的机器码集合,在计算机文件上以.obj作扩展名----由语言处理程序(汇编程序,编译程序,解释程序)将源程序处理(汇编,编译,解释)成与之等价的由机器码构成的,计算机能够直接运行的程序,该程序叫目标程序。

目标代码尽管已经是机器指令,但是还不能运行,因为目标程序还没有解决函数调用问题,需要将各个目标程序与库函数连接,才能形成完整的可执行程序。

(5)高级程序语言编译时转化成什么扩展阅读

计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过"翻译程序"翻译成机器语言形式的目标程序,计算机才能识别和执行。这种"翻译"通常有两种方式,即编译方式和解释方式。

编译方式是指利用事先编好的一个称为编译程序的机器语言程序,作为系统软件存放在计算机内,当用户将高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序。

然后计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。解释方式是指源程序进入计算机后,解释程序边扫描边解释,逐句输入逐句翻译。

计算机一句句执行,并不产生目标程序。如PASCAL、FORTRAN、COBOL等高级语言执行编译方式;BASIC语言则以执行解释方式为主;而PASCAL、C语言是能书写编译程序的高级程序设计语言。

6. 将用高级语言编写的源程序转换成等价的目标程序的过程,称为

(总体上说)称为编译。

高级语言如果指的是C的话:

C语言详细编译过程分成四个步骤:

1. 预处理(preprocessor):将存储在不同文件的源程序(.c文件)聚合在一起,将语言中的宏进行替换,比如预处理指令#include,让编译器打开包含的文件,将其程序与其他程序呆在一起.生成.i文件。

2.编译:预处理源程序(.i文件)变为汇编程序(.s文件)

3.汇编(assember):将汇编程序转换为可重定位(relocatable: 就是说文件里面的代码段和数据的地址还没有最终确定)的机器代码,这一步产生目标文件(.obj或.o文件)。

4.链接(linker)/加载(loader): 链接就是把目标文件和其他分别进行编译生成的程序模块(如果有的话)及系统提供的标准库函数连接在一起,生成可运行的可执行文件的过程,加载时将各代码与数据定位到内存合适的位置,这一步产生最终的可执行文件。

7. 能将高级语言编写的源程序转换为目标程序的是什么

把源程序转换为目标程序的过程叫编译
所以能将高级语言编写的源程序转换为目标程序的是相应的高级语言编译程序
故答案为C—编译程序
拓展资料:
编译程序也称为编译器,是指把用高级程序设计语言书写的源程序,翻译成等价的机器语言格式目标程序的翻译程序。编译程序属于采用生成性实现途径实现的翻译程序。它以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。
参考资料:
编译程序_网络

8. 用高级程序语言编写的程序要转化成等价的可执行程序

能将高级语言编写的源程序转换为目标程序的是--相应的高级语言编译程序。
编译程序(Compiler,compiling program)也称为编译器,是指把用高级程序设计语言书写的源程序,翻译成等价的机器语言格式目标程序的翻译程序。编译程序属于采用生成性实现途径实现的翻译程序。它以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。

9. 用高级程序设计语言编写的程序,要转换成等价的可执行程序,必须经过____。

用高级程序设计语言编写的程序,要转换成等价的可执行程序,必须经过编译和连接。在WINDOWS系统中的执行文件一般都是.EXE文件。在windows中,用户在命令提示符输入不带 .exe 扩展名的文件名后按 Enter 键或者点双击就能运行可执行程序。

linux不像MS-DOS/windows一样靠文件后缀名来判断是否可执行,而是靠文件属性来判断。每个文件专门有个属性来表示文件是否可执行,对于脚本之类的程序,文件第一行指明执行本脚本的程序位置。

(9)高级程序语言编译时转化成什么扩展阅读

通过在文件头添加ASCII字符串“LX”来标识。运行在OS/2 2.0以及更高版本中,也可用于某些DOS扩展。

32位X86可执行文件这是最复杂也最流行的可执行文件格式,通过在文件头添加ASCII字符串“PE”来标识。它主要运行于Windows 95和Windows NT以及更高版本的Windows中,也可在BeOS R3中运行。

64位X86-64可执行文件与前一种类似,但使用支持64位的X86cpu(64根地址总线)。因此它仅能在64位的Windows系统中运行,譬如Windows 7 64位和 Windows10 X64。

热点内容
lol注册表文件在哪个文件夹 发布:2025-04-23 03:24:25 浏览:543
c4d编程 发布:2025-04-23 03:21:21 浏览:227
服务器地址及密码 发布:2025-04-23 03:05:53 浏览:268
ct6买哪个配置的好 发布:2025-04-23 03:05:08 浏览:913
c语言输出多组数据 发布:2025-04-23 03:04:21 浏览:577
liststringjava 发布:2025-04-23 02:56:18 浏览:408
asi源码 发布:2025-04-23 02:46:45 浏览:578
小候编程 发布:2025-04-23 02:46:41 浏览:559
网络工程师使用哪些软件写脚本 发布:2025-04-23 02:28:43 浏览:458
c语言短路现象 发布:2025-04-23 02:23:54 浏览:304