新書推薦:

《
美绘聊斋志异
》
售價:HK$
611

《
启微·红帆:中国东南诏安湾的港口、船货与海洋遗产
》
售價:HK$
500

《
全球公民教育:批判性的理论与实践基础
》
售價:HK$
347

《
做事的逻辑(专享版)如何持续做正确的事
》
售價:HK$
218

《
人形机器人 技术、产业与未来社会 全景式解读人形机器人时代的技术密码与未来蓝图
》
售價:HK$
505

《
暗黑历史书系·罗马帝国
》
售價:HK$
449

《
英语同义词辨析大词典
》
售價:HK$
1367

《
三井帝国在扩张——揭开日本财团的经营秘籍
》
售價:HK$
398
|
| 內容簡介: |
|
本书的编写面向开设计算机学科的大专院校,提供一门接近实际C++语言的C—语言语法,给出详细的实践步骤和指导过程,引导性地完成一个实际可用的编译器,并提供测试样例来验证编译器实现的正确性。本书的实验设计包括词法分析与语法分析、语义分析、中间代码生成以及目标代码生成四个部分,贯穿整个编译器设计的全过程。它具有接近实际、拥有指导、提供验证和难度可调四个特点,并给出了详细的使用方式、时间安排和质量控制方案。
|
| 目錄:
|
目 录
丛书序言
前言
第1章 词法分析与语法分析1
1.1 实验内容 1
1.1.1 实验要求 1
1.1.2 输入格式 2
1.1.3 输出格式 2
1.1.4 测试环境 3
1.1.5 提交要求 3
1.1.6 样例(必做内容) 4
1.1.7 样例(选做要求) 7
1.2 实验指导 11
1.2.1 词法分析概述 12
1.2.2 GNU Flex介绍 13
1.2.3 Flex:编写源代码 14
1.2.4 Flex:书写正则表达式 17
1.2.5 Flex:高级特性 19
1.2.6 词法分析提示 21
1.2.7 语法分析概述 22
1.2.8 GNU Bison介绍 24
1.2.9 Bison:编写源代码 26
1.2.10 Bison:属性值的类型 28
1.2.11 Bison:语法单元的位置 30
1.2.12 Bison:二义性与冲突处理 31
1.2.13 Bison:源代码的调试 33
1.2.14 Bison:错误恢复 35
1.2.15 语法分析提示 36
第2章 语义分析 38
2.1 实验内容 38
2.1.1 实验要求 38
2.1.2 输入格式 40
2.1.3 输出格式 41
2.1.4 测试环境 41
2.1.5 提交要求 41
2.1.6 样例(必做内容) 42
2.1.7 样例(选做要求) 48
2.2 实验指导 51
2.2.1 属性文法 52
2.2.2 符号表 53
2.2.3 支持多层作用域的符号表 56
2.2.4 类型表示 58
2.2.5 语义分析提示 61
第3章 中间代码生成 63
3.1 实验内容 63
3.1.1 实验要求 63
3.1.2 输入格式 66
3.1.3 输出格式 66
3.1.4 测试环境 67
3.1.5 提交要求 67
3.1.6 样例(必做内容) 67
3.1.7 样例(选做要求) 70
3.2 实验指导 73
3.2.1 中间代码的分类 74
3.2.2 中间代码的表示(线形) 76
3.2.3 中间代码的表示(树形) 77
3.2.4 初探运行时环境 78
3.2.5 翻译模式(基本表达式) 81
3.2.6 翻译模式(语句) 83
3.2.7 翻译模式(函数调用) 84
3.2.8 翻译模式(数组与结构体) 85
3.2.9 中间代码生成提示 86
第4章 目标代码生成 88
4.1 实验内容 88
4.1.1 实验要求 88
4.1.2 输入格式 89
4.1.3 输出格式 90
4.1.4 测试环境 90
4.1.5 提交要求 90
4.1.6 样例 91
4.2 实验指导 95
4.2.1 QtSPIM简易教程 95
4.2.2 MIPS32汇编代码书写 97
4.2.3 指令选择 100
4.2.4 寄存器分配(朴素寄存器分配算法) 102
4.2.5 寄存器分配(局部寄存器分配算法) 103
4.2.6 寄存器分配(图染色算法) 104
4.2.7 寄存器分配(活跃变量分析) 106
4.2.8 寄存器分配(MIPS寄存器的使用) 107
4.2.9 栈管理 108
4.2.10 目标代码生成提示 113
附录A C––语言文法 115
附录B 虚拟机小程序使用说明 122
附录C 资源下载和安装介绍 125
参考文献 127
|
|