文件名称:JavaScript编译器:编译器教程,使用TypeScript实现一个简单JavaScript编译器
文件大小:5.87MB
文件格式:ZIP
更新时间:2024-02-19 19:20:24
parser compiler javascript-compiler lexer opcode
JavaScript-compiler项目简介: 编译原理比较复杂,我们不求写出一个完整的编译器,但掌握基本原理还是很有必要的。核心内容:自动机,其他无关文法,自顶向下语法分析,中序转换为后序算法解决语法优先级问题,中间代码生成,内存分配,运行时分析,opcode生成等。理解不到位的地方还望斧正。 目录 原始目录结构: src ├─common 公共库 ├─demo │ │─tokenizer.ts 词法解析器demo │ │─parser.ts 语法解析器demo │ ├─ILGen.ts 中间码生成demo │ └─opcodeCompiler.ts 机器码生成demo ├─parse 语法分析 │ ├─expression.ts 表达式 │ ├─exprParser.ts 表达式解析器 │ │─parser.ts 语法解析器 │ ├─statement.ts 陈述语句 │ └─terminal.ts 终结符 ├─tokenizer 词法分析 │
【文件预览】:
JavaScript-compiler-master
----04_运行时刻环境()
--------README.md(6KB)
----.gitignore(13B)
----src()
--------tokenizer()
--------demo()
--------parser()
--------common()
--------opcodeCompiler()
--------SDT()
----专题()
--------正则表达式引擎()
--------编译原理教案.doc(2.59MB)
--------内存的分页.jpg(44KB)
--------内存的分段.jpg(25KB)
--------第8章-语法制导翻译和中间代码生成.ppt(361KB)
--------cpu的工作原理.jpg(109KB)
--------汇编.txt(5KB)
--------V8如何生成机器码(httpswww.zhihu.comquestion57532509).png(1.1MB)
--------编译原理总览.png(1.25MB)
--------内存的段页式.jpg(33KB)
--------V8引擎介绍(httpszhuanlan.zhihu.comp27628685).png(2.02MB)
----计算机的工作原理.txt(35KB)
----dist()
--------tokenizer()
--------demo()
--------parser()
--------common()
--------opcodeCompiler()
--------SDT()
----03_中间代码生成()
--------README.md(6KB)
--------imgs()
----LICENSE(11KB)
----tsconfig.json(297B)
----README.md(22KB)
----02_语法分析()
--------README.md(25KB)
--------imgs()
----.vscode()
--------launch.json(488B)
----05_目标代码生成()
--------README.md(5KB)
----README()
--------imgs()
----01_词法分析()
--------README.md(5KB)