1 编 译 器 构 造 基 本 思 想 — — 图 解 与 形 式 化 辽宁师范大学计算机与信息技术学院 王宏漫 w anghongman@live
cn 真诚地期待阅读过该讲义的朋友对于其内容、形式提出改进建议、意见
2 教学形式: 教学总学时 48 学时 = 32 学时授课 + 16 学时上机 考试成绩 = 卷面成绩 + 平时成绩 卷面成绩 = 100 × 80% 分 平时成绩 = 30 分 = 实验成绩(25 分) + 点名与提问(5 分) 实验成绩 = 4 个必做实验(4 × 5 分) + 3 选 1 选做实验(5 分) 注:若“3 选 1 选做实验”部分都完成的话,“点名与提问”部分可按满分记
注意:本讲义作为教材的参考资料,起到辅助理解的作用
书是必须要看的
1-1 第1章 绪论 横看成岭侧成峰,远近高低各不同
不识庐山真面目,只缘身在此山中
—— 学习编译的感觉 1
程序设计语言和编译程序 我们编写的程序在计算机内部的运行过程是什么样子的呢
1 给出了一个简单的描述
1 计算机运行程序的过程 本课程主要就是介绍图 1
1 中 “翻译”所涉及的各个层面以及“运行”时有哪些问题需要解决
编译技术与理论的产生和发展是源于人–计算机交流的需要
计算机硬件能够直接识别并执行的命令是它的指令系统,这种指令系统是以 0、1 符号串的形式表现的——即所谓的“机器语言”
在计算机诞生的最初日子里,人们用机器语言和计算机进行沟通,对机器来讲,它收到命令后就可以直接识别 1图 1
2,立即执行,效率很高
而对人来讲,这种二进制形式的指令代码 —— 0、1 符号串既难于记忆,也难于读懂,编写程序时难度大,调试困难
以所示的一段用C语言编写的程序为例,该程序主要执行了赋值、加法两种运算,在VC++2005 中,二进制指令码(这里实际上是16 进制形式