编译方式由什么保留
A. 高级语言程序的两种执行方式是什么
高级语言的两种执行方式
一、 解释方式
所谓解释方式就是从源程序的第一条语句开始,对每条语句都先解释,然后马上执行刚解释出的这些指令,再对下一条语句做同样的处理,直到所有语句都处理完。
解释方式有一个特点,就是翻译出来的计算机指令并不会存盘(不会生成目标代码)。执行完这些二进制指令就丢失了。因此,解释型语言没执行一次都要重新翻译并执行。
二、 编译方式
所谓编译方式,首先通过编译程序把整个源程序中的所有语句翻译为汇编语言源程序,然后再通过汇编程序把汇编语言源程序翻译为机器语言的机器指令,形成.exe文件(可执行文件),.exe文件是可以直接运行的文件。
(1)编译方式由什么保留扩展阅读
1、C、C++、Java、Python等高级语言就是为了克服汇编语言的可移植性差,摆脱硬件底层的设计,用人的思维来编写程序而设计的。高级语言表达方式接近人类的语言,描述问题的能力强,通用性,可读性都很高。
2、所有的计算机语言,要想在计算机上运行都需要转变为机器语言(只有0和1组成的)才能被执行。高级语言通过编译程序(编译器)翻译成机器语言,汇编语言通过汇编程序(汇编器)翻译为机器语言。
B. C语言编译原理是什么
编译共分为四个阶段:预处理阶段、编译阶段、汇编阶段、链接阶段。
1、预处理阶段:
主要工作是将头文件插入到所写的代码中,生成扩展名为“.i”的文件替换原来的扩展名为“.c”的文件,但是原来的文件仍然保留,只是执行过程中的实际文件发生了改变。(这里所说的替换并不是指原来的文件被删除)
2、汇编阶段:
插入汇编语言程序,将代码翻译成汇编语言。编译器首先要检查代码的规范性、是否有语法错误等,以确定代码的实际要做的工作,在检查无误后,编译器把代码翻译成汇编语言,同时将扩展名为“.i”的文件翻译成扩展名为“.s”的文件。
3、编译阶段:
将汇编语言翻译成机器语言指令,并将指令打包封存成可重定位目标程序的格式,将扩展名为“.s”的文件翻译成扩展名为“.o”的二进制文件。
4、链接阶段:
在示例代码中,改代码文件调用了标准库中printf函数。而printf函数的实际存储位置是一个单独编译的目标文件(编译的结果也是扩展名为“.o”的文件),所以此时主函数调用的时候,需要将该文件(即printf函数所在的编译文件)与hello world文件整合到一起,此时链接器就可以大显神通了,将两个文件合并后生成一个可执行目标文件。
C. 编译方式和解释方式有什么区别
编译方式和解释方式区别:编译就是全文翻译,全部翻译完才执行,解释就相当于同声翻译,边翻译边执行。
程序员编写的程序现在一般都是用高级语言编写的,如c/c++以及面向对象的visual系列;这样编写的程序计算机是不能直接解释方式:程序运行时,取一条指令,将其转化为机器指令,再执行这条机器指令。这种方式每次运行程序时都要重新翻译整个程序,效率较低,执行闹蔽汪速度慢,如QB,不过现在很少再用这种低效的方式的设计语言了。
编译方式:程序运行时之前,将程序的所有代码编译为机器代并谨码,再运行这个程液仔序。然后每次执行的时候就可以直接执行这个翻译好的二进制文件了,这样的程序只需要翻译一次,效率明显要高很多,现在的大多数语言都是这种方式,网页中的asp.net采用的也是这种方式。执行的,因为计算机只能执行二进制程序。因此要经过一个源程序代码翻译成二进制的过程。计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过“翻译程序”翻译成机器语言形式的目标程序,计算机才能识别和执行。这种“翻译”通常有两种方式,即编译方式和解释方式。