版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
如何学习嵌入式之Arm学习我总结的几点经验前言R13寄存器R13对应的物理寄存器R13功能堆栈操作堆栈的汇编指令现在很多人都在学习arm嵌入式系统嵌入式开发arm核心板arm9等有关arm的知识,那么在学习过程中了解arm指令也是必然的,下面我就自己在学习arm指令中记录的关于队长方面的知识做一个简单的总结,希望对大家有所帮助。前言1、寄存器R13在arm指令中常用作堆栈指针如何学习嵌入式之R13寄存器2、对于R13寄存器来说,它对应6个不同的物理寄存器,其中的一个是用户模式与系统模式共用,另外5个物理寄存器对应于其他5种不同的运行模式。采用以下的记号来区分不同的物理寄存器:R13_其中,mode为以下几种模式之一:usr、fiq、irq、svc、abt、und。如何学习嵌入式之R13对应的物理寄存器3、寄存器R13在arm指令中常用作堆栈指针,但这只是一种习惯用法,用户也可使用其他的寄存器作为堆栈指针。而在Thumb指令集中,某些指令强制性的要求使用R13作为堆栈指针。由于处理器的每种运行模式均有自己独立的物理寄存器R13,在用户应用程序的初始化部分,一般都要初始化每种模式下的R13,使其指向该运行模式的栈空间,这样,当程序的运行进入异常模式时,可以将需要保护的寄存器放入R13所指向的堆栈,而当程序从异常模式返回时,则从对应的堆栈中恢复,采用这种方式可以保证异常发生后程序的正常执行。如何学习嵌入式之R13功能4、有四种类型的堆栈:堆栈是一种数据结构,按先进后出(FirstInLastOut,FILO)的方式工作,使用一个称作堆栈指针的专用寄存器指示当前的操作位置,堆栈指针总是指向栈顶。当堆栈指针指向最后压入堆栈的数据时,称为满堆栈(FullStack),而当堆栈指针指向下一个将要放入数据的空位置时,称为空堆栈(EmptyStack)。同时,根据堆栈的生成方式,又可以分为递增堆栈(AscendingStack)和递减堆栈(DecendingStack),当堆栈由低地址向高地址生成时,称为递增堆栈,当堆栈由高地址向低地址生成时,称为递减堆栈。这样就有四种类型的堆栈工作方式,ARM微处理器支持这四种类型的堆栈工作方式,即:◎Fulldescending满递减堆栈堆栈首部是高地址,堆栈向低地址增长。栈指针总是指向堆栈最后一个元素(最后一个元素是最后压入的数据)。ARM-Thumb过程调用标准和arm、ThumbC/C++编译器总是使用Fulldescending类型堆栈。如何学习嵌入式之堆栈◎Fullascending满递增堆栈堆栈首部是低地址,堆栈向高地址增长。栈指针总是指向堆栈最后一个元素(最后一个元素是最后压入的数据)。◎Emptydescending空递减堆栈堆栈首部是低地址,堆栈向高地址增长。栈指针总是指向下一个将要放入数据的空位置。◎Emptyascending空递增堆栈堆栈首部是高地址,堆栈向低地址增长。栈指针总是指向下一个将要放入数据的空位置。如何学习嵌入式5、操作堆栈的汇编指令堆栈类型入栈指令出栈指令FulldescendingSTMFD(STMDB)LDMFD(LDMIA)FullascendingSTMFA(STMIB)LDMFA(LDMDA)EmptydescendingSTMED(S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《暑假查漏巩固|初中历史中国近代史全单元基础梳理完整教案》
- 全钒液流电池储能电站巡视检查项目及要求、典型异常及处理、故障及处理、维护项目及要求
- 黑龙江省佳木斯市富锦市部分校2025-2026学年八年级下学期7月期末历史试卷(含答案)
- 人工智能在风控中的应用探索-第1篇
- 人工智能伦理规范-第74篇
- 2026年河南省濮阳市住房和城乡建设局人员招聘考试备考试题及答案详解
- 2026浙江台州市第一人民医院高层次卫技人才招聘19人(二)考试参考题库及答案详解
- 北京大学医学出版社面向社会招聘医学编辑2人考试备考题库及答案详解
- 2026江苏南京大学国际地球系统科学研究所博士后1人笔试参考题库及答案详解
- 人工智能在银行风控中的应用-第105篇
- 2025年中级(四级)化学检验员(化工分析)职业技能理论知识试题考试试题(含答案)
- 临床镇痛药物的应用与管理
- 铸造工安全培训课件
- 安徽省2025年公需科目三安徽农业大学测验参考答案
- 2025云南省行政执法资格考试考前模拟题(含答案)
- 【鄂尔多斯】2024年内蒙古鄂尔多斯职业学院人才引进39人笔试附带答案详解
- 2024衡阳蒸湘区中小学教师招聘考试试题及答案
- 《齐齐哈尔烤肉制作工艺与服务规范》
- DB52T 1161-2016 贵州省旅游购物场所等级划分与评定
- 2024年广东省深圳市南山区中考英语三模试卷
- 男生殖系统肿瘤案例分析阴茎癌课件
评论
0/150
提交评论