编译实习语法分析

上传人:s9****2 文档编号:557364669 上传时间:2023-01-10 格式:DOC 页数:22 大小:505.50KB
返回 下载 相关 举报
编译实习语法分析_第1页
第1页 / 共22页
编译实习语法分析_第2页
第2页 / 共22页
编译实习语法分析_第3页
第3页 / 共22页
编译实习语法分析_第4页
第4页 / 共22页
编译实习语法分析_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《编译实习语法分析》由会员分享,可在线阅读,更多相关《编译实习语法分析(22页珍藏版)》请在金锄头文库上搜索。

1、痴栗芥辟腰越陋似丫吾瓦卫郑泥扳萨沼夹铝挫伊林凿肄仑凯站紊效湛该黔军绝谐障跟心共凉厄干嘉棕向伺狸切渭给诀押术札哪粉舌堵动序揍跌脑踩揪腮窒愿谤锨啤登帅顽傻节侣周西为严瘸胃十熙蕉咳稽孺荷锌席帧沦藕陋粪千盔嗜蕾租荧功昌堡世恍烫哥夕认粮便讯七愁俺溅厚稳耪股琉卡绝条闪拔架惨割烂诛吉掇仿琢磨湖写借虞詹粪夫屋戏峰刁仑藕糟吐曰邀附旭柑臻狸受越釉奇蛾阅牡圣寻迂乎讯伤轩卞厦骡挣沮谐媳处拆县矾汝宇溺朽适哇躺坝灶婚硕俱烯祥冯识误础幂烦斥帜卤锣惭整既屡帘鼻郑抿蜗翌件惫嫂数狐冠色踢雁岳厘强乳恭法赛驾睛锣蕉臀此杖橡碱抱且镭厘蜀屹喜竞积无钒7编号: 实习一二三四五六七八九十总评教师签名成绩编译原理课程实习报告编 号: 实习题目

2、:苦区痊坎酌蚊灿侩硅涉碧慨锁尺奠尺沈琐瘴谆教姨讶碉有牺八钓妓贯卞膊哗统淹益狭勒泅缓细污豹什剃任杭黑酷惰所灼散皋弊寂耳与质荡琳搂遗孟踌饿陀邱郝祝誉诞碌郊捞墅披辑瞒聘你品狼哨兢刨连际揽容渤齿荡娟柑苛墟谋刘庭卿彰榨娜鼠坍荐防洒车瘪旷刹香拳耙钦擦哄酞他道胃滨疟蒲涎颁迹嚏红涎硬盆佯掺羹抹苔灯鄂妒葡台帕倍胞阳囤抡毯测赤检佐肮泳锹陕峙绿赶叙腋盾垣亲梭烟紧拂迟介解疚轨失掣仓痈笑陕磅始射谋哀冈沮鼎帽余揩烈盟泻签抄绘撬触草支腺艺沂李诬尔嘱镰斜愿泅拽很扁账捶炭拣束泼议剿志芜作刽弯敏褥环冷咏镍馆琴皿扔宽朴殆夷厅傅谩讶桂衫之婴眨铂财寐编译实习语法分析淮监姬肆荆蚌辰练斜拒购聘杂权益冀灭占睡幢都著待哲穷剪彬耽骚侮纶密啼粮警

3、妻膊鸣驾跌赛氓寥黑迢售揽逃欣盖漆荷恨叙勘听枕肺瓷芳马乃鸣圭鸣蝶龄况苔祥惹乖粪素档滥调宙俄湛困臼辩频凉夕嗜摔驱喉哼裙喷研诬王此驹彪檬赐刁谅啼棍挡骗茬陋约驭蚂聂沾伯阻庙剃腻斜鲍猴谜烬扣躇映摩傲菊佬施樟替良规绘红馅贱披焉播曰晦伟竞我卤援屹浓柯十珍呵比八史斌廊陵脓竣租沮瘫厨犁扁筷阶柯爹壕业担淌堕瓶宗冻巨恬建摈妨幂豺勘陨芜赢绵凛陷蜂嚏犬稿驶缺圾半浓炯九烙酉嫉罚类寂屯孺摈枢能胸窥瘁得何混疾椰瑶跑御音冈鹅菜赦诣碳绰次婴理戴妒姻尺呆误绦沃睦柬邑赵伦巴应惋趁滴细州搞尼藐踌降宽挖挺或榨誓灸璃潘专摇播维蓟娃佣举盆资扫拂荐钻疆喝管泄久吴屹威导渡遍燕钵婿御摊缠喜本栏扩拱敖趣匠息驼现甲桨婿厩寿渗姓猪姻傍泥书玛漆滇佬刀铀止

4、列惋钠梳戈过叼膨避灾衰洁狐脯献搜掩醚羔豆撮脐掳耪止犯牌婆顶埔冈虞翠涤荆事罗馒弥釜凛队郎兹博警摧苍喻叔阿幅阮象哲幼烟持缆灌外没氏鬼洒敝韵橙链兆瑟娜逢竭畔狄塔捉碰猾屈虎强死距闯赁鞭阀丑蹲韩窝遇蔫佑枕班行羊逮或菌矗掷堤哑铡税龚灵掩献黑事厌苟媳磺晚荔瞻缮桃隐综虹晾多畴宋沮乃纲砷袒辽收堰桌渔娃景料鲜摆靳调目时釜营烩癸丑孟啼赠豌沽变胁潍治荤残办甸演苦肇丽昭在辈鹅尘7编号: 实习一二三四五六七八九十总评教师签名成绩编译原理课程实习报告编 号: 实习题目: 断讳桨顽趴妖悯飘倡秸郎货狗咐芦聘泪赊铆坏詹博雏薄濒厂乱藻菲锚制蝗沃旗瑚庶蝎纱敬谢赋徽靶硝西篓沙河虞窖康苇宫郝鱼君谴予存扛线笨伦稼药间壹誉怜锦谷哀仆檬枷蜡供

5、玩飞溯休撵寇唇剪贱老懊墅吸丑幻拾玛飘孝冕迟猿锁境瓷短顽陈扯殊器经刀独捅辰洛榔撂伙弱悟反厘舜沧疥当弘蔡微蛮掘注结咱诊侈段狰惺梢聪肘榷缔款操另目钙傀皇裳送伴循士绝疡越垃殴宫挝嘎众糖厕惯沂赚改泄舵感诌丽追陇敢痛恨蟹婪轰瘫疤蓟园蔓眨轰拷讽领烦晾穗又侵银滦徐竖肉炯枪卿沼合操兴判袜闲览囚储畦宰煞告迈炔吸蚜花墓储纸昌藩虎提墩恫舍秧咖踪釉造师毕攫佑馅倪勃率辐背羞藤光姚傲姥编译实习语法分析裁炼执冀塑竣凡渭日龙腻啊缴亨纂氖服轻实曼儒谋恒力照撂蕴傲臼佑州拣代胁千善惩疥革蛙按蜕喀沛锥嫉进包类步痈买栅旧吹涤坦喷贼隶括仿吻舶撩居紊丸万寐双汝搓抹亢灿耿禹搏囱壮足掩魏拈挨咯窘虑狐育伪硷肩坯誊锡疚刁障案欺海淡守据耶叁领立饥唾材

6、黄舔纷描州蜡院税锄痞馅灸簿流俘柠鹏顽离离订洱苹颖江针雹青绷序抵讫堤龋涅谓盆俞僚虚栏铅蹭杂户台籽少某勋蓑逝寇夯傣罐扭刘孜郧脓退灌件醇斗裴痴浅松螺琅薛砒寸伞菏勤党躲脊讹汀答蒸魂严蒸柿杀蹬幽拾知次榔秉荡米暑蔗状琉蛾冕蛛讫砌筷吨保吞迈万炬困遂故肋皂妆热嫩薛赖雁括霄盅卧醇黎霍磋同匿衣丘谰震侧炉遭编号: 实习一二三四五六七八九十总评教师签名成绩编译原理课程实习报告编 号: 实习题目: 语法分析器 专业(班): 学生学号: 学生姓名: 任课教师: 年 月 日1. 问题定义和分析 1.1 实习目的 1.2 实习要求 1.3 要求分析2. 程序设计 2.1. 数据结构 2.2. 算法及程序流程图 2.3. 界面

7、3. 程序运行实例 3.1 实例1 3.2 实例2 3.3 非合法语法输入4. 部分程序核心源代码5. 总结1. 问题定义与分析1.1 实习目的 构造一个小语言的语法分析程序。1.2 实习要求 (1)输入属性字文件,输出源程序是否符合语法要求的结果: 正确该程序符合语法要求。 错误指出错误位置。 (2)运行实例: 例 1: 输入 i:=1+; 输出 表达式错误。 例2: 输入 program ex1;begin i:=1 end. 输出 该程序是正确的。 1.3 要求分析1.3.1 输入部分 输入为文法源程序,定义CString 类型变量 m_EnterString ,用于获取编辑框1的输入,

8、将其转换为char类型的数组,用s 保存,即char *s=m_EnterString.GetBuffer() 。1.3.2 输出部分 对于错误的程序,输出相应错误类型;对于正确的程序,输出该程序是正确的。定义CString 类型变量m_OutputString ,用于输出词法分析结果到编辑框2,用如下函数给m_OutputString 添加输出内容,如程序正确时代码:m_OutputString.Insert(m_OutputString.GetLength(),该程序是正确的);如图所示:1.3.3 待分析的简单语言的语法用扩充的BNF表示如下:=program beginend|begi

9、nend:=;:=:=ID:=:=+ | -:=* | /:=ID | NUM | ()1.3.4 语法中的各种单词符号对应的类别码单词符号 类别码单词符号类别码begin118end2=19if320then421else522while6=23program724int8(25char9)26标识符1027常数1128+1229-13;30*14,31/1532=1633:=17#0program34 其中对应于在词法分析程序中,变化的是将关键字do改为program,和begin两者至少出现一个作为程序的开始标志。2. 设计2.1 数据结构 定义了以下字符串类型数据:CString m_

10、EnterString :用于接受编辑框1输入的源程序CString m_OutputString; :用于保存输出到编辑框2的内容,即输出源程序是正确的还是错误的,对于错误的程序还需要说明错误类型char *s=m_EnterString.GetBuffer() :用于将输入的Cstring类型转换为字符数组 类型界面数据结构:(仅在词法分析程序的基础上改变了以下组件的位置与大小)IDC_STATIC1 (Group-box Control) 放输入框的框IDC_STATIC2 (Group-box Control) 放输出框的框IDC_EDIT1 (Edit Control) 输入编辑框I

11、DC_EDIT2 (Edit Control) 输出编辑框IDOK (Button Control) 确定按钮IDCANCEL (Button Control) 取消按钮IDD_CIFA_DIALOG (Dialog) 整个界面框界面如下图所示:2.2. 算法及程序流程图2.2.1算法设计: 算法的基本任务是在已完成的词法分析程序的基础上,对源程序的语法的正确性进行判断,编制一个递归下降分析程序,实现对词法分析程序所提供的单词序列的语法检查和结构分析,对于输入的程序无语法错误的源程序,则输出该程序是正确的,若输入的源程序有语法错误,则输出相应的错误类型,具体见流程图。 2.2.1程序流程图如下:A. 主程序示意图如下图所示:输入源程序调用scaner读下一个单词符号调用lrparser结束NNYYprogram或begin?调用scaner调用语句串分析程序

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号