前言
自制语言,说到底就是编译和解释,这里就会涉及到编译器和解释器。
- 编译器:将某种语言写成的程序转换为另一种语言的程序。通常它会将原程序转换为机器语言程序。编译器转换程序的行为称为编译,转换前的程序称为源代码或源程序。如果编译器没有把源代码直接转换为机器语言,一般称为源代码转换器或源码转换器(source code translator)。
- 解释器:根据程序中的算法执行运算。简单来讲,它是一种用于执行程序的软件。如果执行的程序由虚拟机器语言或类似于机器语言的程序设计语言写成,这种软件也能称为虚拟机。
以PHP语言为例,同时提供了编译器和解释器,因为PHP只会将源码编译成C语言代码,而C语言代码执行必须使用解释器,但是以C语言为例,C语言可以不用解释器,因为C语言编译器可以直接将源码编译成二进制的机器码,这样直接可以被操作系统识别运行。
所以C语言的解释器就是硬件机器语言0101。
正文
有本书很有名,叫做《两周自制脚本语言》这个是一个日本人写的,很值得读一读。
在设计脚本语言时,需要定义语言格式和类型,如C语言以;作为分割,;就是句子的结尾词。在PHP中也是一样的,应该时套用的C语言语法。
结束语
希望在接下来的日子里探究一下高级语言是怎么设计,编译和解释的,在以PHP,Ruby等解释型语言中,只要运行都会涉及到编译和解释,语言内核是怎么组织函数,类,变量和常量等等的。我将以我的知识基础和视角来探究和实现程序设计的高深阶段-设计语言,在这里希望我能坚持完成这一个科目,先感谢网络上各种大牛们的技术分享和输出,这些都让我有了更深层次的理解和提高。
网友评论