用Go语言自制编译器 o并发编程实战程序设计教程书籍 go语法虚拟机编译进**级编程教材 编译原理基础教程
¥74.90
运费: | ¥ 0.00-20.00 |
商品详情
书名:用Go语言自制编译器
定*:99.8
ISBN:9787**559**04
作者:索斯藤·鲍尔
版次:第*版
出版时间:2022-06
内容提要:
本书是《用Go语言自制解释器》的续篇。在自制解释器时,你已经为Monkey语言实现了类C语法、变量绑定、基本数据类型、算术运算、内置函数、闭*等*性。是时候让Monkey继续成长了!在本书中,Monkey将继续“进化”,并最*成长为成熟的程序设计语言。在已有词法分析器、语法分析器和抽象语法树的基础上,你将为Monkey语言定义字节码指令,*操作数,编写反汇编程序,构建执行字节码的虚拟机。通过动手学习,你将能够体验从*到有实现类C语言的乐趣。
作者简介:
索斯藤·鲍尔(Thorsten Ball) Sourcegraph软件工程师,*通多门程序设计语言,*括Go、C、JavaScript和Ruby,深谙编译原理、系统编程、Unix、数据库等相关技术。现居德*,长期活跃于欧洲各大技术大会。 廖彬 毕业于中*科学院计算技术研究所,*级语言虚拟机爱好者,在语言虚拟机*域从事开发近十年,曾*职于阿里巴巴和腾讯。
目录:
第 *章 编译器与虚拟机 *
*.* 编译器 2
*.2 虚拟机与物理机 5
*.2.* 物理机 6
*.2.2 什么是虚拟机 **
*.2.3 为什么要构建虚拟机 *4
*.2.4 字节码 *5
*.3 虚拟机与编译器的二元性 *7
第 2章 你好,字节码! *9
2.* 第 *条指令 20
2.*.* 以字节作为开端 2*
2.*.2 最小编译器 26
2.*.3 字节码与反汇编程序 32
2.*.4 回归初心,继续前行 37
2.*.5 给机器上电 40
2.2 栈上加法 46
2.3 连接REPL 52
第3章 编译表达式 55
3.* 栈清理 55
3.2 中缀表达式 60
3.3 布尔类型 64
3.4 比较运算符 69
3.5 前缀表达式 76
第4章 条件语句 83
4.* 跳转 86
4.2 编译条件语句 88
4.3 执行跳转 *03
4.4 欢迎回来,Null 值 *06
第5章 追踪名称 **5
5.* 计划 **6
5.2 编译绑定 **7
5.2.* 添加符号表 *20
5.2.2 在编译器中使用符号 *23
5.3 在虚拟机中支持*局变量 *26
第6章 字符串、数组和哈希表 *32
6.* 字符串 *32
6.2 数组 *38
6.3 哈希表 *42
6.4 索引运算符 *49
第7章 函数 *56
7.* *个简单的函数 *56
7.*.* 函数表示 *57
7.*.2 执行函数的操作码 *58
7.*.3 编译函数字面量 *6*
7.*.4 编译函数调用 *76
7.*.5 虚拟机中的函数 *79
7.*.6 *点奖励 *90
7.2 局*绑定 *9*
7.2.* 局*绑定操作码 *92
7.2.2 编译局*绑定 *95
7.2.3 在虚拟机中实现局*绑定 208
7.3 参数 2*8
7.3.* 编译带参数的函数调用 2*9
7.3.2 将引用解析为参数 224
7.3.3 虚拟机中的参数 227
第8章 内置函数 237
8.* 使修改变得简单 238
8.2 做出改变:计划 244
8.3 内置函数作用域 245
8.4 执行内置函数 250
第9章 闭* 256
9.* 问题 257
9.2 计划 258
9.3 将*切视为闭* 260
9.4 编译和解析自由变量 27*
9.5 运行时*建闭* 283
9.6 递归闭* 288
第 *0章 最后的测试 303
定*:99.8
ISBN:9787**559**04
作者:索斯藤·鲍尔
版次:第*版
出版时间:2022-06
内容提要:
本书是《用Go语言自制解释器》的续篇。在自制解释器时,你已经为Monkey语言实现了类C语法、变量绑定、基本数据类型、算术运算、内置函数、闭*等*性。是时候让Monkey继续成长了!在本书中,Monkey将继续“进化”,并最*成长为成熟的程序设计语言。在已有词法分析器、语法分析器和抽象语法树的基础上,你将为Monkey语言定义字节码指令,*操作数,编写反汇编程序,构建执行字节码的虚拟机。通过动手学习,你将能够体验从*到有实现类C语言的乐趣。
作者简介:
索斯藤·鲍尔(Thorsten Ball) Sourcegraph软件工程师,*通多门程序设计语言,*括Go、C、JavaScript和Ruby,深谙编译原理、系统编程、Unix、数据库等相关技术。现居德*,长期活跃于欧洲各大技术大会。 廖彬 毕业于中*科学院计算技术研究所,*级语言虚拟机爱好者,在语言虚拟机*域从事开发近十年,曾*职于阿里巴巴和腾讯。
目录:
第 *章 编译器与虚拟机 *
*.* 编译器 2
*.2 虚拟机与物理机 5
*.2.* 物理机 6
*.2.2 什么是虚拟机 **
*.2.3 为什么要构建虚拟机 *4
*.2.4 字节码 *5
*.3 虚拟机与编译器的二元性 *7
第 2章 你好,字节码! *9
2.* 第 *条指令 20
2.*.* 以字节作为开端 2*
2.*.2 最小编译器 26
2.*.3 字节码与反汇编程序 32
2.*.4 回归初心,继续前行 37
2.*.5 给机器上电 40
2.2 栈上加法 46
2.3 连接REPL 52
第3章 编译表达式 55
3.* 栈清理 55
3.2 中缀表达式 60
3.3 布尔类型 64
3.4 比较运算符 69
3.5 前缀表达式 76
第4章 条件语句 83
4.* 跳转 86
4.2 编译条件语句 88
4.3 执行跳转 *03
4.4 欢迎回来,Null 值 *06
第5章 追踪名称 **5
5.* 计划 **6
5.2 编译绑定 **7
5.2.* 添加符号表 *20
5.2.2 在编译器中使用符号 *23
5.3 在虚拟机中支持*局变量 *26
第6章 字符串、数组和哈希表 *32
6.* 字符串 *32
6.2 数组 *38
6.3 哈希表 *42
6.4 索引运算符 *49
第7章 函数 *56
7.* *个简单的函数 *56
7.*.* 函数表示 *57
7.*.2 执行函数的操作码 *58
7.*.3 编译函数字面量 *6*
7.*.4 编译函数调用 *76
7.*.5 虚拟机中的函数 *79
7.*.6 *点奖励 *90
7.2 局*绑定 *9*
7.2.* 局*绑定操作码 *92
7.2.2 编译局*绑定 *95
7.2.3 在虚拟机中实现局*绑定 208
7.3 参数 2*8
7.3.* 编译带参数的函数调用 2*9
7.3.2 将引用解析为参数 224
7.3.3 虚拟机中的参数 227
第8章 内置函数 237
8.* 使修改变得简单 238
8.2 做出改变:计划 244
8.3 内置函数作用域 245
8.4 执行内置函数 250
第9章 闭* 256
9.* 问题 257
9.2 计划 258
9.3 将*切视为闭* 260
9.4 编译和解析自由变量 27*
9.5 运行时*建闭* 283
9.6 递归闭* 288
第 *0章 最后的测试 303
- 人民邮电出版社有限公司 (微信公众号认证)
- 人民邮电出版社微店,为您提供最全面,最专业的一站式购书服务
- 扫描二维码,访问我们的微信店铺
- 随时随地的购物、客服咨询、查询订单和物流...