只能实现斐波那契数列,没有实现pi.c,得分五分
上机大作业——简化C编译器实现
总体要求
一、要求实现的语言特性
1. 基本要求
1数据类型:int,char
2语句:赋值(=),if,while,for;赋值 循环 条件判断
3算术运算:+,-,*,/,%,++,--,&,|,^,~,<>
4关系运算:==,>,=,<=,!=
5逻辑运算:&&(与),||(或),!(非);构造与算数相同
6复合语句:{、}括起来的语句;要求识别 if、while中使用
7注释语句;识别注释 然后丢弃
8简单的输入输出
2. 选作功能
1数组,指针;数组怎么实现 第八章介绍数组的翻译
2函数
3其他特性(浮点运算、结构/类、连接C标准库等等)
生成的目标代码
生成x86汇编语言程序。;不要求二进制 由编译器编译成二进制
要求提交的内容
1C语言子集的描述:词法结构的正则表达式定义、语法结构的CFG定义。
;简化子集的描述
2编译器源程序文本,包括Lex、Yacc等程序和C/C++程序。;两种语言工具 构造词法分和语法分析部分 passive generate
3编译器演示程序,可将C语言子集测试程序编译为目标代码——汇编程序,用汇编器转换为二进制程序后运行无误,如斐波那契数列程序,应能翻译为正确的汇编程序。
1