在宁大学社团问卷调查报告及分析结果_第1页
在宁大学社团问卷调查报告及分析结果_第2页
在宁大学社团问卷调查报告及分析结果_第3页
在宁大学社团问卷调查报告及分析结果_第4页
在宁大学社团问卷调查报告及分析结果_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

调查问卷分析报告——在宁高校社团发展情况问卷调查南京中医药大学经贸管理学院就业发展协会学术研究部2013年3月20日—2013年4月30日

目录一、调查目的.........................................2二、调查对象.........................................2三、调查方式.........................................2四、调查时间.........................................2五、调查内容.........................................2六、调查结果分析.....................................3七、调查总结.........................................15八、问卷样板.........................................16调查问卷分析报告一、调查目的:大学生社团是校园精神文明建设的重要力量,是大学生提高综合素质的重要阵地,是学校保持健康稳定局面的重要因素,在新时期加强学生社团建设,积极引导学生参加健康向上的社团活动,是适应高等教育体制改革的现实需要。南京中医药大学经贸管理学院就业创业发展协会拟此调查问卷,不仅为了对在宁高校社团发展情况有进一步的认识,而且希望从这次调查中可以吸收更多优秀社团发展的经验。二、调查对象:在宁高校部分社团三、调查方式:本次调查采用的随机问卷调查方式,南京中医药大学经贸管理学院就业发展协会学术研究部拟定调查问卷,由本协会公共关系部随机抽取在宁高校社团发放问卷,并在二日之后统一收回,共发放问卷171份,回收171份,回收率100%。四、调查时间:2013年3月20日—2013年4月30日五、调查内容:本次问卷主要为了解在宁高校社团运作情况,问卷列出了25个具有代表性的问题从社团的性质、社团的宗旨、社团发展中遇到的问题等方面在了解在宁高校社团,从中吸收经验有助于以后社团的发展。六、调查结果分析:调查中的各大高校频率百分比有效百分比累积百分比有效南京师范大学3520.520.520.5南京邮电大学4124.024.044.4南京财经大学3419.919.964.3南京大学2615.215.279.5南京林业大学31.81.881.3南京中医药大学3017.517.598.8南京理工大学1.6.699.4南京审计学院1.6.6100.0合计171100.0100.0所调查的社团类型频率百分比有效百分比累积百分比有效学生会8750.950.950.9文学社148.28.259.1爱心社31.81.860.8分团委74.14.164.9科协158.88.873.7青年志愿者协会116.46.480.1创业发展协会31.81.881.9就业发展协会84.74.786.5计算机协会31.81.888.3歌友会1810.510.598.8自强社21.21.2100.0合计171100.0100.01、您所在的社团的类型属于:①理论学习类②学术科技类③社会实践类④文娱体育类⑤就业创业类⑥网络(虚拟)社团⑦公益服务类⑧其他类型社团:(请注明)您所在的社团的类型属于频率百分比有效百分比累积百分比有效理论学习类5632.732.732.7学术科技类3520.520.553.2社会实践类169.49.462.6文娱体育类3118.118.180.7就业创业类169.49.490.1网络(虚拟)社团31.81.891.8公益服务类148.28.2100.0合计171100.0100.02、您所在社团开展活动的目的或宗旨是什么:(可多选)①响应学校的要求②增进社员感情,提高团队协作力度③丰富大学生活,开拓眼界④锻炼实践能力,提高职业技能⑤其它(请注明)您所在社团开展活动的目的或宗旨是什么频率百分比有效百分比累积百分比有效响应学校的要求2816.416.416.4增进社员感情,提高团队协作力度5632.732.749.1丰富大学生活,开拓眼界5331.031.080.1锻炼实践能力,提高职业技能2816.416.496.5其他21.21.297.7服务大众1.6.698.2服务社会1.6.698.8为人民服1.6.699.4学习技术1.6.6100.0合计171100.0100.03、您所在的活动是否接近您们社团的宗旨:①毫不相关②不怎么接近③比较接近④很贴近宗旨您所在的活动是否接近您们社团的宗旨频率百分比有效百分比累积百分比有效毫不相关3118.118.118.1不怎么接近179.99.928.1比较接近7242.142.170.2很贴近宗旨5129.829.8100.0合计171100.0100.04、您认为您所在学生社团的规模如何:①规模大②规模适中③规模小

④不了解您认为您所在学生社团的规模如何频率百分比有效百分比累积百分比有效规模大5532.232.232.2规模适中7342.742.774.9规模小3520.520.595.3不了解84.74.7100.0合计171100.0100.05、您所在的社团结构怎么样,如果您认为不合理,那么主要表现在哪些方面:①结构合理②结构不合理③主要表现:___________(请注明)您所在的社团结构怎么样,如果您认为不合理,那么主要表现在哪些方面频率百分比有效百分比累积百分比有效结构合理14383.683.683.6结构不合理2414.014.097.7其他42.32.3100.0合计171100.0100.06、您所在的学生社团的活动经费主要来源是。(可多选)①学校拨款②社会赞助③收取会费④社会捐赠⑤其它:(请注明)您所在的学生社团的活动经费主要来源是频率百分比有效百分比累积百分比有效学校拨款7342.742.742.7社会赞助3922.822.865.5收取会费4928.728.794.2社会捐赠52.92.997.1其他52.92.9100.0合计171100.0100.07、您所在的学生社团成员的招募方式主要是什么:(可多选)①学生个人自由报名②某个机构组织学生加入③社团内部成员推荐④其它:(请注明)您所在的学生社团成员的招募方式主要是什么频率百分比有效百分比累积百分比有效学生个人自由报名10762.662.662.6某个机构组织学生加入3419.919.982.5社团内部成员推荐2715.815.898.2其他31.81.8100.0合计171100.0100.08、您所在的社团对社员激励措施是什么。(可多选)①物质奖励②荣誉奖励③提拔晋升④其他:(请注明)您所在的社团对社员激励措施是什么频率百分比有效百分比累积百分比有效物质奖励3419.919.919.9荣誉奖励7946.246.266.1提拔晋升4928.728.794.7其他95.35.3100.0合计171100.0100.09、您所在的学生社团内部的日常组织结构最主要的形式是。①二级制:负责人—成员②三级制:负责人—各部门(小组)—成员③四级制:理事会—负责人—各部门(小组)—成员④其它(请注明)您所在的学生社团内部的日常组织结构最主要的形式是频率百分比有效百分比累积百分比有效二级制:负责人—成员1911.111.111.1三级制:负责人—各部门(小组)—成员4928.728.739.8四级制:理事会—负责人—各部门(小组)—成员10259.659.699.4其他1.6.6100.0合计171100.0100.010、您所在的学生社团内部规章制度建设大致是怎么样的:①都比较完善②大多数比较完善③部分比较完善④少数比较完善⑤没有完善的您所在的学生社团内部规章制度建设大致是怎么样的频率百分比有效百分比累积百分比有效都比较完善5431.631.631.6大多数比较完善5532.232.263.7部分比较完善4828.128.191.8少数比较完善42.32.394.2没有完善的105.85.8100.0合计171100.0100.011、您所在的社团活动与学习的关系是:①社团活动占用的时间太多,影响学习②社团活动占用时间虽多,但不影响学习③社团活动能有效促进学习④社团活动占用时间不多,也不影响学习您所在的社团活动与学习的关系是频率百分比有效百分比累积百分比有效社团活动占用的时间太多,影响学习2212.912.912.9社团活动占用时间虽多,但不影响学习7242.142.155.0社团活动能有效促进学习4928.728.783.6社团活动占用时间不多,也不影响学习2816.416.4100.0合计171100.0100.012、您认为学生社团自身建设上存在的问题主要有:(可多选)①规章制度不完善②日常管理薄弱③经费不足④凝聚力不够⑤社团内部组织机构混乱⑥会员管理过于松散⑦其他:(请注明)您认为学生社团自身建设上存在的问题主要有频率百分比有效百分比累积百分比有效规章制度不完善3017.517.517.5日常管理薄弱3218.718.736.3经费不足5331.031.067.3凝聚力不够2715.815.883.0社团内部组织机构混乱84.74.787.7会员管理过于松散169.49.497.1其他42.32.399.4会员积极1.6.6100.0合计171100.0100.013、您认为影响社团发展的外部环境和条件方面主要有:(可多选)①学校党政领导对学生社团不够重视②有关的政策法规不健全、不规范③没有足够的影响力④社团之间竞争太激烈⑤其它:(请注明)您认为影响社团发展的外部环境和条件方面主要有频率百分比有效百分比累积百分比有效学校党政领导对学生社团不够重视5029.229.229.2有关的政策法规不健全、不规范5230.430.459.6没有足够的影响力5230.430.490.1社团之间竞争太激烈127.07.097.1其他52.92.9100.0合计171100.0100.014、您认为您所在的社团指导教师和指导单位对学生社团的指导,最大的问题是:①缺乏制度保障,社团指导老师和指导单位付出没有回报,没有积极性②学生没有积极主动地邀请指导教师和指导单位的帮助③社团指导老师和指导单位自身资源有限,不能为学生社团提供太大的帮助④其它:(请注明)您认为您所在的社团指导教师和指导单位对学生社团的指导,最大的问题是频率百分比有效百分比累积百分比有效缺乏制度保障,社团指导老师和指导单位付出没有回报,没有积极性4526.326.326.3学生没有积极主动地邀请指导教师和指导单位的帮助6236.336.362.6社团指导老师和指导单位自身资源有限,不能为学生社团提供太大的帮助5833.933.996.5其他52.92.999.4与指导老1.6.6100.0合计171100.0100.015、您认为学生社团管理体制上存在的问题主要有:①社团级别划分过细,造成社团活动受限制②活动审批太过繁琐③数量多,难以管理④管理多,扶持少⑤其它:(请注明)您认为学生社团管理体制上存在的问题主要有频率百分比有效百分比累积百分比有效社团级别划分过细,造成社团活动受限制4124.024.024.0活动审批太过繁琐4727.527.551.5数量多,难以管理4425.725.777.2管理多,扶持少3520.520.597.7421.6.698.2其他31.81.8100.0合计171100.0100.016、您所在的学生社团开展活动中遇到的问题主要有:①学生参与程度不高②经费不足③活动流于形式④时间难以协调⑤场地没有保障⑥指导老师、指导单位指导力度不够⑦其它:(请注明)您所在的学生社团开展活动中遇到的问题主要有频率百分比有效百分比累积百分比有效学生参与程度不高4023.423.423.4经费不足3319.319.342.7活动流于形式4425.725.768.4时间难以协调2917.017.085.4场地没有保障84.74.790.1指导老师、指导单位指导力度不够148.28.298.2其他31.81.8100.0合计171100.0100.017、学生社团在持续发展方面存在的问题主要有:①内部缺乏活力②经费不足③活动内容形式难以创新④成员流动性太大⑤其它:(请注明)学生社团在持续发展方面存在的问题主要有频率百分比有效百分比累积百分比有效内部缺乏活力5833.933.933.9经费不足4526.326.360.2活动内容形式难以创新4727.527.587.7成员流动性太大2011.711.799.4其他1.6.6100.0合计171100.0100.018、您认为对社团的主要负责人工作作风应怎么监督:①社团管理中心成立专门的监督部②开辟专门的热线和邮箱③定期性的开展检查工作④其它:(请注明)您认为对社团的主要负责人工作作风应怎么监督频率百分比有效百分比累积百分比有效社团管理中心成立专门的监督部3721.621.621.6开辟专门的热线和邮箱7141.541.563.2定期性的开展检查工作6135.735.798.8其他1.6.699.4经常沟通1.6.6100.0合计171100.0100.019、您觉的一个社团怎样才算有吸引力:①联系实际,关注焦点②活跃学生的大学生活③培养学生的各种能力④引领时尚潮流您觉的一个社团怎样才算有吸引力频率百分比有效百分比累积百分比有效联系实际,关注焦点4526.326.326.3活跃学生的大学生活3922.822.849.1培养学生的各种能力6538.038.087.1引领时尚潮流2212.912.9100.0合计171100.0100.020、您所在的社团是否有和校外的企业合作:①没有,只是在校内偶尔有与其他社团的合作②只是找校内的小商铺合作③偶尔有与校外的合作,但都是学校之间的合作④经常与校外的企业合作大型活动⑤不太了解⑥其它:(请注明)您所在的社团是否有和校外的企业合作频率百分比有效百分比累积百分比有效没有,只是在校内偶尔有与其他社团的合作3419.919.919.9只是找校内的小商铺合作1911.111.131.0偶尔有与校外的合作,但都是学校之间的合作5934.534.565.5经常与校外的企业合作大型活动4023.423.488.9不太了解1810.510.599.4偶尔与企1.6.6100.0合计171100.0100.021、高校社团与校外企业合作的形式您希望是:①校外企业赞助活动②校外企业提供参观学习机会③校外企业高层到校开展讲座④社团搭建平台,与企业开展实践活动⑤其它:(请注明)高校社团与校外企业合作的形式您希望是频率百分比有效百分比累积百分比有效校外企业赞助活动4124.024.024.0校外企业提供参观学习机会4727.527.551.5校外企业高层到校开展讲座4224.624.676.0社团搭建平台,与企业开展实践活动4023.423.499.4其他1.6.6100.0合计171100.0100.022、您认为社团发展的关键因素是:①健全内部制度,加强管理②提高活动的质量,凝聚人心③提高社团负责人管理水平④加强指导部门指导⑤实施“走出去”的战略,多与社会联系,多向别人学习⑥其他:(请注明)您认为社团发展的关键因素是频率百分比有效百分比累积百分比有效健全内部制度,加强管理2816.416.416.4提高活动的质量,凝聚人心3621.121.137.4提高社团负责人管理水平3922.822.860.2加强指导部门指导169.49.469.6实施“走出去”的战略,多与社会联系,多向别人学习5230.430.4100.0合计171100.0100.023、您对您社团存在的问题和今后开展活动有什么想法与建议?分析:在调查问卷中反映出各大社团在凝聚力方面存在较大的问题,提出的建议主要有开展有意义的活动、加强管理制度、提高成员的参与度、走出校园与社会环境有一定的交流、多培训技能,多联系实际等等。24、在您的理想中,社团文化和社团管理是什么样子的?分析:在调查中,理想中的社团大致执行力强,管理严格、像家庭一样,有爱心、守时守点,有较好的制度、分工明确,社员乐于奉献、社员和睦相处,凝聚力很强等。七、调查总结:本次问卷调查对在宁高校社团运作情况有了一定的了解,从中我们可看到了这些社团的运作目的、宗旨或者社团的结构,运作过程中遇到的问题等,从所有的数据分析来看:首先,我们从在宁的8所高校抽取了11个社团,所以分析结果具有一定的代表性,社团性质主要有理论学习类、学术科技类、社会实践类、文娱体育类、就业创业类、网络(虚拟)社团、公益服务类等。社团开展的目的和宗旨从结果分析来看主要是为了增进社员的感情,提高团队的协作力度和丰富大学生活,开拓眼界;所在高校社团比较活跃的主要是规模适中的结构给社员的感觉是合理的。结果分析中还可以了解到所在高校社团的经费来自于学校的拨款,学生参与社团比较自由没有繁琐的步骤主要是学生自主报名,当社团有给予社员的奖励时主要是荣誉奖励,例如:评定工作之星,优秀干事等。从调查中看到如果一个社团要能发展的很好或者经久不衰最主要的社团活动占用时间不要太多,不能影响学生们学习,具有一定的规章制度。在本次问卷调查中反映社团最大的问题是有关政策法规不健全,不规范也没有一定的影响力,学生没有积极主动地邀请指导老师和指导单位的帮助,社团指导老师和指导单位自身资源有限,不能为学生社团提供太大的帮助。而且举办活动,社员在申请时审批过于繁琐,活动整体给社员感觉过于形式,内部缺乏活力。从问卷中得到解决这些问题的方法有开辟专门的热线和邮箱并且培养学生的各种能力。在社团以后的发展过程中要常于校外合作,例如参观企业、企业高管来学校举办讲座。校外赞助社团活动等等。从这份问卷调查分析结果来看,一个社团发展的关键因素,除了要实施“走出去”的战略,多与社会联系,多向别人学习;也要提高社团负责人的管理水平,提高活动的质量,凝聚人心。八、问卷样板:在宁高校社团发展情况问卷调查亲爱的同学您好:我们是南京中医药大学经贸管理学院就业创业发展协会学术研究的成员,我们正在进行针对在宁大学社团运作现状的调研。希望您能从百忙中抽出几分钟的时间来完成以下问卷,你的意见与建议对在宁高校社团的发展和校园文化的丰富有着重要的促进作用。非常感谢你的配合,对于你的个人信息我们会予以保密。填写说明:请在你认为最符合的一个选项上面打个“√”,或者请在横线上填上您对这题的看法与意见。南京中医药大学经贸管理学院就业创业发展协会您所在的学校和社团的名称是:2、您所在的社团的类型属于:①理论学习类②学术科技类③社会实践类④文娱体育类⑤就业创业类⑥网络(虚拟)社团⑦公益服务类⑧其他类型社团:(请注明)3、您所在社团开展活动的目的或宗旨是什么:(可多选)①响应学校的要求②增进社员感情,提高团队协作力度③丰富大学生活,开拓眼界④锻炼实践能力,提高职业技能⑤其它(请注明)4、您所在的活动是否接近您们社团的宗旨:①毫不相关②不怎么接近③比较接近④很贴近宗旨5、您认为您所在学生社团的规模如何:①规模大②规模适中③规模小

④不了解6、您所在的社团结构怎么样,如果您认为不合理,那么主要表现在哪些方面:①结构合理②结构不合理③主要表现:(请注明)7、您所在的学生社团的活动经费主要来源是。(可多选)①学校拨款②社会赞助③收取会费④社会捐赠⑤其它:(请注明)8、您所在的学生社团成员的招募方式主要是什么:(可多选)①学生个人自由报名②某个机构组织学生加入③社团内部成员推荐④其它:(请注明)9、您所在的社团对社员激励措施是什么。(可多选)①物质奖励②荣誉奖励③提拔晋升④其他:(请注明)10、您所在的学生社团内部的日常组织结构最主要的形式是。①二级制:负责人—成员②三级制:负责人—各部门(小组)—成员③四级制:理事会—负责人—各部门(小组)—成员④其它(请注明)11、您所在的学生社团内部规章制度建设大致是怎么样的:①都比较完善②大多数比较完善③部分比较完善④少数比较完善⑤没有完善的12、您所在的社团活动与学习的关系是:①社团活动占用的时间太多,影响学习②社团活动占用时间虽多,但不影响学习③社团活动能有效促进学习④社团活动占用时间不多,也不影响学习13、您认为学生社团自身建设上存在的问题主要有:(可多选)①规章制度不完善②日常管理薄弱③经费不足④凝聚力不够⑤社团内部组织机构混乱⑥会员管理过于松散⑦其他:(请注明)14、您认为影响社团发展的外部环境和条件方面主要有:(可多选)①学校党政领导对学生社团不够重视②有关的政策法规不健全、不规范③没有足够的影响力④社团之间竞争太激烈⑤其它:(请注明)15、您认为您所在的社团指导教师和指导单位对学生社团的指导,最大的问题是:①缺乏制度保障,社团指导老师和指导单位付出没有回报,没有积极性②学生没有积极主动地邀请指导教师和指导单位的帮助③社团指导老师和指导单位自身资源有限,不能为学生社团提供太大的帮助④其它:(请注明)16、您认为学生社团管理体制上存在的问题主要有:①社团级别划分过细,造成社团活动受限制②活动审批太过繁琐③数量多,难以管理④管理多,扶持少⑤其它:(请注明)17、您所在的学生社团开展活动中遇到的问题主要有:①学生参与程度不高②经费不足③活动流于形式④时间难以协调⑤场地没有保障⑥指导老师、指导单位指导力度不够⑦其它:(请注明)18、学生社团在持续发展方面存在的问题主要有:①内部缺乏活力②经费不足③活动内容形式难以创新④成员流动性太大⑤其它:(请注明)19、您认为对社团的主要负责人工作作风应怎么监督:①社团管理中心成立专门的监督部②开辟专门的热线和邮箱③定期性的开展检查工作④其它:(请注明)20、您觉的一个社团怎样才算有吸引力:①联系实际,关注焦点②活跃学生的大学生活③培养学生的各种能力④引领时尚潮流21、您所在的社团是否有和校外的企业合作:①没有,只是在校内偶尔有与其他社团的合作②只是找校内的小商铺合作③偶尔有与校外的合作,但都是学校之间的合作④经常与校外的企业合作大型活动⑤不太了解⑥其它:(请注明)22、高校社团与校外企业合作的形式您希望是:①校外企业赞助活动②校外企业提供参观学习机会③校外企业高层到校开展讲座④社团搭建平台,与企业开展实践活动⑤其它:(请注明)23、您认为社团发展的关键因素是:①健全内部制度,加强管理②提高活动的质量,凝聚人心③提高社团负责人管理水平④加强指导部门指导⑤实施“走出去”的战略,多与社会联系,多向别人学习⑥其他:(请注明)24、您对您社团存在的问题和今后开展活动有什么想法与建议?25、在您的理想中,社团文化和社团管理是什么样子的?本次调查到此结束,谢谢你,再见!附录资料:不需要的可以自行删除C语言编译器的设计与实现我们设计的编译程序涉及到编译五个阶段中的三个,即词法分析器、语法分析器和中间代码生成器。编译程序的输出结果包括词法分析后的二元式序列、变量名表、状态栈分析过程显示及四元式序列程序,整个编译程序分为三部分:(1)词法分析部分(2)语法分析处理及四元式生成部分(3)输出显示部分一.词法分析器设计由于我们规定的程序语句中涉及单词较少,故在词法分析阶段忽略了单词输入错误的检查,而将编译程序的重点放在中间代码生成阶段。词法分析器的功能是输入源程序,输出单词符号。我们规定输出的单词符号格式为如下的二元式:(单词种别,单词自身的值)#defineACC-2#definesyl_if0#definesyl_else1#definesyl_while2#definesyl_begin3#definesyl_end4#definea5#definesemicolon6#definee7#definejinghao8#defines9#defineL10#definetempsy11#defineEA12#defineEO13#defineplus14#definetimes15#definebecomes16#defineop_and17#defineop_or18#defineop_not19#definerop20#definelparent21#definerparent22#defineident23#defineintconst24函数说明读取函数readline()、readch()词法分析包含从源文件读取字符的操作,但频繁的读文件操作会影响程序执行效率,故实际上是从源程序文件”source.dat”中读取一行到输入缓冲区,而词法分析过程中每次读取一个字符时则是通过执行readch()从输入缓冲区获得的;若缓冲区已被读空,则再执行readline()从source.dat中读取下一行至输入缓冲区。扫描函数scan()扫描函数scan()的功能是滤除多余空格并对主要单词进行分析处理,将分析得到的二元式存入二元式结果缓冲区。变量处理find()变量处理中首先把以字母开头的字母数字串存到spelling[]数组中,然后进行识别。识别过程是先让它与保留关键字表中的所有关键字进行匹配,若获得成功则说明它为保留关键字,即将其内码值写入二元式结果缓冲区;否则说明其为变量,这时让它与变量名表中的变量进行匹配(变量匹配函数find()),如果成功,则说明该变量已存在并在二元式结果缓冲区中标记为此变量(值填为该变量在变量名表中的位置),否则将该变量登记到变量名表中,再将这个新变量存入二元式缓存数组中。数字识别number()数字识别将识别出的数字填入二元式结果缓存数组。显示函数显示函数的功能在屏幕上输出词法分析的结果(即二元式序列程序),同时给出二元式个数及源程序行数统计。二.语法分析器设计语法分析器的核心是三张SLR分析表以及针对这三张SLR分析表进行语义加工的语义动作。编译程序中语法分析处理及四元式生成部分主要是以二元式作为输入,并通过SLR分析表对语法分析处理过程进行控制,使四元式翻译的工作有条不紊的进行,同时识别语法分析中的语法错误。在处理if和while语句时,需要进行真值或假值的拉链和返填工作,以便转移目标的正确填入。1.控制语句的SLR分析表1设计过程如下:将扩展文法G’S’S1)SifeSelseS2)SwhileeS3)S{L}4)Sa;5)LS6)LSL用∈_CLOSURE方法构造LR(0)项目规范簇为:I0:S’·SS·ifeSelseSS·whileeS

S·{L}S·a;I1:S’S·I2:Sif·eSelseSI3:Swhile·eSI4:S{·L}L·SL·SLS·ifeSelseSS·whileeS

S·{L}S·a;I5:Sa·;I6:Sife·SelseSS·ifeSelseSS·whileeS

S·{L}S·a;I7:Swhilee·SS·ifeSelseSS·whileeS

S·{L}S·a;I8:S{L·}I9:LS·LS·LL·SLL·SS·ifeSelseSS·whileeS

S·{L}S·a;I10:Sa;·I11:SifeS·elseSI12:SwhileeS·I13:S{L}·I14:SSL·I15:SifeSelseSS·ifeSelseSS·whileeS

S·{L}S·a;I16:SifeSelseS·构造文法G’中非终结符的FOLLOW集如下:FOLLOW(S’)={#}SifeSelseS得FOLLOW(S)={else}S{L}得FOLLOW(L)={}}3)S’S得FOLLOW(S)={else,#}LS因为FIRST(S)={{},所以FOLLOW(S)={else,#,{}在LR(0)项目规范簇中,只有I9有“移进――归约”冲突,LS·LS·L因为FOLLOW(L)∩FIRST(L)=∮所以可以用SLR方法解决以上冲突,最后我们得到的SLR分析表如下:ACTIONGOTOifElsewhile{}a;e#SL0S2S3S4S511ACC2S63S74S2S3S4S5985S106S2S3S4S5117S2S3S4S5128S139S2S3S4R5S591410R4R4R4111512R2R2R213R3R3R314R615S2S3S4S51616R1R1R1staticintaction[20][11]=/*0*/{{2,-1,3,4,-1,5,-1,-1,-1,1,-1},/*1*/{-1,-1,-1,-1,-1,-1,-1,-1,ACC,-1,-1},/*2*/{-1,-1,-1,-1,-1,-1,-1,6,-1,-1,-1},/*3*/{-1,-1,-1,-1,-1,-1,-1,7,-1,-1,-1},/*4*/{2,-1,3,4,-1,5,-1,-1,-1,9,8},/*5*/{-1,-1,-1,-1,-1,-1,10,-1,-1,-1,-1},/*6*/{2,-1,3,4,-1,5,-1,-1,-1,11,-1},/*7*/{2,-1,3,4,-1,5,-1,-1,-1,12,-1},/*8*/{-1,-1,-1,-1,13,-1,-1,-1,-1,-1,-1},/*9*/{2,-1,3,4,105,5,-1,-1,-1,9,14},/*10*/{-1,104,-1,-1,104,-1,-1,-1,104,-1,-1},/*11*/{-1,15,-1,-1,-1,-1,-1,-1,-1,-1,-1},/*12*/{-1,102,-1,-1,102,-1,-1,-1,102,-1,-1},/*13*/{-1,103,-1,-1,103,-1,-1,-1,103,-1,-1},/*14*/{-1,-1,-1,-1,106,-1,-1,-1,-1,-1,-1},/*15*/{2,-1,3,4,-1,5,-1,-1,-1,16,-1},/*16*/{-1,101,-1,-1,101,-1,-1,-1,101,-1,-1}};其中,前9列为action值,后2列为goto值;0~16表示17个移进状态(即Si);-1表示出错;ACC表示分析成功;而100~106对应7个归约产生式:S’SSifeSelseSSwhileeSS{L}Sa;LSLSL2.算术表达式的LR分析表2设计如下:S’EEE+EEE*EE(E)Ei(过程略)ACTIONGOTOI+*()#E0S3S211S4S5ACC2S3S263R4R4R4R44S3S275S3S286S4S5S97R1R5R1R18R2R2R2R29R3R3R3R3staticintaction1[10][7]=/*0*/{{3,-1,-1,2,-1,-1,1},/*1*/{-1,4,5,-1,-1,ACC,-1},/*2*/{3,-1,-1,2,-1,-1,6},/*3*/{-1,104,104,-1,104,104,-1},/*4*/{3,-1,-1,2,-1,-1,7},/*5*/{3,-1,-1,2,-1,-1,8},/*6*/{-1,4,5,-1,9,-1,-1},/*7*/{-1,101,5,-1,101,101,-1},/*8*/{-1,102,102,-1,102,102,-1},/*9*/{-1,103,103,-1,103,103,-1}};3.布尔表达式的SLR分析表3设计如下:(过程略)S’BBiBiropiB(B)B!BAB&&BABOB||BOBACTIONGOTOiRop()!&&||#BAO0S1S4S513781S2R1R1R1R12S33R2R2R2R24S1S4S511785S1S4S56786R4S9S10R47S1S4S514788S1S4S515789R5R5R510R7R7R711S12S9S1012R3R3R3R313S9S10ACC14R6S9S10R615R8S9S10R8staticintaction2[16][11]=/*0*/{{1,-1,4,-1,5,-1,-1,-1,13,7,8},/*1*/{1,2,-1,101,-1,101,101,101,-1,-1,-1},/*2*/{3,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},/*3*/{-1,-1,-1,102,-1,102,102,102,-1,-1,-1},/*4*/{1,-1,4,-1,5,-1,-1,-1,11,7,8},/*5*/{1,-1,4,-1,5,-1,-1,-1,6,7,8},/*6*/{-1,-1,-1,104,-1,9,10,104,-1,-1,-1},/*7*/{1,-1,4,-1,5,-1,-1,-1,14,7,8},/*8*/{1,-1,4,-1,5,-1,-1,-1,15,7,8},/*9*/{105,-1,105,-1,105,-1,-1,-1,-1,-1,-1},/*10*/{107,-1,107,-1,107,-1,-1,-1,-1,-1,-1},/*11*/{-1,-1,-1,12,-1,9,10,-1,-1,-1,-1},/*12*/{-1,-1,-1,103,-1,103,103,103,-1,-1,-1},/*13*/{-1,-1,-1,-1,-1,9,10,ACC,-1,-1,-1},/*14*/{-1,-1,-1,106,-1,9,10,106,-1,-1,-1},/*15*/{-1,-1,-1,108,-1,9,10,108,-1,-1,-1}};LR分析表控制语义加工的实现:当扫描LR分析表的当前状态为归约状态时,则在调用与该状态对应的产生式进行归约的同时,调用相应的语义子程序进行有关的翻译工作。现在对LR分析器的分析栈加以扩充,使得每个文法符号之后都跟着它的语义值。为了清晰起见,我们把这个栈的每一项看成由三部分组成:状态state,文法符号syl和语义值val。编译程序实现算术表达式、布尔表达式及程序语句的语义加工时,都是按这种状态栈加工方式进行的。例如:(5+3)*6的分析过程序号STATEValsylinput10-#(5+3)*6#202--#(5+3)*6#3023---#(5+3)*6#4026--5#(E+3)*6#50264--5-#(E+3)*6#602643--5--#(E+3)*6#702647--5-3#(E+E)*6#8026--8#(E)*6#90269--8-#(E)*6#1001-8#E*6#11015-8-#E**6#120153-8--#E*6#130158-8-6#E*E#1401-48#E#15ACC在分析过程中,第(3)步操作后的状态栈为023,根据栈顶状态“3”和现行输入符号“+”(input栏字符串的第一个字符)查分析表ACTION[3,+]=R4,即按第(4)个产生式E→n来进行归约;由于产生式右部仅含一项,故去掉状态栈栈顶“3”;此时2变为新的栈顶状态,再查(2,E)的下一状态s′:GOTO[2,E]=6,即将状态6和文法符号E压栈,最后得到第(4)步的状态。第(7)步操作后也是如此,当前状态栈为02647,根据栈顶状态7和现行输入符号“)”查分析表ACTION[7,)]=R1,即按第(1)个产生式E→E1+E2进行归约;由于产生式右部有三项,故去掉状态栈栈顶的647三项;此时2变为新的栈顶状态,再查(2,E)的下一状态s′:GOTO[2,E]=6,即将状态6和文法符号E压栈,最后得到第(8)步的状态。三.中间代码生成器设计:1.布尔表达式布尔表达式在程序语言中有两个基本作用:一是用作控制语句(如if-else或while语句)的条件式;二是用于逻辑演算,计算逻辑值。布尔表达式是由布尔算符(&&、||、!)作用于布尔变量(或常数)或关系表达式而形成的。关系表达式的形式是E1ropE2,其中rop是关系符(如<、≤、=、≠、>或≥),E1和E2是算术式。在这里,我们只考虑前面给定文法所产生的布尔表达式:B→B&&B|B||B|!B|(B)|iropi|i遵照我们的约定,布尔算符的优先顺序(从高到低)为:!、&&、||,并假定&&和||都服从左结合规则。所有关系符的优先级都是相同的,而且高于任何布尔算符,低于任何算术算符,关系算符不得结合。表达式的真、假出口的确定:考虑表达式B1||B2,若B1为真,则立即知道B也为真;因此,B1的真出口也就是整个B的真出口。若B1?为假,则B2必须被计值,B2的第一个四元式就是B1的假出口。当然,B2的真、假出口也就是整个B的真、假出口。类似的考虑适用于对B1&&B2的翻译,我们将B1||B2和B1&&B2的翻译用下图表示,在自下而上的分析过程中,一个布尔式的真假出口往往不能在产生四元式的同时就填上。我们只好把这种未完成的四元式的地址(编号)作为B的语义值暂存起来,待到整个表达式的四元式产生完毕之后再来回填这个未填入的转移目标。2.条件语句对条件语句ifeS1elseS2中的布尔表达式e,其作用仅在于控制对S1和S2的选择。因此,作为转移条件的布尔式e,我们可以赋予它两种“出口”:一是“真”出T口,出向S1;一是“假”出口,出向S2。于是,e的代码F条件语句可以翻译成如图的一般形式。非终结符e具有两项语义值e_TC和e_FC,它们分别指出了尚待回填真、S2的代码假出口的四元式串。e的“真”出口只有在往回扫描到if时才能知道,而它图3-2条件语句的代码结构的“假”出口则需到处理过S1并且到达else才能明确。这就是说,必须把e_FC的值传下去,以便到达相应的else时才进行回填。另外,当S1语句执行完时意味着整个if-else语句也已执行完毕;因此,在S1的编码之后应产生一条无条件转移指令。这条转移指令将导致程序控制离开整个if-else语句。但是,在完成S2的翻译之前,这条无条件转移指令的转移目标是不知道的。甚至,在翻译完S2之后,这条转移指令的转移目标仍无法确定。这种情形是由于语句的嵌套性所引起的。例如下面的

语句:ife1ife2S1elseS2elseS3在S1的代码之后的那条无条件转移指令不仅应跨越S2而且应跨越S3。这也就是说,转移目标的确定和语句所处的环境密切相关。3.条件循环语句条件循环语句whileeS通常被翻译成图的代码结构。布尔式e的“真”出口出向S代码段的第一个四元式。紧接S代码段之后应产生一条转向测试e的无条件转移指令。e的“假”出口将导致程序控制离开整个while语句。e的“假”出口目标即使在整个while语句翻译完之后也未必明确。例如:ife1whilee2S1elseS2这种情况仍是由于语句的嵌套性引起的。所以,我们只好把它作为语句的语义值S·CHAIN暂留下来,以便在处理外层语句时再伺机回填。语法翻译实现方法将上述语法翻译付诸实现过程中,我们仅保留了算术表达式和布尔表达式翻译的文法和语义动作;面对程序语句的翻译,由于改造后含有较多的非终结符且语义动作又相对简单,故仍恢复为改造之前的程序语句文法。由于总体上构造一个SLR分析表来实现语法分析及语义加工将使得所构造的SLR分析表过大,所以将其分为下面三部分处理:对算术表达式单独处理,即为算术表达式构造一个SLR分析表,并将赋值语句A=E与算术表达式归为一类处理,处理之后的赋值语句仅看作为程序语句文法中的一个终结符a。对布尔表达式也单独处理,并为其构造一个SLR分析表,经SLR分析表处理后的布尔表达式看作为程序语句文法中的一个终结符e。程序语句文法此时变为:SifeSelseS|whileeS|{L}|a;LSL|S此时为程序语句构造相应的SLR分析表就简单多了。前面的程序语句文法中所添加的非终结符是为了能及时回填有关四元式转移目标而引入的,在取消了这些非终结符后又如何解决及时回填转移目标的问题呢?我们采取的解决方法是增加两个数组labelmark和labeltemp来分别记录语句嵌套中每一层布尔表达式(如果有的话)e的首地址以及每一层else(如果有的话)之前的四元式地址(即无条件转出此层if语句的四元式)。也即,对程序语句的翻译来说:在处理完布尔表达式e后,回填if或while语句的真值链;在归约完每一个语句S之后检查符号栈,看在S之前的文法符号是否if或

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论