电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

使用Java实现语言解释器

使用Java实现语言解释器_第1页
1/50
使用Java实现语言解释器_第2页
2/50
使用Java实现语言解释器_第3页
3/50
CHAPTER 3 使用 Java 实现语言解释器 大多数程序员都曾经梦想着创造自己的计算机语言。坦率地说,能够创造、控制、增强和修改属于自己的计算机语言,这种想法确实非常具有吸引力。然而,只有极少数程序员认为,实现这个想法是一件非常容易和令人愉悦的事情。开发一个功能齐备的编译器(例如 Java 编译器)的确是一项艰巨的任务。但是相比之下,创建一个语言解释器却简单得多。 尽管解释器和编译器都以应用程序源代码作为输入内容,但是它们对这些源代码的处理过程却截然不同。编译器将程序的源代码转化为可执行代码的形式。通常情况下,这种可执行代码由计算机的 CPU 指令组成,因此可以直接在计算机上执行。例如,C++即采用这种编译方式。还有一种情况,编译器输出一种可移植的中间代码,它们由运行时系统执行。Java 采用的就是这种方式。在Java 中,称这种中间代码为“字节码 ”。 解释器的工作原理则完全不同。它顺序读入程序的源代码,然后依次执行每一条语句。因此,解释器并不真正将源代码转化为目标代码,而是直接执行程序。尽管使用解释器执行程序的速度比将相同的程序编译成目标代码后再执行的速度慢,但是解释器仍然在编程中被广泛使用。原因有以下几个方面: 第一,解释器能够提供真正的交互式环境,由解释器执行的程序能够根据用户的指令暂停或者恢复运行。这种交互式环境在机器人技术等方面用途很广。第二,语言解释器的先天特性决定了它们特别适合于交互式的程序调试。第三,解释器最第 3 章 使用 J a v a 实现语言解释器 3 9 适合于作为“脚本语言”,比如数据库查询语言等。第四,语言解释器使得同一个程序运行于不同类型的平台成为可能。此时惟一的工作只是为每个新环境实现解释器的运行包。 在有些情况下,术语“解释器”的含义与刚才所描述的情况有所不同。例如,最初的 Java 运行时系统被称为“字节码解释器”。但是这种解释器与本章中介绍的解释器的类型并不完全相同。字节码是一组高度优化的可移植的机器指令,而 Java运行时系统则为字节码提供一个执行环境。然而 Java 运行时系统并不直接执行源代码,而是执行可移植的机器代码。这也是 Java 运行时系统被称为 Java 虚拟机的原因。 本章将要介绍的解释器代码不仅有趣而且实用。同时,它还充分显示了Java 语言简单高效的特性。与第 2 章中介绍的解析器相同的是,这个语言解释器也使用“纯代码”编写。同时,解释器也是一个相当复杂的...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

使用Java实现语言解释器

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部