由于时间紧迫及事先准备不足,编译器最后定型时暴露出不少问题及不足之处,主要有以下一些方面: 不支持数组数据类型,这是文法分析器设计时的一个疏漏,由于时间关系,最后只得把扫描器中已做好的相关的数组部分删去。 对于float数据类型的支持,直到语义分析都是正常的,也能生成相应的汇编代码,但由于我们对8086/8088指令系统本身了解不足,这样的汇编代码将只能做到含义上完全忠实于源程序,但不能运行。 对于局部变量的支持,则于时间紧迫,所有的局部变量全被处理成静态变量。使递归函数不能得到正确的结果。 对于函数调用语句,不进行参数匹配检查,如果参数数量不对,也将能通过编译,但运行时将产生非法操作。 对&& !等逻辑操作在最后生成代码时处理比较粗燥,生成的代码在逻辑复杂时将不能保证运行正常。 接下来有一些,不能说是缺陷,但必须说明的问题: 对于main函数,没有参数表,通回类型也必须为void,但如果写上参数表及其他返回类型也能编译通过,生成代码时将简单地忽略,不影响最后的代码的运行。 对于while,for,if语句,其语句体不管是一句还是多句,必须都有{}围起来。这跟C语言中若是一句则可省略{}不同。
资源简介:Joseph Ring 算法
上传时间: 2024-09-20
上传用户:xtoqm
资源简介:windows系统下用java开发的网络入侵检测程序
上传时间: 2024-09-20
上传用户:menglin330
资源简介:vc编程规范,比较详细的
上传时间: 2024-09-20
上传用户:sxmayd
资源简介:无线解码程序,是用于多种无线报警主机的解码
上传时间: 2024-09-20
上传用户:gordon_two
资源简介:16进制数转换成十进制
上传时间: 2024-09-20
上传用户:gupingdn
资源简介:数据结构课程设计 数据结构课程设计C语言版本
上传时间: 2024-09-20
上传用户:hehe6688
资源简介:学籍管理系统 系统是在VC++6.0和SQL Server 2000下开发的. 数据库在Database目录下,在SQLSERVER的查询分析器中执行即可生成数据库. 源程序在Src目录中. 因为程序极为经典,所以本人在此转载~ 一、编程环境: windows2000 +visual stdio c++ .net,Ado + SQ...
上传时间: 2024-09-20
上传用户:selenia123456
资源简介:发布java应用程序的同时发布jdk,然后可以通过这个小程序直接引导java应用程序,比用*.bat的批处理文件好看多了,没有那个讨厌的控制台窗口。【源代码,C++/C】
上传时间: 2024-09-20
上传用户:zhys