ARM论文-ARM指令集的介绍

ARM论文-ARM指令集的介绍

ID:41565570

大小:65.15 KB

页数:6页

时间:2019-08-27

ARM论文-ARM指令集的介绍_第1页
ARM论文-ARM指令集的介绍_第2页
ARM论文-ARM指令集的介绍_第3页
ARM论文-ARM指令集的介绍_第4页
ARM论文-ARM指令集的介绍_第5页
资源描述:

《ARM论文-ARM指令集的介绍》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、《ARM体系结构与编程》论文ARM指令集的介绍系别:计算机系班级:?????999J••••姓名:???ARM指令集的介绍摘要:在此论文中,简单了列出一些ARM指令的命令。包括跳转,数据处理乘法与乘加,程序状态寄存器存取,寄存器加载/存储,移位元,协处理器和和Thumb指令。最后有总结了ARM指令极中需要注意和不太容易理解的地方。关键字:Thumb指令,跳转指令,堆栈寻址,立即数寻址TheARMinstructionsetAbstract:Inthispaper,asimplelistofinstructionscommands.TheARMIncludi

2、ngjump,dataprocessingmethod,processandbystateregistersaccess,storage,loading/shiftregister,Thumbandprocessorinstructions.FinallysummarizestheARMinstructionsinaneedtopayattentionandnottooeasytounderstand・Keywords:Thumbinstruction,jumpinstruction,stackaddressing,immediatelyseveralad

3、dressing.1」ARM微处理器的指令集概述ARM指令集*跳转指令:B跳转指令。指令。BL带返回的跳转指令。BX带状态切换的跳转指令。BLX带返回和状态切换的跳转数据处理指令MOV数据传送指令SUB减法指令MVN数据取反传送指令SBC带借位减法指令CMP比较指令RSB逆向减法指令CMN反值比较指令RSC带借位的逆向减法指令TST位测试指令AND逻辑与指令TEQ相等测试指令ORR逻辑或指令ADD加法指令28EOR逻辑互斥指令ADC带进位加法指令BIC位清除指令*乘法指令与乘加指令MUL32位乘法指令UMULL64位无符号数乘法指MLA32位乘加指令令SM

4、ULL64位有符号数乘法指UMLAL64位无符号数乘加指令令SMLAL64位有符号数乘加指令*程序状态寄存器存取指令MRS程序状态寄存器到通用寄存器的数据传送指令。MSR通用寄存器到程序状态寄存器的数据传送指令。*寄存器加载/存储指令:LDR字数据加载指令DRB字节数据加载指令LDRH半字数据加载指令STR字数据存储指令*数据交换指令:SWP字数据交换指令SWPB字节数据交换指令*移位元指令:LSL逻辑左移ASL算术左移LSR逻辑右移*协处理器指令CDP协处理器数操作指令LDC协处理器数据加载指令STC协处理器数据存储指令46MCRARM处理器寄存器到协处

5、1.2Thumb指令及应用STRB字节数据存储指令STRH半字数据存储指令LDM连续数据加载指令STM连续数据存储指令ASR算术右移ROR循环右移RRX带扩充的循环右移44理器寄存器的数据传送指令MRC协处理器寄存器到ARM处理器寄存器的数据传送指令Thumb指令集是ARM指令集的一个子集,所有的Thumb指令都有对应的ARM指令。它舍弃了ARM指令集的一些特性如大多数的Thumb指令是无条件执行的,而几乎所有的ARM指令都是有条件执行的;大多数的Thumb数据处理指令的Fl的寄存器与其屮一个源寄存器相同。Thumb指令集在保留32代码优势的同时,大大的节

6、省了系统的存储空间。Thumb指令集中操作数仍然是32位,指令地址也为32位,指令编码16位。由于Thumb指令的长度为16位,即只用ARM指令一半的位数來实现同样的功能,所以,要实现特定的程序功能,所需的Thumb指令的条数较ARM指令多。1.2.1Thumb指令优势在一般的情况下,Thumb指令与ARM指令的时间效率和空间效率关系为:-Thumb代码所需的存储空间约为ARM代码的60%〜70%;-Thumb代码使用的指令数比ARM代码多约30%〜40%;-若使用32位的存储器,ARM代码比Thumb代码快约40%;-若使用16位的存储器,Thumb代码

7、比ARM代码快约40%〜50%;-与ARM代码相比较,使用Thumb代码,存储器的功耗会降低约30%。1.2.2.Thumb指令集的局限性条件跳转限制在256byte偏移范围内,无条件跳转限制为4K偏移范围内,而ARM为32Mbytes偏移。它不支持乘法和累加指令;没有协处理器指令;没有信号量指令;没有访问CPSR指令。1.3对ARM指令的一些总结ARM指令集是32位的,程序的启动都是从ARM指令集开始,包括所有异常中断都是自动转化为ARM状态,并且所有的指令都可以是有条件执行的。ARM指令集是Load/Store型的,只能通过Load/Store指令实现

8、对系统存储器的访问,而其他的指令都是基于处理器内部的寄存器操作完成

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。