这是一个读两周自制脚本语言的笔记,然后立flag,这个月打算看完

day 1

1.1 机器语言 & 汇编语言

  • 机器语言: 不需要借助软件执行,不需要语言处理器,可以由硬件直接解释执行 一个位数很长的二进制数字

  • 汇编语言: 通过汇编语言程序表述巨大的数字,使其易于理解,需要通过软件转换成机器语言,这种软件称为汇编程序。汇编程序是一种最基本的语言处理器

1.2 解释器 & 编译器

  • 解释器: 根据程序中的算法执行运算,执行程序的软件
    如果执行的程序由虚拟机语言或类似机器语言程序设计语言写成,这种软件也能称为虚拟机

  • 编译器: 能将某种语言写成的程序转换为另一种语言的程序
    编译器转换程序的行为称为编译,转换前的程序称为源代码或源程序。
    如果编译器没有把源代码直接转换为机器语言,称为源代码转换器或源码转换器

1.3 开发语言处理器

Stone语言 运行于 Java虚拟机

1.4 语言处理器的结构与本书的框架

源代码首先将进行词法分析,由一长串字符串细分为多个更小的字符串单元。分割后的字符串称为单词。之后处理器将执行语法分析处理,把单词的排列转换为抽象语法树。 之后 编译器会把抽象语法树转换为其他语言,而解释器将会一边分析抽象语法树一边执行运算