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

的筆記

隨時隨地編輯

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 的筆記 閱讀(5133) 評論(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>
            久久综合一区二区| 韩日欧美一区二区| 欧美一站二站| 欧美在线精品免播放器视频| 亚洲午夜精品一区二区| 亚洲免费黄色| 亚洲欧美综合精品久久成人| 欧美一区二区三区视频在线| 欧美资源在线| 免费不卡欧美自拍视频| 欧美韩国在线| 欧美日韩在线观看视频| 国产区亚洲区欧美区| 极品少妇一区二区| 亚洲免费av片| 亚洲网站在线观看| 久久免费午夜影院| 亚洲精品国精品久久99热一| 亚洲久久一区二区| 亚洲一区999| 久久理论片午夜琪琪电影网| 欧美日韩精品一本二本三本| 国产欧美日韩精品丝袜高跟鞋| 国模私拍一区二区三区| 99精品99| 免费观看欧美在线视频的网站| 日韩视频不卡中文| 久久久999精品免费| 欧美日韩成人精品| 在线视频成人| 欧美影视一区| 亚洲精品视频免费观看| 欧美中文在线字幕| 国产精品红桃| 亚洲美女视频网| 老司机午夜精品视频| 在线亚洲欧美| 欧美日韩国产一中文字不卡| 在线免费观看欧美| 久久九九精品99国产精品| 99热这里只有成人精品国产| 麻豆精品在线视频| 黄色成人在线| 久久久999精品视频| 亚洲精品免费电影| 另类专区欧美制服同性| 亚洲欧美日韩精品久久亚洲区 | 久久国产精品久久久久久电车| 亚洲福利精品| 久久久xxx| 国产日韩欧美麻豆| 亚洲日本成人网| 亚洲人体影院| 久久久免费精品| 这里只有视频精品| 欧美顶级少妇做爰| 亚洲国产精品久久久久婷婷884 | 一区二区欧美日韩| 久久都是精品| 亚洲直播在线一区| 国产精品乱人伦一区二区| 一区二区三区国产精华| 亚洲国内自拍| 欧美日韩国产页| 一区二区三区精密机械公司| 最新精品在线| 欧美日本韩国一区| 99在线|亚洲一区二区| 最新高清无码专区| 欧美日韩亚洲综合在线| 一本久久a久久精品亚洲| 亚洲美女免费视频| 欧美色图一区二区三区| 亚洲欧美综合一区| 欧美中文字幕视频| 在线视频国内自拍亚洲视频| 欧美成人精品不卡视频在线观看| 理论片一区二区在线| 99re热精品| 亚洲综合日韩在线| 国产视频亚洲精品| 免费成人你懂的| 欧美黑人多人双交| 亚洲欧美激情四射在线日| 欧美永久精品| 亚洲一区二区免费看| 国产精品综合网站| 免费久久99精品国产| 欧美精品一区二区蜜臀亚洲 | 亚洲日韩第九十九页| 日韩天堂av| 国产欧美精品一区| 欧美成人免费在线观看| 欧美色区777第一页| 久久女同互慰一区二区三区| 欧美国产一区二区| 欧美中文字幕视频在线观看| 免费观看亚洲视频大全| 亚洲一区二区视频在线| 久久国产精品高清| 中文欧美在线视频| 欧美日韩国产三区| 一区二区三区在线观看欧美| 亚洲黄色一区二区三区| 国产精品视频内| 最新中文字幕一区二区三区| 国产日韩欧美麻豆| 国产精品99久久久久久久久 | 亚洲在线视频观看| 免费高清在线视频一区·| 午夜天堂精品久久久久| 欧美黄在线观看| 麻豆精品在线观看| 国产日韩欧美另类| 一本色道久久综合精品竹菊| 亚洲欧洲三级电影| 久久久综合精品| 久久久水蜜桃| 国产欧美在线观看| 一区二区三区精品国产| 日韩亚洲欧美一区| 欧美顶级少妇做爰| 欧美国产一区二区在线观看| 国产综合久久久久久| 先锋影院在线亚洲| 欧美与欧洲交xxxx免费观看| 国产精品扒开腿做爽爽爽软件| 最新国产精品拍自在线播放| 亚洲黄色成人久久久| 久久全国免费视频| 米奇777在线欧美播放| 韩曰欧美视频免费观看| 久久福利影视| 免费观看在线综合| 亚洲福利一区| 老司机67194精品线观看| 麻豆精品一区二区av白丝在线| 国产一区二区欧美| 久久精品人人做人人爽| 麻豆久久精品| 亚洲精品一级| 欧美日韩亚洲系列| 亚洲最新色图| 午夜精品久久久久久久99樱桃| 国产精品久久网站| 午夜精品视频| 美国成人直播| 亚洲美女中文字幕| 欧美香蕉大胸在线视频观看| 一区二区三区免费网站| 欧美精品www| 欧美日韩情趣电影| 亚洲视频axxx| 国产精品亚洲综合| 久久精品卡一| 牛夜精品久久久久久久99黑人| 91久久精品国产91久久性色| 欧美大片免费| 亚洲午夜精品17c| 久久久精品性| 日韩午夜一区| 91久久久久久| 午夜亚洲视频| 亚洲国产高潮在线观看| 欧美日韩专区在线| 久久精品国产77777蜜臀| 亚洲黄色三级| 久久精品视频在线观看| 亚洲美女色禁图| 午夜精品久久久久久久| 欧美不卡视频| 在线观看视频一区二区| 亚洲一区二区三区久久| 裸体一区二区| 久久久噜噜噜久噜久久| 国产精品久久午夜夜伦鲁鲁| 激情成人亚洲| 亚洲精品在线观| 国产亚洲毛片| 亚洲精品在线观看视频| 欧美一区二区三区视频在线| 亚洲国产视频一区二区| 国产精品久久久久久久一区探花 | 欧美福利小视频| 午夜精品视频一区| 亚洲三级电影全部在线观看高清 | 国产日韩欧美二区| 欧美日韩视频第一区| 久久男女视频| 欧美一区二区三区日韩视频| 99精品欧美一区二区三区| 免费中文字幕日韩欧美| 久久精品av麻豆的观看方式| 亚洲一区二区伦理| av72成人在线| 日韩亚洲欧美综合| 亚洲精品久久| 亚洲国产裸拍裸体视频在线观看乱了中文 | 亚洲精品在线观看免费| 久久久久久亚洲综合影院红桃|