用c语言做毕业设计_第1页
用c语言做毕业设计_第2页
用c语言做毕业设计_第3页
用c语言做毕业设计_第4页
用c语言做毕业设计_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

用c语言做毕业设计【篇一:c语言编译器实现毕业设计】编译原理课程设计题目c语言编译器实现计算机科学学院计算机科学与技术专业10级计本班学号:姓名:指导教师:完成时间:2013年6月目录c语言编译器实现一、原理1、简介编译程序的工作过程一般可以分为五个阶段:词法分析、语法分析、语义分析与中间代码产生、优化、目标代码生成。每一个阶段在功能上是相对独立的,它一方面从上一个阶段获取分析的结果来进行分析,另一方面由将结果传递给下一个阶段。由编译程序的五个阶段就对应了编译系统的结构。2、单词符号及种别表示3、语法结构定义如下:程序::=main()语句块语句块::=‘{‘语句串'}'语句串::=语句{;语句};语句::=赋值语句|条件语句|循环语句赋值语句::日4=表达式条件语句::=if条件语句块循环语句::=do语句块while条件条件::=表达式关系运算符表达式表达式::=项{+项|-项}项::=因子{*因子|/因子}因子::=id|num|(表达式)关系运算符::=|=||=|==|!二、运行环境windows系统visualC++6・0三、算法设计思想1、词法分析主要算法这部分对源文件进行分析,允许/**/注释。从源文件依次读取字符,对字符进行分析,组成字符串、数字、关系符等固定含义的token符,并把它们添加到token链中,如果遇到非法字符报错并退出程序。2、语法分析主要算法这部分对token链进行分析,利用自底向上的分析方法,构建sir(1)分析表的过程是手工完成的。语法分析的同时构建语法树,移进时创建叶子,规约时创建节点。3、语义分析主要算法这部分对语法树从左到右进行遍历,节点记录了规约式的编号,遍历到节点时就进行相应处理。语义分析主要检查变量、函数是否被定义或重定义,同时产生四元式。函数一览表voidscanner();【篇二:c语言编译器设计与实现毕业论文设计】北京邮电大学毕业设计(论文)任务书第1页第2页第3页c语言编译器设计与实现摘要随着计算机的广泛应用,计算机程序设计语言也从初期的机器语言发展为汇编语言,以及现在的各种高级程序设计语言。而编译技术是计算机语言发展的支柱,也是计算机科学中发展最迅速、最成熟的一个分支,他集中体现了计算机发展的成果与精华。换为另外一种语言表示的程序。从高级语言,甚至运行与虚拟平台的高级语言,到机器语言,最终到硬件执行的物理信号,这一层层的转化,都涉及编译技术的应用。本系统采用C++为编程语言。论文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。重点的说明了系统设计的重点、设计思想、难点技术和解决方案。关键词:编译技术,编程程序,高级语言cianguagecompiierdesignandimpiementationabstractwiththewideappiicationofthecomputer,computerprogrammingianguagesaredeveiopedfromtheeariymachineianguageintoassembiyianguage,andnowavarietyofhigh-ieveiprogrammingianguage.thecompiiertechnoiogyisthebackboneofcomputerianguagedeveiopment,butaisothefastestgrowingincomputerscience,abranchofthemostmature,heepitomizestheessenceofthecomputerandthefruitsofdevelopment.thecoreideaisthesamelogicalstructureoftheprogramandideasexpressedintheconversionfromonelanguagetoanotherlanguageprogramrepresented.fromthehigh-levellanguage,andevenrunningwithhigh-levellanguagevirtualplatformtomachinelanguage,andultimatelytothehardwareimplementationofthephysicalsignal,thelayersoftransformationinvolvesapplicationofcompilertechnology.keywords:compilertechnology,programmingprocedures,high-levelprogramminglanguage【篇三:毕业设计c语言程序设计】#includereg52.h#include12864b.h#includemath.h#includeintrins.h#defineucharunsignedchar#defineuintunsignedintsbit11=p2A0;sbit12=p2A1;sbit13=p2A2;sbitr1=p2八3;sbitr2=p2A4;sbitr3=p2A5;sbit14=p2A6;sbitr4=p2A7;sbittr=p1A3;sbitec=p1A4;charcodetab1e[]={0123456789};charda[10];uints=0,time=0,f=0,a=0,j=0,k=0,1v=25,rv=25,n=0,d_t=0,d_t1=0,b=0,a1=0,ju1i=0;voidfuzhi(intm);voidstate();voidde1ay(inti){charj=0;for(;i0;i--)for(j=0;j125;j++);}voidinit(){th0=(65536-1000)/256;tl0=(65536-1000)%256;th1=0;tl1=0;ea=1;et0=1;et1=1;tr0=1;tmod=0x11;p1=p10xe7;}voidfuzhi(intm){da[0]=m/1000;da[1]=m/100%10;da[2]=m/10%10;da[3]=m%10;}voidchao(){tr=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();tr=0;while(!ec);tr1=1;while(ec);tr1=0;juli=(b*65536+(th1*256+tl1))*0.017;th1=0;b=0;tl1=0;}voidjiyu(){hanzi_disp(O,0,毕业设计智能小车);hanzi_disp(1,0,信科一班王峰作品);hanzi_disp(2,0,lv=);hanzi_disp(2,4,rv=);hanzi_disp(3,0,距离:);hanzi_disp(3,5,(cm));}voidmain(){chari=0;init();lcd_init();jiyu();while(1){chao();delay(20);fuzhi(juli);lcd_writecmd(0x9b);//写地址for(i=0;i4;i++){lcd_writedata(table[da[i]]);delay(10);}fuzhi(lv);lcd_writecmd(0x8a);//写地址for(i=0;i2;i++){lcd_writedata(table[da[i+2]]);delay(10);}fuzhi(rv);lcd_writecmd(0x8e);//写地址for(i=0;i2;i++){lcd_writedata(table[da[i+2]]);delay(10);}if(juli20){switch(p20xc0){case0x0:lv=rv=juli*2;;n=1;d_t=3;break;case0x40:lv=rv=juli*2;;n=2;d_t=3;break;case0x80:lv=rv=juli*2;;n=3;d_t=3;break;case0xc0:lv=rv=juli*2;;n=4;d_t=3;break;//default:a+=5;}}else{switch(p20xc0){case0x0:lv=40;rv=40;n=1;d_t=3;break;case0x40:lv=40;rv=40;n=2;d_t=3;break;case0x80:lv=40;rv=40;n=3;d_t=3;break;case0xc0:lv=40;rv=40;n=4;d_t=3;break;}}state();}}voidstate(){d_t1=f;while(1){switch(n){case0:l1=1;l2=1;r1=1;r2=1;break;//停case1:l1=0;l2=1;r1=0;r2=1;break;//前case2:l1=0;l2=1;r1=1;r2=1;break;//前左case3:l1=1;l2=1;r1=0;r2=1;break;//前右case4:l1=1;l2=0;r1=1;r2=0;break;//后case5:l1=1;l2=1;r1=1;r2=0;break;//后左case6:l1=1;l2=0;r1=1;r2=1;break;//后右case7:l1=0;l2=1;r1=1;r2=0;break;//右旋case8:l1=1;l2=0;r1=0;r2=1;break;//右旋}if(d_t==0)break;}}voidtime0()interrupt1{th0=(65536-1000)

温馨提示

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

最新文档

评论

0/150

提交评论