青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

的筆記

隨時隨地編輯

LUA源碼分析上

主題

LUA源碼分析上
http://3dlearn.googlecode.com/files/LUA源碼分析上.pdf
(非chrome下載文件名有亂碼需要自己重命名)
適合初學lua源碼參考之用,本文作為上部分還未深入分析lua的實現原理。恩,要遵守原則。

目錄

LUA源碼分析(上) 0
有分享交流才有進步,永遠不要固步自封 0
目 錄 1
1 參考資料 5
2 閱讀說明 6
2.1 閱讀本文的方式 6
2.2 源碼閱讀順序 6
2.3 Lapi 7
2.3.1 index2addr 9
2.3.2 lua_setfield 11
2.4 Lobject 12
2.4.1 Value 12
2.4.2 TString 13
2.4.3 Udata 13
2.4.4 Upvaldesc 14
2.4.5 LocVar 14
2.4.6 Proto 14
2.4.7 UpVal 14
2.4.8 CClosure 15
2.4.9 LClosure 15
2.4.10 Closure 15
2.4.11 Tkey 15
2.4.12 Node 15
2.4.13 Table 15
2.4.14 重要宏 16
2.5 Lstate 16
2.5.1 不公開結構LG 18
2.5.2 CallInfo結構 19
2.5.3 global_State結構 19
2.5.4 lua_State結構 21
2.5.5 lua_newstate 22
2.6 Llex 27
1.1 Lopcodes 27
1.1.1 四種指令格式 27
1.1.2 指令集 27
1.1.3 指令定義 30
1.2 Lvm 31
1.2.1 過程 31
1.2.2 過程調用 32
1.2.3 luaV_execute 33
1.3 Ldo( Stack and Call structure) 34
1.3.1 公開過程 35
1.3.2 luaD_pcall 35
1.3.3 luaD_protectedparser 35
1.4 Lstring 36
1.4.1 luaS_newlstr 36
1.4.2 luaS_newudata 37
1.5 Ltable(hash tables) 37
1.6 Ltm(Tag methods) 37
1.6.1 luaT_init 38
1.6.2 luaT_gettm 38
1.7 Ldebug 38
1.7.1 過程表 38
1.8 Lparser\lcode(遞歸下降分析器) 39
1.8.1 數據結構 39
1.9 Lgc(增量\漸進垃圾回收器) 39
2 編碼規范與約定 40
2.1 標識符慣用法 40
2.2 接口代碼約定 40
3 基礎數據結構 41
3.1 等價C類型 41
3.1.1 string 41
3.1.2 array 41
4 全局變量 43
4.1 腳本層全局對象 43
4.1.1 查看全局變量 43
4.1.2 全局變量 43
4.2 引擎全局對象 44
5 架構 45
5.1 文件結構 45
5.1.1 文件結構 45
5.2 文件點評 48
5.3 模塊劃分 48
6 引擎核心 49
6.1 緣起緣滅 49
6.1.1 展開為非核心對象 55
6.1.2 展開為核心對象 55
6.2 狀態機 56
6.2.1 CallInfo(L->ci) 58
6.2.2 CallInfo位狀態(Bits in CallInfo status) 58
7 虛擬機 59
8 閉包 59
9 垃圾回收 59
10 CASE 60
10.1 初始化和加載腳本 60
10.2 Lua runtime code reading Lua運行期源代碼分析閱讀 60
10.3 加載腳本 61
10.4 執行字節碼 63
10.5 創建math庫 66
10.6 set\get方法辨析 69
11 調試與分析 70
11.1 VM Code 70
11.2 LuaCov 71
11.3 LDT 71
11.4 lua調試器:運行時的值查看 72
12 基礎模型 73
13 語法糖 73
13.1 類實現 73
13.2 類型轉換 75
13.3 LUA_CORE 75
13.3.1 定義動態庫 76
13.3.2 定義標準操作 76
13.3.3 打開MS compiler匯編 77
13.3.4 數據包裝技巧 78
14 疑問 80
14.1 Tvaluefields為何重復定義? 80
14.2 如何區分棧中表和普通類型? 80
= 附錄 = 81
15 元編程METAPROGRAMMING 81
16 閉包 CLOSURE 81
16.1 C 閉包 82
16.2 C++閉包 82
17 基礎數據類型數據長度 83
18 THE COMPLETE SYNTAX OF LUA 83
19 遞歸下降分析器(RECURSIVE DESCENT PARSER) 84
20 垃圾回收器 85
20.1 基礎算法 85
20.2 貝姆垃圾收集器 85
21 LUA 5.1 C API 86
21.1 Push data 86
21.2 Check data 86
21.3 Get data checked 86
21.4 Get data converted 87
21.5 Get data with defaults 87
21.6 Stack operator 87
21.7 Value operator 88
21.8 Table 88
21.9 Global data 88
21.10 Call function 89
21.11 Load or call Lua code 89
21.12 Debugging 89
21.13 Buffer 90
21.14 Thread 90
21.15 Library 90
21.16 Misc 91
21.17 Basic types 91

posted on 2012-04-29 15:46 的筆記 閱讀(5134) 評論(7)  編輯 收藏 引用

評論

# re: LUA源碼分析上 2012-04-29 17:19 zgpxgame

文件壞掉了?下載了打不開  回復  更多評論   

# re: LUA源碼分析上 2012-04-29 17:38 OGRE_蟲子

怎么下載啊?  回復  更多評論   

# re: LUA源碼分析上 2012-04-29 22:30 夸父的筆記

@zgpxgame
@OGRE_蟲子
好了  回復  更多評論   

# re: LUA源碼分析上[未登錄] 2013-06-21 19:43 shongbee2

自己整理的啊。。謝謝分享  回復  更多評論   

# re: LUA源碼分析上 2014-03-20 16:36 zr

請問文件中代碼調用圖你是用什么軟件生成的?
ps:文中代碼風格看著很舒服,能不能也透漏下是哪種軟件的style?  回復  更多評論   

# re: LUA源碼分析上 2014-05-01 00:36 夸父的筆記

@zr 有的是doxygen生成的,有的是understand生成的,再有的是PS的
  回復  更多評論   

# re: LUA源碼分析上[未登錄] 2014-05-11 16:34 me

忘了回你代碼格式用的VC自帶的@zr
  回復  更多評論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲一级免费视频| 在线不卡中文字幕| 亚洲自拍偷拍麻豆| 宅男噜噜噜66一区二区| 夜夜躁日日躁狠狠久久88av| 一本久道久久久| 在线天堂一区av电影| 中文av一区特黄| 性久久久久久久久久久久| 欧美怡红院视频一区二区三区| 欧美一区二区三区免费观看| 久久久女女女女999久久| 欧美成人午夜77777| 欧美精品在线一区二区| 国产精品日韩二区| 亚洲国产激情| 9l国产精品久久久久麻豆| 久久免费精品视频| 欧美黄免费看| 一区二区三区免费在线观看| 欧美亚洲视频| 欧美二区在线观看| 国产精品一区二区久久久久| 一区二区三区在线视频观看| 一区二区高清视频| 久久久久99| 日韩一区二区精品视频| 欧美怡红院视频一区二区三区| 欧美激情国产日韩| 国精品一区二区三区| 亚洲特级片在线| 老司机aⅴ在线精品导航| 99ri日韩精品视频| 开心色5月久久精品| 国产精品一区二区在线观看网站| 亚洲人在线视频| 久久久久女教师免费一区| 亚洲精品欧美精品| 久热精品视频在线观看| 国产欧美日韩中文字幕在线| 一区二区三区国产| 欧美成人69av| 欧美一区在线看| 欧美黄色免费| 国产日韩一区欧美| 一本色道精品久久一区二区三区| 猫咪成人在线观看| 中国女人久久久| 欧美区在线播放| 亚洲国产精品一区二区第四页av| 久久久久国产一区二区| 亚洲综合色网站| 国产精品国产成人国产三级| 亚洲午夜精品久久久久久浪潮| 免费观看成人www动漫视频| 欧美在线视频在线播放完整版免费观看 | 欧美日韩日本国产亚洲在线| 91久久极品少妇xxxxⅹ软件| 性久久久久久久久久久久| 亚洲色图自拍| 国产精品久久77777| 99精品黄色片免费大全| 亚洲国产天堂久久综合网| 午夜精品久久久久久| 欧美久久成人| 亚洲婷婷综合色高清在线 | 久久久久久久久蜜桃| 一区二区三区|亚洲午夜| 欧美日韩国产美女| 亚洲一区二区在线看| 亚洲欧美电影院| 亚洲国产精品传媒在线观看| 亚洲精品一区二区三区不| 亚洲激情视频网站| 欧美日本中文| 午夜欧美不卡精品aaaaa| 亚洲愉拍自拍另类高清精品| 国产一本一道久久香蕉| 欧美福利专区| 欧美午夜激情小视频| 欧美在线高清| 久久麻豆一区二区| 亚洲最新在线| 亚洲一区精品电影| 在线日韩视频| 亚洲精品美女在线观看| 国产精品久久久久高潮| 久久亚洲风情| 欧美理论大片| 久久久久久伊人| 欧美日韩国产综合视频在线观看中文| 亚洲午夜久久久| 欧美一区二区三区男人的天堂 | 一区二区三区久久| 亚洲性夜色噜噜噜7777| 尤物九九久久国产精品的特点| 最新国产の精品合集bt伙计| 国产精品你懂的在线| 欧美成人一区二免费视频软件| 欧美日韩不卡在线| 久久精品午夜| 欧美成人首页| 久久婷婷丁香| 欧美午夜在线视频| 亚洲影院在线| 欧美mv日韩mv国产网站app| 性色一区二区三区| 欧美日本二区| 亚洲欧洲av一区二区| 久久午夜电影网| 欧美一区二区视频免费观看| 欧美成人一区二区三区| 久久av一区二区| 免费精品视频| 久久久久91| 国产美女精品视频| 国产日本欧美视频| 在线中文字幕一区| 亚洲国产成人在线播放| 日韩视频免费| 亚洲国产另类久久精品| 一区二区三区.www| 一本色道久久综合狠狠躁篇怎么玩| 亚洲一区综合| 正在播放欧美视频| 欧美国产欧美亚洲国产日韩mv天天看完整| 欧美一区二区| 国产精品午夜电影| 中文精品99久久国产香蕉| 亚洲国产美女| 久久久国产亚洲精品| 国产精品久久久久av| 一区二区三区视频在线播放| 免播放器亚洲一区| 国产视频精品xxxx| 一区二区久久久久久| 日韩亚洲欧美成人一区| 久久av一区二区| 久久精品91久久香蕉加勒比 | 亚洲片区在线| 亚洲成人在线免费| 欧美专区日韩专区| 久久狠狠一本精品综合网| 国产精品盗摄久久久| 亚洲日本久久| 亚洲国产精品久久久久| 久久国产成人| 久久精品国产99精品国产亚洲性色 | 亚洲视频狠狠| 国产精品久久九九| 亚洲性av在线| 午夜精品国产更新| 国产手机视频一区二区| 亚洲一二三区在线| 欧美亚洲日本网站| 国产亚洲欧美激情| 亚久久调教视频| 久久成人免费网| 亚洲国产精品成人综合| 欧美国产日韩一区| 在线视频亚洲欧美| 免费黄网站欧美| 亚洲精品自在久久| 欧美日韩专区在线| 亚洲欧美色一区| 欧美成人亚洲成人日韩成人| 亚洲午夜精品一区二区| 激情小说另类小说亚洲欧美| 男男成人高潮片免费网站| 一本一本久久a久久精品综合麻豆| 午夜精品在线视频| 国产在线成人| 欧美精品色网| 亚洲欧美电影院| 亚洲国产日韩在线一区模特| 亚洲网站视频福利| 伊人久久噜噜噜躁狠狠躁| 欧美极品一区| 欧美中文在线观看国产| 亚洲国产99| 欧美一区二区大片| 亚洲国产日韩欧美在线图片| 欧美日韩福利| 久久精品欧美日韩| 亚洲美女免费精品视频在线观看| 久久久国产精品一区| 日韩午夜电影| 韩日欧美一区二区| 欧美喷水视频| 欧美高清视频免费观看| 久久国产精品一区二区三区| 99国产精品视频免费观看| 欧美高清视频免费观看| 午夜电影亚洲| 香港久久久电影| 午夜精品av| 久久久噜久噜久久综合| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 久久婷婷丁香| 亚洲无限av看|