八、嵌入式程序设计与分析.ppt_第1页
八、嵌入式程序设计与分析.ppt_第2页
八、嵌入式程序设计与分析.ppt_第3页
八、嵌入式程序设计与分析.ppt_第4页
八、嵌入式程序设计与分析.ppt_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

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

文档简介

嵌入式系统与开发讲解第八讲程序设计与分析,本节包括、1、3、2、程序编译技术、程序优化技术、Linux初步、嵌入式软件要求、功能要求:满足系统要求的功能。 时限性要求:满足系统的实时性要求。 内存要求:满足系统内存的总要求。 功耗要求:满足系统的功耗要求。嵌入式编程语言的选择、高级语言: c、c、JAVA、Ada等。 汇编语言:与硬件体系结构有关。 程序的编译执行过程、嵌入式c编译环境、嵌入式c交叉编译环境一般包括汇编器、链接器、定位器。 汇编器的任务是将符号级汇编语言翻译成称为目标代码的指令级表示。 链接器用于将不同的模块(编译或装配的文件)链接到目标文件。 定位器允许您将代码和数据放置在目标处理器的指定内存区域中。 汇编程序和汇编完成从汇编语言到二进制代码的转换。 标记处理方法:首先扫描代码以确定每个标记的地址。 第二次,用第一次的标记值汇编指令,生成二进制代码。符号表、ADDr0、r1、r 2标签ADDr0、r4、r5CMPr0、r 3标签2 subr 5、r6、r7assemblycode、标签10 x 8标签20 x 10 symbol table、编译程序、ARM开发环境中包含的C/C可编译结合翻译和优化两个环节的翻译将高级语言翻译成低级指令形式(或汇编语言形式)。 优化创建更好的指令次序同时总体上考虑程序效率。 编译时,高级语言分为句子和表达式。 编译技术的句子翻译,a*b 5*(c-d ),快速,DFG,*,a,b,c,d,5,2,3,4,1,算术代码翻译,ADRr4,aMOVr1,r4ADRr4,bMOVr2,r4MULr3 ,a,b,c,d,5,ADRr4,cMOVr1,r4ADRr4,dMOVr5,r4SUBr6,r4,r5,MULr7,r6,#5,ADDr8,r7,r3,代码,控制代码生成,if(a b0)x=5; elsex=7; a b0,x=5,x=7,3,2,1,控制码翻译,ADRr5,aLDRr1,r5ADRr5,bLDRr2,bADDr3,r1,r 2标签3,a b0,x=5,x=7,LDRr3,5adrr5,xSTRr3 label3LDRr3、#7ADRr5、xSTRr3、r5stmtent .进程链接一般是指没有返回值的结构。 代码:调用并请求返回。 传递参数和结果。 参数和结果在堆栈中传递。 具有多个参数的过程可以使用寄存器。 处理堆栈、proc1、growth、proc1(inta)proc2(5);proc2、SPstackpointer、FPframepointer、编译技术ARM过程调用标准(APCS )、APCS、ARM过程调用标准(armproceduralstandard )是精简创建例程的机制最显着的一点是没有明确的限制这些例行程序来自哪里。 c,可以从Pascal编译,也可以用汇编语言编写。 APCS是: r0-R3 ppasparameterersintoprocessedure.extraparameterersareputonstackframe.r0 holds return value.R4-r7 holdregistervalues r13isstackpointer .编译技术数据结构、编译器必须将对相关数据结构的参考翻译成对原始存储器的参考,通常在执行时需要进行地址计算。 一维阵列二维阵列结构,编译技术公式简化,1.a*b*a*(bc)2.for(I=0; i8 1; i )for(i=0; i9; I )、编译技术死码清除,死码是决不执行的代码,编译时识别这些代码,从程序中清除

温馨提示

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

评论

0/150

提交评论