購物比價找書網找車網
FindBook  
 有 1 項符合

Lua解釋器構建:從虛擬機到編譯器

的圖書
Lua解釋器構建:從虛擬機到編譯器 Lua解釋器構建:從虛擬機到編譯器

作者:吳尹傑 
出版社:機械工業出版社
出版日期:2023-01-01
語言:簡體中文   規格:平裝 / 299頁 / 19 x 26 x 1.5 cm / 普通級/ 1-1
圖書選購
型式價格供應商所屬目錄
 
$ 517
博客來 博客來
其他
圖書介紹 - 資料來源:博客來   評分:
圖書名稱: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.3doend語句編譯流程
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語法
 

詳細資料

  • ISBN:9787111718833
  • 規格:平裝 / 299頁 / 19 x 26 x 1.5 cm / 普通級 / 1-1
  • 出版地:中國
贊助商廣告
 
TAAZE 讀冊生活 - 今日66折
這本口說最實用!英文職場高手76篇情境會話從此擺脫中式英文
作者:張慈庭、許澄瑄
出版社:捷徑文化
出版日期:2022-07-06
66折: $ 231 
博客來 - 今日66折
全新制20次多益滿分的怪物講師TOEIC多益單字+文法【隨身版】(附文法教學影片+「Youtor App」內含VRP虛擬點讀筆+防水書套)
作者:怪物講師教學團隊(台灣)
出版社:不求人文化
出版日期:2022-07-27
66折: $ 263 
城邦讀書花園 - 今日66折
我媽媽才是超級英雄【媽媽萬歲版】
出版社:水滴文化
出版日期:2024-03-28
66折: $ 251 
 
博客來 - 暢銷排行榜
你殺了誰(《新參者》加賀恭一郎系列最新作)【博客來獨家書衣+首刷附贈解謎海報工具袋.東野圭吾印刷扉頁簽名】
作者:東野圭吾
出版社:獨步文化
出版日期:2024-08-29
$ 394 
金石堂 - 暢銷排行榜
母娘掌握 無修正
作者:秋空もみぢ
出版社:未來數位有限公司
出版日期:2024-09-19
$ 237 
博客來 - 暢銷排行榜
ICU重症醫療現場3:當個更有溫度的人
作者:陳志金
出版社:原水
出版日期:2024-08-10
$ 316 
Taaze 讀冊生活 - 暢銷排行榜
中年哲學:寫給所有與不可逆的時間搏鬥的人
作者:基倫.賽提亞
出版社:春山出版有限公司
出版日期:2024-09-17
$ 331 
 
Taaze 讀冊生活 - 新書排行榜
江口和明令人無法抗拒的美味甜點課:日本人氣甜點主廚傳授的獨家秘訣,新手也能做出經典甜點
作者:江口和明
出版社:晴好出版
出版日期:2024-08-14
$ 294 
金石堂 - 新書排行榜
關於我轉生變成史萊姆這檔事(21)
作者:伏瀨
出版社:台灣角川股份有限公司
出版日期:2024-09-25
$ 237 
博客來 - 新書排行榜
你願意,人生就會值得:蔡康永的情商課3
作者:蔡康永
出版社:如何
出版日期:2024-08-01
$ 316 
Taaze 讀冊生活 - 新書排行榜
用地理看歷史:戰國七雄,因何一統?
作者:李不白
出版社:時報文化出版企業股份有限公司
出版日期:2024-09-17
$ 406 
 

©2024 FindBook.com.tw -  購物比價  找書網  找車網  服務條款  隱私權政策