关于编辑器,编译器,汇编器,以及跨平台的思考
编辑器的作用
编辑器用来接收键盘输入的字符,比如记事本等,但是这类编辑器没有语法高亮,补全等功能,对使用者不够友好,因此书写代码使用功能更加强大的编辑器会提升效率。
编译器和汇编器的作用
机器识别的是0101011之类的二进制语言(机器语言),但是一般人们用C语言,或更高级语言都是以英文输入,因此输入的代码需要经过一定转换,变成机器可以识别的机器语言。
-
编辑器中的代码首先经过预处理器进行处理(比如展开宏定义等操作),生成.i文件,编译器将.i中的代码再次转换成汇编语言形式,汇编器将汇编文件转换成机器语言(即010100之类)。
-
汇编语言和机器语言密切相关,是面向机器的语言,因此CPU不同的计算机,有着不同的汇编语言,同时在汇编语言转换成机器语言时,也是需要依据CPU指令集的。因此当在一台机器上,源代码转换出来010100011010(随便写的),在这一CPU下这组机器语言可能表示赋值,在另一不同CPU下,这组机器语言可能表示循环。因此转换出来的汇编语言,和机器语言,都不能跨平台使用。