您好,欢迎来到聚文网。
登录
免费注册
网站首页
|
搜索
热搜:
磁力片
|
漫画
|
购物车
0
我的订单
商品分类
首页
幼儿
文学
社科
教辅
生活
销量榜
Lua解释器构建 从虚拟机到编译器
字数: 483000
装帧: 平装
出版社: 机械工业出版社
作者: 吴尹杰
出版日期: 2023-01-01
商品条码: 9787111718833
版次: 1
开本: 16开
页数: 308
出版年份: 2023
定价:
¥99
销售价:
登录后查看价格
¥{{selectedSku?.salePrice}}
库存:
{{selectedSku?.stock}}
库存充足
{{item.title}}:
{{its.name}}
加入购物车
立即购买
加入书单
收藏
精选
¥5.83
世界图书名著昆虫记绿野仙踪木偶奇遇记儿童书籍彩图注音版
¥5.39
正版世界名著文学小说名家名译中学生课外阅读书籍图书批发 70册
¥8.58
简笔画10000例加厚版2-6岁幼儿童涂色本涂鸦本绘画本填色书正版
¥5.83
世界文学名著全49册中小学生青少年课外书籍文学小说批发正版
¥4.95
全优冲刺100分测试卷一二三四五六年级上下册语文数学英语模拟卷
¥8.69
父与子彩图注音完整版小学生图书批发儿童课外阅读书籍正版1册
¥24.2
好玩的洞洞拉拉书0-3岁宝宝早教益智游戏书机关立体翻翻书4册
¥7.15
幼儿认字识字大王3000字幼儿园中班大班学前班宝宝早教启蒙书
¥11.55
用思维导图读懂儿童心理学培养情绪管理与性格培养故事指导书
¥19.8
少年读漫画鬼谷子全6册在漫画中学国学小学生课外阅读书籍正版
¥64
科学真好玩
¥12.7
一年级下4册·读读童谣和儿歌
¥38.4
原生态新生代(传统木版年画的当代传承国际研讨会论文集)
¥11.14
法国经典中篇小说
¥11.32
上海的狐步舞--穆时英(中国现代文学馆馆藏初版本经典)
¥21.56
猫的摇篮(精)
¥30.72
幼儿园特色课程实施方案/幼儿园生命成长启蒙教育课程丛书
¥24.94
旧时风物(精)
¥12.04
三希堂三帖/墨林珍赏
¥6.88
寒山子庞居士诗帖/墨林珍赏
¥6.88
苕溪帖/墨林珍赏
¥6.88
楷书王维诗卷/墨林珍赏
¥9.46
兰亭序/墨林珍赏
¥7.74
祭侄文稿/墨林珍赏
¥7.74
蜀素帖/墨林珍赏
¥12.04
真草千字文/墨林珍赏
¥114.4
进宴仪轨(精)/中国古代舞乐域外图书
¥24.94
舞蹈音乐的基础理论与应用
编辑推荐
这是一本深入探索Lua解释器内部设计与实现的书,而且本书不仅仅局限于Lua本身,立足于脚本语言设计,对其他脚本语言也有很好的参考价值。
内容简介
Lua是一门设计精简、功能强大的脚本语言。本书将Lua解释器拆解,使用C语言,一步一步构建能够正确运行的Lua解释器。本书共6章,分别为Lua解释器概述,Lua虚拟机,Lua脚本的编译与虚拟机指令运行流程,Lua编译器,Lua的解释器的其他基础特征,dummylua开发案例:俄罗斯方块。阅读本书,并不需要读者事先精通有关编译原理的知识,书中会尝试用简洁的语言,向读者介绍相关的具体内容。Lua解释器构建:从虚拟机到编译器面向对Lua内部以及解释器的设计和实现感兴趣的读者,并要求读者对C语言和Lua有一定的了解和使用经验。本书免费提供书中配套案例的全部源码,相关获取方式见封底。
目录
序
前言
第1章Lua解释器概述
1.1Lua解释器
1.1.1Lua解释器的整体架构
1.1.2Lua解释器的运行机制
1.2Lua虚拟机
1.2.1虚拟机简介
1.2.2虚拟机指令的编码方式
1.2.3虚拟机指令集
1.3Lua编译器
1.3.1Lua的词法分析器
1.3.2Lua的语法分析器
1.4从0开发一个Lua解释器:dummylua项目
1.4.1项目简介
1.4.2项目架构说明
第2章Lua虚拟机
2.1Lua虚拟机基础知识
2.1.1基本类型定义
2.1.2虚拟机全局状态——global_State
2.1.3虚拟机的线程结构——lua_State
2.1.4虚拟机中执行函数的基础——CallInfo结构
2.1.5C函数在虚拟机线程中的调用流程
2.1.6虚拟机异常处理机制
2.1.7dummylua项目的虚拟机基础实现
2.2为虚拟机添加垃圾回收机制
2.2.1标记清除算法
2.2.2增量式标记清除算法
2.2.3dummylua项目的垃圾回收机制实现
2.3Lua虚拟机的字符串
2.3.1Lua字符串概述
2.3.2Lua字符串结构
2.3.3字符串的哈希运算
2.3.4短字符串与内部化
2.3.5长字符串与惰性哈希
2.3.6Lua-5.2的HashDoS攻击
2.3.7dummylua的字符串实现
2.4Lua虚拟机的表
2.4.1Lua表功能概述
2.4.2Lua表的基本数据结构
2.4.3表的初始化
2.4.4键值的哈希运算
2.4.5查找元素
2.4.6值的更新与插入
2.4.7调整表的大小
2.4.8表遍历
2.4.9dummylua的表实现
第3章Lua脚本的编译与虚拟机指令运行流程
3.1第一个编译并运行脚本的例子:让Lua说“helloworld”
3.2Lua的整体编译和运行流程
3.3虚拟机如何运行编译后的指令
3.4虚拟机输出“helloworld”的例子
3.5反编译工具——protodump
3.5.1protodump工具简介
3.5.2使用protodump反编译Lua的字节码
3.5.3反编译结果分析
3.6标准库加载流程
3.7Lua内置编译器补充说明
3.7.1EBNF简介
3.7.2本章定义的EBNF
3.7.3词法分析器设计与实现
3.7.4语句和表达式
3.7.5语法分析器的基础设计与实现
3.8让dummylua能够编译并运行“helloworld”脚本
第4章Lua编译器
4.1Lua词法分析器
4.1.1词法分析器简介
4.1.2词法分析器基本数据结构
4.1.3词法分析器的接口设计
4.1.4词法分析器的初始化流程
4.1.5token识别流程
4.1.6一个测试用例
4.1.7dummylua的词法分析器实现
4.2Lua语法分析器基础——expr语句编译流程
4.2.1语法分析器的主要工作
4.2.2实现的语法
4.2.3语法分析器基本数据结构
4.2.4编译逻辑与EBNF的关联
4.2.5exprstat的逻辑结构
4.2.6expr的构造与编译
4.2.7suffixedexp构造与编译
4.2.8assignment构造和编译
4.2.9为dummylua添加编译exprstat的功能
4.3完整的Lua语法分析器
4.3.1Lua的语句块
4.3.2local语句编译流程
4.3.3doend语句编译流程
4.3.4if语句编译流程
4.3.5while语句编译流程
4.3.6repeat语句编译流程
4.3.7for语句编译流程
4.3.8break语句编译流程
4.3.9function语句编译流程
4.3.10return语句编译流程
4.3.11dummylua的完整语法分析器实现
第5章Lua解释器的其他基础特性
5.1元表
5.1.1元表简介
5.1.2元表的_index域
5.1.3元表的_newindex域
5.1.4双目运算事件
5.1.5dummylua的元表实现
5.2用户数据
5.2.1用户数据的数据结构
5.2.2用户数据的接口
5.2.3用户数据的垃圾回收处理
5.2.4用户数据的userdomain域内部的堆内存清理
5.2.5用户数据的测试用例
5.2.6dummylua的用户数据实现
5.3上值
5.3.1上值的定义
5.3.2Lua函数的探索
5.3.3上值的生成
5.3.4开放上值和已关闭上值
5.3.5dummylua的上值实现
5.4弱表
5.4.1弱表的定义
5.4.2弱表的用途
5.4.3弱键
5.4.4弱值
5.4.5接近弱引用
5.4.6dummylua的弱表实现
5.5require机制
5.5.1require功能简述
5.5.2package初始化
5.5.3require运作流程
5.5.4dummylua的require机制实现
第6章dummylua开发案例:俄罗斯方块
6.1案例简介
6.2案例代码结构
6.3编译与运行
附录
附录ALua虚拟机指令集
附录BLua的EBNF语法
×
Close
添加到书单
加载中...
点此新建书单
×
Close
新建书单
标题:
简介:
蜀ICP备2024047804号
Copyright 版权所有 © jvwen.com 聚文网