实例介绍
C0编译器 包含: 所有源代码 VC6完整工程(已测试兼容VC2008) 完整文档(包括文法、实现机制之类的) 使用说明
【实例截图】
【核心代码】
.
├── C0编译器(C 实现,VC6完整工程、附带文档、详细使用说明).rar
├── Thumbs.db
├── Workspace (VC6)
│ ├── ASTNode.cpp
│ ├── ASTNode.h
│ ├── ASTree.cpp
│ ├── ASTree.h
│ ├── ActivityRecord.cpp
│ ├── ActivityRecord.h
│ ├── BasicBlockGroup.cpp
│ ├── BasicBlockGroup.h
│ ├── BasicBlockScanner.cpp
│ ├── BasicBlockScanner.h
│ ├── CallStack.cpp
│ ├── CallStack.h
│ ├── CommonSubExpEliminator.cpp
│ ├── CommonSubExpEliminator.h
│ ├── ConflictGraph.cpp
│ ├── ConflictGraph.h
│ ├── ControlFlowAnalyzer.cpp
│ ├── ControlFlowAnalyzer.h
│ ├── DAGNode.cpp
│ ├── DAGNode.h
│ ├── DAGraph.cpp
│ ├── DAGraph.h
│ ├── Debug
│ │ ├── ASTNode.obj
│ │ ├── ASTree.obj
│ │ ├── Exception.obj
│ │ ├── FATCAT C0 Compiler.pch
│ │ ├── HashTable.obj
│ │ ├── Lexer.obj
│ │ ├── Parser.obj
│ │ ├── Position.obj
│ │ ├── Quaternion.obj
│ │ ├── QuaternionChecker.obj
│ │ ├── QuaternionGenerator.obj
│ │ ├── QuaternionGroup.obj
│ │ ├── Symbol.obj
│ │ ├── SymbolTable.obj
│ │ ├── Token.obj
│ │ ├── vc60.idb
│ │ └── vc60.pdb
│ ├── Deconstanter.cpp
│ ├── Deconstanter.h
│ ├── Exception.cpp
│ ├── Exception.h
│ ├── FATCAT C0 Compiler.dsp
│ ├── FATCAT C0 Compiler.dsw
│ ├── FATCAT C0 Compiler.ncb
│ ├── FATCAT C0 Compiler.opt
│ ├── FATCAT C0 Compiler.plg
│ ├── GlobalRegisterAllocator.cpp
│ ├── GlobalRegisterAllocator.h
│ ├── HashTable.cpp
│ ├── HashTable.h
│ ├── HyperBlockScanner.cpp
│ ├── HyperBlockScanner.h
│ ├── Instruction.cpp
│ ├── Instruction.h
│ ├── InstructionList.cpp
│ ├── InstructionList.h
│ ├── Lexer.cpp
│ ├── Lexer.h
│ ├── LiveVarAnalyzer.cpp
│ ├── LiveVarAnalyzer.h
│ ├── LocalRegisterAllocator.cpp
│ ├── LocalRegisterAllocator.h
│ ├── OptimizationPipeline.cpp
│ ├── OptimizationPipeline.h
│ ├── Parser.cpp
│ ├── Parser.h
│ ├── Position.cpp
│ ├── Position.h
│ ├── QVM.cpp
│ ├── QVM.h
│ ├── Quaternion.cpp
│ ├── Quaternion.h
│ ├── QuaternionChecker.cpp
│ ├── QuaternionChecker.h
│ ├── QuaternionGenerator.cpp
│ ├── QuaternionGenerator.h
│ ├── QuaternionGroup.cpp
│ ├── QuaternionGroup.h
│ ├── Register.cpp
│ ├── Register.h
│ ├── RegisterPool.cpp
│ ├── RegisterPool.h
│ ├── Release
│ │ ├── ASTNode.obj
│ │ ├── ASTNode.sbr
│ │ ├── ASTree.obj
│ │ ├── ASTree.sbr
│ │ ├── ActivityRecord.obj
│ │ ├── ActivityRecord.sbr
│ │ ├── BasicBlockGroup.obj
│ │ ├── BasicBlockGroup.sbr
│ │ ├── BasicBlockScanner.obj
│ │ ├── BasicBlockScanner.sbr
│ │ ├── CallStack.obj
│ │ ├── CallStack.sbr
│ │ ├── CommonSubExpEliminator.obj
│ │ ├── CommonSubExpEliminator.sbr
│ │ ├── ConflictGraph.obj
│ │ ├── ConflictGraph.sbr
│ │ ├── ControlFlowAnalyzer.obj
│ │ ├── ControlFlowAnalyzer.sbr
│ │ ├── DAGNode.obj
│ │ ├── DAGNode.sbr
│ │ ├── DAGraph.obj
│ │ ├── DAGraph.sbr
│ │ ├── Deconstanter.obj
│ │ ├── Deconstanter.sbr
│ │ ├── Exception.obj
│ │ ├── Exception.sbr
│ │ ├── FATCAT C0 Compiler.bsc
│ │ ├── FATCAT C0 Compiler.pch
│ │ ├── GlobalRegisterAllocator.obj
│ │ ├── GlobalRegisterAllocator.sbr
│ │ ├── HashTable.obj
│ │ ├── HashTable.sbr
│ │ ├── HyperBlockScanner.obj
│ │ ├── HyperBlockScanner.sbr
│ │ ├── Instruction.obj
│ │ ├── Instruction.sbr
│ │ ├── InstructionList.obj
│ │ ├── InstructionList.sbr
│ │ ├── Lexer.obj
│ │ ├── Lexer.sbr
│ │ ├── LiveVarAnalyzer.obj
│ │ ├── LiveVarAnalyzer.sbr
│ │ ├── LocalRegisterAllocator.obj
│ │ ├── LocalRegisterAllocator.sbr
│ │ ├── OptimizationPipeline.obj
│ │ ├── OptimizationPipeline.sbr
│ │ ├── Parser.obj
│ │ ├── Parser.sbr
│ │ ├── Position.obj
│ │ ├── Position.sbr
│ │ ├── QVM.obj
│ │ ├── QVM.sbr
│ │ ├── Quaternion.obj
│ │ ├── Quaternion.sbr
│ │ ├── QuaternionChecker.obj
│ │ ├── QuaternionChecker.sbr
│ │ ├── QuaternionGenerator.obj
│ │ ├── QuaternionGenerator.sbr
│ │ ├── QuaternionGroup.obj
│ │ ├── QuaternionGroup.sbr
│ │ ├── Register.obj
│ │ ├── Register.sbr
│ │ ├── RegisterPool.obj
│ │ ├── RegisterPool.sbr
│ │ ├── SourceCode.obj
│ │ ├── SourceCode.sbr
│ │ ├── Symbol.obj
│ │ ├── Symbol.sbr
│ │ ├── SymbolTable.obj
│ │ ├── SymbolTable.sbr
│ │ ├── SymbolTableInstance.obj
│ │ ├── SymbolTableInstance.sbr
│ │ ├── Token.obj
│ │ ├── Token.sbr
│ │ ├── VarSet.obj
│ │ ├── VarSet.sbr
│ │ ├── X86ASMArgument.obj
│ │ ├── X86ASMArgument.sbr
│ │ ├── X86ASMGenerator.obj
│ │ ├── X86ASMGenerator.sbr
│ │ ├── X86ASMTranslator.obj
│ │ ├── X86ASMTranslator.sbr
│ │ ├── X86Peephole.obj
│ │ ├── X86Peephole.sbr
│ │ ├── X86Register.obj
│ │ ├── X86Register.sbr
│ │ ├── main.obj
│ │ ├── main.sbr
│ │ └── vc60.idb
│ ├── SourceCode.cpp
│ ├── SourceCode.h
│ ├── Symbol.cpp
│ ├── Symbol.h
│ ├── SymbolTable.cpp
│ ├── SymbolTable.h
│ ├── SymbolTableInstance.cpp
│ ├── SymbolTableInstance.h
│ ├── Test ASM
│ │ ├── Debug
│ │ │ ├── Test ASM.exe
│ │ │ ├── Test ASM.ilk
│ │ │ ├── Test ASM.pch
│ │ │ ├── Test ASM.pdb
│ │ │ ├── main.asm
│ │ │ ├── main.obj
│ │ │ ├── vc60.idb
│ │ │ └── vc60.pdb
│ │ ├── Test ASM.dsp
│ │ ├── Test ASM.plg
│ │ └── main.c
│ ├── Test Case
│ │ ├── 2009-3-23_205702.asm
│ │ ├── 2009-3-23_205702.exe
│ │ ├── 2009-3-23_205702.obj
│ │ ├── 2009-3-23_210400.asm
│ │ ├── 2009-3-23_210400.exe
│ │ ├── 2009-3-23_210400.obj
│ │ ├── 2009-3-23_210833.asm
│ │ ├── 2009-3-23_210833.exe
│ │ ├── 2009-3-23_210833.obj
│ │ ├── 2009-3-23_211515.asm
│ │ ├── 2009-3-23_211515.exe
│ │ ├── 2009-3-23_211515.obj
│ │ ├── 2009-3-23_211715.asm
│ │ ├── 2009-3-23_211715.exe
│ │ ├── 2009-3-23_211715.obj
│ │ ├── FATCAT(R) C0 Compiler 启动器.exe
│ │ ├── c0cl.exe
│ │ ├── c0cl.log
│ │ ├── c0cl_ast.log
│ │ ├── c0cl_qua.log
│ │ ├── c0cl_qua0.log
│ │ ├── compute_e.asm
│ │ ├── compute_e.exe
│ │ ├── compute_e.obj
│ │ ├── compute_pi.asm
│ │ ├── compute_pi.exe
│ │ ├── compute_pi.obj
│ │ ├── factorize.asm
│ │ ├── factorize.exe
│ │ ├── factorize.obj
│ │ ├── link.exe
│ │ ├── ml.exe
│ │ ├── mspdb50.dll
│ │ ├── msvcrt.lib
│ │ ├── scanf.asm
│ │ ├── scanf.exe
│ │ ├── scanf.obj
│ │ ├── sqrt.asm
│ │ ├── sqrt.exe
│ │ ├── sqrt.obj
│ │ ├── test_case.asm
│ │ ├── test_case.exe
│ │ ├── test_case.obj
│ │ ├── test_code_00.asm
│ │ ├── test_code_00.exe
│ │ ├── test_code_00.obj
│ │ ├── test_code_01.asm
│ │ ├── test_code_01.exe
│ │ ├── test_code_01.obj
│ │ ├── test_code_02.asm
│ │ ├── test_code_02.exe
│ │ ├── test_code_02.obj
│ │ ├── test_code_03.asm
│ │ ├── test_code_03.exe
│ │ ├── test_code_03.obj
│ │ ├── test_code_04.asm
│ │ ├── test_code_04.exe
│ │ ├── test_code_04.obj
│ │ ├── test_code_05.asm
│ │ ├── test_code_05.exe
│ │ ├── test_code_05.obj
│ │ ├── test_code_06.asm
│ │ ├── test_code_06.exe
│ │ ├── test_code_06.obj
│ │ ├── test_code_07.asm
│ │ ├── test_code_07.exe
│ │ ├── test_code_07.obj
│ │ ├── test_code_08.asm
│ │ ├── test_code_08.exe
│ │ ├── test_code_08.obj
│ │ ├── test_code_09.asm
│ │ ├── test_code_09.exe
│ │ ├── test_code_09.obj
│ │ ├── test_code_10.asm
│ │ ├── test_code_10.exe
│ │ ├── test_code_10.obj
│ │ ├── test_code_11.asm
│ │ ├── test_code_11.exe
│ │ ├── test_code_11.obj
│ │ ├── test_code_12.asm
│ │ ├── test_code_12.exe
│ │ ├── test_code_12.obj
│ │ ├── test_code_13.asm
│ │ ├── test_code_13.exe
│ │ ├── test_code_13.obj
│ │ ├── test_code_14.asm
│ │ ├── test_code_14.exe
│ │ ├── test_code_14.obj
│ │ ├── test_code_15.asm
│ │ ├── test_code_15.exe
│ │ └── test_code_15.obj
│ ├── TestCode.asm
│ ├── TestCode.c0
│ ├── TestCode.exe
│ ├── TestCode.obj
│ ├── Token.cpp
│ ├── Token.h
│ ├── VarSet.cpp
│ ├── VarSet.h
│ ├── X86ASMArgument.cpp
│ ├── X86ASMArgument.h
│ ├── X86ASMGenerator.cpp
│ ├── X86ASMGenerator.h
│ ├── X86ASMTranslator.cpp
│ ├── X86ASMTranslator.h
│ ├── X86Peephole.cpp
│ ├── X86Peephole.h
│ ├── X86Register.cpp
│ ├── X86Register.h
│ ├── c0cl.log
│ ├── c0cl_qua.log
│ ├── link.exe
│ ├── main.cpp
│ ├── ml.exe
│ ├── mspdb50.dll
│ ├── msvcrt.lib
│ └── utility.h
├── 文档
│ └── 37060408_张弓_扩展C0编译器参考文档.pdf
└── 可执行文件
├── FATCAT(R) C0 Compiler 启动器.exe
├── c0cl.exe
├── link.exe
├── ml.exe
├── mspdb50.dll
├── msvcrt.lib
├── opt.txt
└── test_case.txt
8 directories, 320 files
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论