八、嵌入式程序设计与分析_第1页
八、嵌入式程序设计与分析_第2页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、八、嵌入式程序设计与分析 嵌入系式设统计实例与开发ar与m co/s-第八讲程 序计与分析设 北航空航天京高校嵌入式 电掌握研机究室1 节本要提1 序编程技译术2 程序优 技术 化3li nx初u步 2嵌入式软件的 求要 功能性要求:满意系所要求统的能功。时限要性:满求系足的实统时要性求。 存储要求器:适应统内存系总要求量 功耗要。求满:足统系耗能的要。求 入嵌式程语编言选择的 高级语言c:c、+、+javaada、等汇。编言语:硬件系体结相构关。 4 程序的编译执行程过高级编程语言编译器 汇编言语 汇器编目代标码 接器链目标机下载可执行的 进制代码二 5 嵌入式c编译环境嵌入式c叉编译环交境

2、般一都括汇包编器链、器和定接位。 器 编器的汇务是将符号级任汇编的言语译翻称为目标代成码指令 位的表示级 链。接是用器来将不的同块模编(或汇译过编的件)链接成文目 文标。 件定器位则许允将代码和据放数在目臵标理处的指定内器存空。间 6 汇程编序 汇编完汇编成言语二到进代码制的转换 。 标记理处法:方 第次一描扫码以代定每决标记个的址。地其次次第一次用中标的值记汇指令,编生产二进制码代。7 符号表add r,0r1,r2lab l1ead dr,3r,4r 5albe1 lx0 8ablle2 0x01cmp r0r3,lable2su br5 ,r,67rassemlby cdeosymolb

3、t aleb8 编 过程译高级程编言 语语分法析生成、符表和号义语分析独立机于的优化 指器令级化和优代生码成 汇代码编9 amr发开环包境含的cc+/编+译器10 编=翻译译优+化编结合了翻译译和优化两个环节 翻译是将级语言翻高为译低指级令形式或(汇语言编形)。式 优一化方产生更好面的指令顺,另一序方从面体整考虑上程 效序。 率译编过程中高级,语言拆分被语成句和表式达。11 译技编语句翻术译a* b+ 5*(c-)da *b c 5 * edxrepsison+ dfg12 算 术达式的代表码译翻 a1 * b25 * 3 -c ddr r4,aa om vr,14 arrdr 4b ,mv

4、ro,r42 mlu 3r,r1r,2ad rr4c,mo rv,14radr 4,rd mov r,5r4 sbur6 r4,5r 4+mu rl7r,65 #dd ar,87rr3,df gcoed13 控代码的制产 生fi a+(b ) x 0 5;=e sle = 7x;ab0+x= 5=x 147 制控码代的翻译 da rr,a ld5r r,r5 1ar r5,db 1+b0 a=5 2x lr dr2, baddr3, 1,rr2bl elbale33 ld rr3,#5x=7 darr ,x5str r3,r 5 bsmtetnt albe3 ldr lr3,7 ad# rr5

5、,x str r3r5, sttmne t. 15. 译技编术amr程调用标准过a(cs)apcspar, 过m调用程准标a(r mpocrderu cela ltsadanrd)提 ,供了凑紧的写编例程的一种机,定义制的程可例以其他与程例 织交一在起最。著显一的点对是些这例程来自哪里没明有的限确。 制们它以编可自译 、c ps aca,也l以是用可编汇言语成写的 a。cp s义定了: 0r-r pa3s parsaetemrs nio tropcedue.re txa prrameatrsea er puton st ackf amr. re 0hold srtuenr vaul.e r4-

6、r 7ohldre gsitr eavues.l11r isf raemp ontire ,r3 is s1tcakpo nier.t 18 编 译技术据数构结编译程必需序对相关数据构结引的翻译用成原对始存储器的引 ,用通需常在要运时进行地址计算行 。 维一数 组二维组数 结构体a0,0 a,1 0a0 a1a1 0,a ,1 fie0l1dfi lde291编 技译术表达式简化.a*b1+*aca *(b+)c.2orf(i=;08+1;ii+) or(if=0i;i+9) +0 2 译技编死术代码除清 死代是指码永久会不执行的代码被在,译编时能够识别要些代这码, 并将从其程序中清除掉。 死

7、代码都是一大些试调息。信 21 编译技术循环换变 环循是重要的序程结,构常常用占量大cpu的的计时间,在编算 程需要时优化;循环绽开:循环 合并: 环循折:fo叠 (r=0i; 4i ;+i+) ai = bi * ci; for( =i0 i; 2i+)+ ai* 2 =b*2i* ci*; 2ai*21+= b*i+21* ci2*1+; orf i(0;=i n; i+)+a i =bi* 5; fo r j(=;0jn; j+) w+j =c * djj; fo (ir=0 ;in; +i )ai =bi *;5wi =c i *di ; 2 2编 技术译寄存器配分寄存器分选择配寄器存量的安排变使以所的

温馨提示

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

最新文档

评论

0/150

提交评论