编译原理课程作业
编译语言:C
目标语言:MIPS
使用语言:C, BNF
使用工具:yacc, bison, Mars4
实现的功能:
识别整数表达式(必须在使用变量之前声明变量): 整数字面量,变量,
识别布尔变量和变量赋值(必须在使用变量之前声明变量): print(打印单词true或false)并读取(读取1表示true,读取0表示false),
识别算术运算符(符合c语言优先级): +,-(二进制减法),*,/,%,-(负数)^(幂) > = 0的表达式以及关系运算符 <,<=,==,> =,>,!= 布尔运算符•!,&&,|| 和 括号运算符( ,)
识别读写函数: 读取 read(x,y,z), 打印 print(2 * x,x ^ 3 *(z * w),abc / xyz,c), 换行 println, 打印空格 printspaces(3 * n)
识别递归函数: 返回类型为void和int类型的函数, 值参数, 局部变量, 递归