1 选题背景
1.1 总体任务
根据密码学编程时的某个函数(例如计算最大公约数函数)需要完成的程序功能,运用编译原理课程中的知识,设计一个类C语言程序设计语言相应的词法及语法,并实现该语言的编译器,将源码翻译为能在模拟器上运行的目标代码。
1.2 目标
通过资料查阅、分析设计、编程实现等步骤,逐步培养学生解决工程问题的能力,提高独立思考、灵活运用理论知识以解决实际问题的能力;
通过构造简化编译器的过程,了解编译器各部分的理论知识,找出理论与实践中的差异;灵活运用第三方工具协助解决工程问题;综合运用数据结构、算法、汇编语言、C语言编程等前序课程的知识和技能。
1.3 主要技术
开发环境:Ubantu 18.04.5虚拟机系统,Visual Studio 2019编辑器。
关键技术:Flex、Bison工具,老师所给的关键代码段,C语言知识,以及Linux
系统下的相关终端操作。
运行环境:Ubantu 18.04.5虚拟机系统






















