① 程序语言最终怎样被转换成计算机能读懂的机械语言,0和1,
程序语言有很多,拿最常用的c/c++语言举例。
将用户的文本形式的源代码转化成计算机可以直接执行的机器代码的过程。主要经过这么几个过程:
一、预编译,又称为预处理 , 是做些代码文本的替换工作
二、编译,由编译器将c源代码(.cpp)转变成汇编代码(.s)
三、汇编,由汇编器将汇编代码(.s)转变成目标代码(.o)
四、链接,由链接器将代码在执行过程用到的其他目标代码和库文件链接成为一个可执行程序也就是目标程序。
经过以上步骤高级语言就会被解释成为计算机可以认知的机器语言。
一、预编译
1、定义
处理以# 开头的指令 , 比如拷贝 #include 包含的文件代码,#define 宏定义的替换 , 条件编译等,就是为编译做的预备工作的阶段。
主要处理#开始的预编译指令,预编译指令指示了在程序正式编译前就由编译器进行的操作,可以放在程序中的任何位置。
二、编译
1、定义
编译的过程就是将源代码文件以字符流的形式进行处理,进行词法和语法的分析,然后通过汇编器将源代码指令转变成汇编指令,编译的过程包括两个大部分:预处理 = 预编译
2、特殊符号
特殊符号是指:例如在源程序中出现的LINE标识将被解释为当前行号(十进制数),FILE则被解释为当前被编译的C源程序的名称。预编译程序对于在源程序中出现的这些串将用合适的值进行替换。
三、汇编
1、定义
汇编过程实际上是把汇编语言代码翻译成目标机器指令的过程。对于被翻译系统处理的每一个C语言源程序,都将最终经过这一处理而得到相应的目标文件。目标文件中所存放的也就是与源程序等效的目标的机器语言代码。
四、链接
1、定义
由汇编程序生成的目标文件并不能立即就被执行,其中可能还有许多没有解决的问题。
② 将c语言编写的源程序转换成可执行程序要用什么程序处理
不同版本的c语言可能有所不同,以下以TC20为例:
一、IDE环境中生成
1)双击TC文件夹下的TC.EXE启动TC20。
2)按F3,选择打开源程序。(1.c)
3)按F9即可生成打开文件名的可执行文件。(如开始的是1.c,则生成1.exe)
二、DOS或控制台下生成:
1)用cmd打开控制台窗口,并进制TC目录。
2)在控制台命令行输入:tcc
1(回车),则生成1.obj
3)再在控制台命令行输入:tlink
1(回车),则生成1.exe
③ 用( )讲c语言的源程序转变为机器语言的目标程序。 A.汇编程序 B.编译程序 求解
④ C语言采用解释方式将源程序转换为二进制的目标代码吗
不是,C语言采用编译方式将源程序转换为二进制的目标代码。使用C语言编译器来完成。
所谓C语言编译器,就是把编程得到的文件,比如.c,.h的文件,进行读取,并对内容进行分析,按照C语言的规则,将其转换成cpu可以执行的二进制文件。其本质在于对文件的读入,分析,及处理。
C语言编写的程序代码称为源程序,对于计算机本身来说,它并不能直接识别由高级语言编写的程序。C语言程序经C语言编译程序编译后,生成后缀为.obj的二进制文件(称为目标文件)。
此.obj文件必须与系统提供的各种库函数连接起来生成一个后缀为.exe的可执行文件才可以执行。C语言的可执行文件由一系列机器指令构成的。
(4)c语言源程序通常由什么将其转换扩展阅读
解释执行和编译执行是计算机语言的执行方式。解释执行由解释器现场解释执行,不生成目标程序。如BASIC便是解释执行,一般解释执行效率较低,低于编译执行。
编译执行由编译程序将目标代码一次性编译成目标程序,再由机器运行目标程序。如:PASCAL,C,C++,delphi等语言。效率高于解释执行。
⑤ c语言源程序是有什么组成的
所有编程语言本质上都是由算法+数据结构组成的。
一个C语言源程序,是由一个或多个函数定义顺序组成的,其中必须有一个函数名为main的函数,main()函数又称为主函数。C语言源程序的次要构成成分有:编译预处理命令、注释和声明。
主函数被编译程序翻译成一个机器语言形式的主程序段,任何其他函数都将被编译程序翻译成机器语言形式的子程序段。
换言之,C语言源程序中的函数,并非数学中时常显得有些高深莫测的函数,它只是完成特定数据处理任务的、功能上独立的一个程序段而已。
(5)c语言源程序通常由什么将其转换扩展阅读:
C语言特有特点
1、C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
2、C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。
3、不同的变量类型可以用结构体(struct)组合在一起。
4、只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。
5、部份的变量类型可以转换,例如整型和字符型变量。
6、通过指针(pointer),C语言可以容易的对存储器进行低级控制。
7、预编译处理(preprocessor)让C语言的编译更具有弹性。
参考资料:网络-C语言
⑥ 有了C语言源代码如何把它转成应用的软件啊
有C语言源代码,要将之转换为可执行的应用软件方法如下:
1、准备一个C语言的编译器,比如TC2.0等等
2、运行编译器TC2.0
3、加载源代码
4、按Alt-F9。
⑦ 为把c语言源程序转换为计算机能够执行的程序,需要
转换的过程称为编译:源程序——目标程序——可执行程序
也就是预编译->编译->链接
通俗的说就是用编译器编译
⑧ c语言源程序通常由什么将其转换为目标程序
C语言程序不能直接运行,通常用编译程序将其编译为目标程序。再连接上需要的库程序,得到可运行的二进制程序。