- 8
- 0
- 约4.07万字
- 约 29页
- 2021-08-26 发布于江西
- 举报
PL/0编译器源程序分析
PL/0 语言是Pascal 语言的一个子集,我们这里分析的PL/0 的编译程序包括了对PL/0
语言源程序进行分析处理、编译生成类 PCODE 代码,并在虚拟机上解释运行生成的类
PCODE代码的功能。
PL/0语言编译程序采用以语法分析为核心、一遍扫描的编译方法。词法分析和代码生
成作为独立的子程序供语法分析程序调用。语法分析的同时,提供了出错 报告和出错恢复
的功能。在源程序没有错误编译通过的情况下,调用类PCODE解释程序解释执行生成的类
PCODE代码。
词法分析子程序分析:
词法分析子程序名为 getsym,功能是从源程序中读出一个单词符号(token),把它的
信息放入全局变量 sym、id和num 中,语法分析器需要单词时,直接从这三个变量中获得。
(注意!语法分析器每次用完这三个变量的值就立即调用getsym子程序获取新 的单词供下
一次使用。而不是在需要新单词时才调用getsym过程。)getsym过程通过反复调用getch子
过程从源程序过获取字符,并把它们拼成单 词。getch过程中使用了行缓冲区技术以提高程
序运行效率。
词法分析器的分析过程:调用getsym时,它通过getch过程从源程序中获 得一个字
您可能关注的文档
最近下载
- 楼板裂缝修补施工方案.docx VIP
- 长沙市中考:2025年-2023年《化学》考试真题与参考答案.pdf
- 2.8 数量间的乘除关系整理和复习 课件人教版数学二年级下册.pptx
- 高速电主轴非接触式加载可靠试验.doc VIP
- 差频接收机、零中频接收机和低中频接收机的特点.docx VIP
- 标准图集-22G813 钢筋混凝土灌注桩图集.pdf VIP
- GB 55003-2021 建筑与市政地基基础通用规范.pdf VIP
- HGT 2902-2024《模塑用聚四氟乙烯树脂》.pdf VIP
- 金风2.5MW机组变桨电机更换作业指导书.pdf VIP
- 江苏省无锡市七年级下学期语文期中质量检测试卷.doc VIP
原创力文档

文档评论(0)