1 / 56
文档名称:

第6讲arm汇编伪指令与伪操作.ppt

格式:ppt   大小:302KB   页数:56页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第6讲arm汇编伪指令与伪操作.ppt

上传人:﹎多多Dad 2020/3/24 文件大小:302 KB

下载得到文件列表

第6讲arm汇编伪指令与伪操作.ppt

文档介绍

文档介绍:第6章ARM汇编伪指令与伪操作2、伪操作:为完成汇编程序做各种准备工作,只在汇编过程中起作用,一旦汇编结束,它的作用也随之结束。3、宏指令:是一段独立的程序代码,可插在源程序中。与子程序相似,但有本质不同。1、伪指令:在汇编时将被合适的指令代替。伪操作、宏指令一般与编译器有关,常用ARM编译开发环境有2种:GNU(基于EmbestIDE环境)和ADS(ARM目前常用的编译环境有2种:1. ADS/SDT、RealViewMDK等ARM公司推出的开发工具2.  GNUARM开发工具1.      ADS/SDT、RealViewMDK等ARM公司推出的开发工具ADS由ARM公司推出,使用了CodeWarrior公司的编译器。针对ARM资源配置为用户提供了在CodeWarriorIDE集成环境下配置各种ARM开发工具的能力。以ARM为目标平台的工程创建向导,可以使用户以此为基础,快速创建ARM和Thumb工程。ARM将Keil公司收购之后,正式推出了针对ARM微控制器的开发工具RealViewMicrocontrollerDevelopmentKit(简称RealViewMDK或者MDK),它将ARM开发工具RealViewDevelopmentSuite(简称RVDS)的编译器RVCT与Keil的工程管理、调试仿真工具集成在一起,是一款非常强大的ARM微控制器开发工具。2.  GNUARM开发工具GNU是“GNU‘sNotUnix”的递归缩写。在1983年9月27日由RichardStallman公开发起GNU计划,它的目标是创建一套完全自由的操作系统。GNU格式ARM汇编语言程序主要是面对在ARM平台上移植嵌入式Linux操作系统,GNU组织开发的基于ARM平台的编译工具有主要由GNU的汇编器as,和连接器ld组成。,它不在处理器运行期间由机器执行,只是在汇编时将被合适的机器指令代替成ARM或Thumb指令,从而实现真正的指令操作。ARM伪指令有四条,分别为ADR伪指令、ADRL伪指令、LDR伪指令、NOP伪指令。ARM伪指令——大范围的地址读取LDR伪指令用于加载32位的立即数或一个地址值到指定寄存器。在汇编编译源程序时,LDR伪指令被编译器替换成一条合适的指令。若加载的常数未超出MOV或MVN的范围,则使用MOV或MVN指令代替该LDR伪指令,否则汇编器将常量放入文字池,并使用一条程序相对偏移的LDR指令从文字池读出常量。LDR{cond}register,=expr|label_exprLDR伪指令格式指令执行的条件码加载的目标寄存器基于PC的地址表达式或外部表达式注意:;,伪指令的LDR的参数有“=”号。ARM伪指令——大范围的地址读取LDR伪指令用于加载32位的立即数或一个地址值到指定寄存器。在汇编编译源程序时,LDR伪指令被编译器替换成一条合适的指令。若加载的常数未超出MOV或MVN的范围,则使用MOV或MVN指令代替该LDR伪指令,否则汇编器将常量放入文字池,并使用一条程序相对偏移的LDR指令从文字池读出常量。应用示例(加载常量):LDRR2,=0xFF0;MOVR2,#0xFF0LDRR0,=0xFF000000;MOVR0,#0xFF000000LDRR1,=0xFFFFFFFE;MVNR1,#0x1ARM伪指令——大范围的地址读取LDR伪指令用于加载32位的立即数或一个地址值到指定寄存器。在汇编编译源程序时,LDR伪指令被编译器替换成一条合适的指令。若加载的常数未超出MOV或MVN的范围,则使用MOV或MVN指令代替该LDR伪指令,否则汇编器将常量放入文字池,并使用一条程序相对偏移的LDR指令从文字池读出常量。应用示例(加载地址):...LDRR1,=InitStack...InitStackMOVR0,LR...使用伪指令将程序标号InitStack的地址存入R1ARM伪指令——大范围的地址读取LDR伪指令用于加载32位的立即数或一个地址值到指定寄存器。在汇编编译源程序时,LDR伪指令被编译器替换成一条合适的指令。若加载的常数未超出MOV或MVN的范围,则使用MOV或MVN指令代替该LDR伪指令,否则汇编器将常量放入文字池,并使用一条程序相对偏移的LDR指令从文字池读出常量。应用示例(加载地址):编译后的反汇编代码:...LDRR1,=InitStack...InitStackMOVR0,LR......0x60LDRR1,0xb4...0x64MOVR0,LR...0xb4DCD0x64使用伪指令将程序标号InitStack的地址存入R1地址程序代码

最近更新

2024年师德表现自我评价(必备) 17页

2024年师德师风考核表自我评价(集合7篇) 13页

基于情境体验的移动地图设计研究的开题报告 2页

2024年市场部年度工作总结 56页

2024年市场调研报告模板15篇 63页

基于差异的半监督学习中有关算法与理论研究中.. 2页

基于嵌入式的电子订货系统的研究与设计的开题.. 2页

基于局部特征的牛眼虹膜识别算法研究的开题报.. 2页

基于宏观审慎框架的我国银行业逆周期监管研究.. 2页

复合材料的耐腐蚀性提升 31页

基于多元多尺度熵的人体平衡系统研究的开题报.. 2页

基于复杂微结构的积雪微波主被动和光学模型研.. 2页

靶向癌症干细胞微环境相互作用的治疗策略 30页

基于图像的水稻病虫害分割算法研究的开题报告.. 2页

老年大肠癌致急性肠梗阻 34页

2024年工程承包合同12篇(合集) 51页

基于压力舒适性的合体布帽松量研究及其参数化.. 2页

关元穴穴位贴敷对失眠的改善 32页

基于分光还原技术的网络隔离与数据迁移系统的.. 2页

2024年工程专业的毕业实习报告(通用14篇) 52页

高中生毕业生家庭情况调查表 2页

加油卡绑定车牌号证明委托书 2页

《灰尘的旅行》四年级下册电子版 2页

最新人教部编版四年级语文下册《母鸡》精品课.. 23页

定制家具厂实木拆单员岗位职责 7页

word图文混排优秀作品展示3 1页

《北京石景山万达广场 32页

超市里面物品英语翻译大全 7页

计价格(199)1283 京价(房)字[1999]第487号 8页

第一节 正视亲子矛盾课件 PPT课件 32页