您好、欢迎来到现金彩票网!
当前位置:手机棋牌游戏下载 > 伪指令 >

ARM汇编程序设计之: ARM汇编器所支持的伪指令

发布时间:2019-05-29 01:00 来源:未知 编辑:admin

  MOV32装载32位常数或地址到寄存器(ARMv6T2体系结构及以上版本支持)。

  LDR装载32位常数或地址到寄存器(所有ARM版本均支持)。

  ADR为小范围地址读取伪指令。ADR伪指令将基于PC相对偏移地址或基于寄存器相对偏移地址值读取到寄存器中,当地址值是字节对齐时,取值范围为255~255,当地址值是字对齐时,取值范围1020~1020。当地址值是16字节对齐时其取值范围更大。

  ADR被汇编器编译成一条指令。汇编器通常使用ADD或SUB指令来实现伪操作的地址装载功能。如果不能用一条指令来实现ADR伪指令的功能,汇编器将报告错误。

  ADRL为中等范围地址读取伪指令。ADRL伪指令将基于PC相对偏移的地址或基于寄存器相对偏移的地址值读取到寄存器中,当地址值是字节对齐时,取值范围为64KB~64KB,当地址值是字对齐时,取值范围为256KB~256KB。当地址值是16字节对齐时,其取值范围更大。在32-bit的Thumb-2指令中,地址取值范围到达1MB。

  ADRL伪指令与ADR伪指令相似,用于将基于PC相对偏移的地址或基于寄存器相对偏移的地址值读取到寄存器中。所不同的是ADRL伪指令比ADR伪指令可以读取更大范围的地址。这是因为在编译阶段,ADRL伪指令被编译器换成两条指令。即使一条指令可以完成该操作,编译器也将产生两条指令,其中一条为多余指令。如果汇编器不能在两条指令内完成操作,将报告错误,中止编译。

  如果使用ADRL伪指令装载标号地址,那么被装载的标号必须和伪指令ADRL在同一个段中。

  一般情况下汇编器将一条MOV32伪指令翻译成一对MOV和MOVT指令。这样任何32-bit常量都可以被装载到寄存器。

  通过这种方法装载的程序地址是在程序链接时由链接器确定的,是位置相关地址。

  Arm中国周易大赛4月重磅来袭,打造最有影响力的AIoT开放商业大赛平台

  “当TDC-GP22遇到ARM CortexM3” ——世强专家解读智能超声波水表的技术创新趋势

  Arm 基于台积公司22纳米ULP技术的POP IP, 力助联咏科技推进数字电视芯片

  东芝推出基于Arm® Cortex®-M4的新款微控制器,内置计时器和通信通道,可实现高速数据处理

  Arm、Cadence、Xilinx联合推出基于TSMC 7纳米工艺的首款Arm Neoverse系统开发平台,面向下一代云到边缘基础设施

http://tennisinspokane.com/weizhiling/25.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有