arm指令集(1)
ARM跳转指令可以从当前指令向前或向后的32MB地址空间跳转。这类跳转指令有以下4种。
(1)B 跳4专指令
B〔条件) (地址)
B指令属于ARM指令集,是最简单的分支指令。一旦遇到一个B指令,ARM处理器将立即跳转到给定的地址,从那里继续执行。注意:存储在分支指令中的实际值是相对当前R15的值的一个偏移量,而不是一个绝对地址。它的值由汇编器来计算,是24位有符号数,左移两位后有符号扩展为32位,表示的有效偏移位为26位(+/- 32 MB)。
(2)BL 带返回的跳转指令
BI,〔条件) (地址)
BL指令也属于ARM指令集,是另一个分支指令。就在分支之前,在寄存器R14中装载上R15的内容,因此可以重新装载R14到R15中来返回到这个分支之后的那个指令处执行,它是子例程的一个基本但强力的实现。
(3)BLX 带返回和状态切换的跳转指令
BLX <地址>
BLX指令有两种格式,第1种格式的BLX指令记作BLX(1)。BLX(1)从ARM指令集跳转到指令中指定的目标地址,并将程序状态切换到Thumb状态,该指令同时将PC寄存器的内容复制到LR寄存器中。
BLX(1)指令属于无条件执行的指令。
第2种格式的BLX指令记作BLX(2)。BLX(2)指令从ARM指令集跳转到指令中指定的目标地址,目标地址的指令可以是ARM指令,也可以是Thumb指令。目标地址放在指令中的寄存器<dest>中,该地址的bit[0]值为0,目标地址处的指令类型由CPSR中的T位决定。该指令同时将PC寄存器的内容复制到LR寄存器中。
(4)BX 带状态切换的跳转指令
BX(条件) (dest)
BX指令跳转到指令中指定的目标地址,目标地址处的指令可以是ARM指令,也可以是Thumb指令。目标地址值为指令的值和0xFl·FFFFFF做“与”操作的结果,目标地址处的指令类型由寄存器决定。
资源简介:arm指令集(1) ARM跳转指令可以从当前指令向前或向后的32MB地址空间跳转。这类跳转指令有以下4种。 (1)B 跳4专指令 B〔条件) (地址) B指令属于ARM指令集,是最简单的分支指令。一旦遇到一个B指令,ARM处理器将立即跳转到给定的地址,从...
上传时间: 2014-12-27
上传用户:laomv123
资源简介:1针对三星44B0的开发程序2对于网卡的驱动程序3程序采用C语言编程4采用ARM指令集5全部代码在 ADS1.2 中编译调试
上传时间: 2015-08-23
上传用户:qw12
资源简介:ARM指令集(2) 1.跳转指令 在ARM中有两种方式可以实现程序的跳转:一种是刀‘转指令;另一种是直接向PC寄存器(R15)中写入目标地址值。 通过直接向PC寄存器中写入目标地址值可以实现在46B地址空间中任意跳转,这种跳转指令又称为长跳转。如果在...
上传时间: 2013-11-20
上传用户:妄想演绎师
资源简介:指令集仿真器是目前嵌入式系统研究中一个极其重要的领域,一个灵活高效且准确度高的仿真器不仅可以实现对嵌入式系统硬件环境的仿真,而且是现代微处理器结构设计过程中性能评估的重要工具. 仿真器的性能已经成为影响整个设计效率的重要因素,在现有的指令集仿...
上传时间: 2013-08-02
上传用户:宋桃子
资源简介:关于arm指令集的小软件,在编程时乐意很方便地查找指令用法,很方便,推荐下。
上传时间: 2013-06-12
上传用户:wys0120
资源简介:随着嵌入式系统软件的发展,以及嵌入式应用在各个行业的普及,嵌入式系统开发已经被越来越多的人所关注。目前,嵌入式软件更新频率快,因此要求开发者在短期内能开发出具有针对型的应用程序,然而嵌入式系统运行环境往往是用户制定,并且运行在特定的硬件环境...
上传时间: 2013-10-23
上传用户:neu_liyan
资源简介:常用ARM指令集及汇编
上传时间: 2014-11-28
上传用户:lvzhr
资源简介:ARM指令集 QRC0001H_rvct_v2.1_thumb.rar
上传时间: 2014-01-10
上传用户:徐孺
资源简介:arm指令集.zip
上传时间: 2014-01-07
上传用户:黑漆漆
资源简介:arm指令集,对学习arm编程很有帮助!
上传时间: 2015-03-13
上传用户:kr770906