MOV

  1.可以寄存器与寄存器之间传递数据
  2.可以把立即数移动到寄存器中(常数不能超过32位)

LDR

  1.可以地址与寄存器之间的数据传递
  2.也可以常数传递到寄存器中
实例:

  1.r1与r2寄存器之间传递就只能用MOV:

  MOV r1,r2

  2.常数传递到寄存器可以使用MOV和ldr:

  MOV r0,#0ldr r0,=0

  3.寄存器与地址0X00000000之间传递数据只能用ldr:

  ldr r0,=0X30000000ldr r0,0X00000000

LDR指令

ldr r0, 0x12345678          // 就是把0x12345678这个地址中的值存放到r0中。而mov不能干这个活,mov只能在寄存器之间移动数据,或者把立即数移动到寄存器中。
ldr r0,r1                     //表示把r1寄存器中的值放入r0
ldr r0,[r1]                  // [r1]表示r1中值对应内存的地址,所以是把r1中的数当作一个地址,把这个地址中的值放入r0.

LDR伪指令

 ldr r0, =0x12345678`       //例1(立即数):

  这样,就把0x12345678这个地址写到r0中了。所以,ldr伪指令和mov是比较相似的。只不过mov指令限制了立即数的长度为8位,也就是不能超过512。而ldr伪指令没有这个限制。如果使用ldr伪指令时,后面跟的立即数没有超过8位,那么在实际汇编的时候该ldr伪指令是被转换为mov指令的

ldr  r0, =_start //将指定标号的值赋给r0

  这里取得的是标号 _start 的绝对地址,这个绝对地址(链接地址)是在链接的时候确定的。它要占用 2 个 32bit的空间,一条是指令,另一条是文字池中存放_start 的绝对地址。

汇编指令-MOV与ldr区别相关推荐

  1. 汇编指令:MOV与ldr区别

    MOV 可以寄存器与寄存器之间传递数据 可以把立即数移动到寄存器中(常数不能超过32位) LDR 可以地址与寄存器之间的数据传递 也可以常数传递到寄存器中 实例: 1.r1与r2寄存器之间传递就只能用 ...

  2. 汇编指令-adr与ldr伪汇编区别(8)

    adr :相对寻址,与当前位置有关 ldr  :绝对寻址,与当前位置无关 在初始化SDRAM时就会用到adr,代码如下: /* 初始化SDRAM */ldr r0,=BWSCON //r0=SDRAM ...

  3. 计算机汇编指令mov和mova,汇编语言中mov和lea指令的区别详解

    指令(instruction)是一种语句,它在程序汇编编译时变得可执行.汇编器将指令翻译为机器语言字节,并且在运行时由 CPU 加载和执行. 一条指令有四个组成部分: 标号(可选) 指令助记符(必需) ...

  4. ARM 汇编指令 ADR 与 LDR 使用

    简介 这两个都是伪指令:ADR 是小范围的地址读取伪指令,LDR 是大范围的读取地址伪指令.可实际使用的区别是: ADR 是将基于 PC 相对偏移的地址值或基于寄存器相对地址值读取的伪指令,而 LDR ...

  5. 关于汇编指令ldr和str的理解

    (1)..ldr指令:(load装载) 外存--->>>内存 ldr 指令传数据(将数据传入寄存器) 无论是否是立即数,都可以进行传 格式:ldr 寄存器,=数字 若数字式立即数:l ...

  6. arm指令中mov和ldr及ldr伪指令的区别

    ARM是RISC结构,数据从内存到CPU之间的移动只能通过L/S指令来完成,也就是ldr/str指令.比如想把数据从内存中某处读取到寄存器中,只能使用ldr比如:ldr r0, 0x12345678就 ...

  7. 2020-12-4((ARM汇编)mov指令,LDR指令,LDR伪指令)

    首先说明一下 ARM是RISC("reduced instruction set computer",即"精简指令集计算机")结构 x86是CISC(" ...

  8. ARM MOV和 LDR指令关系

    ARM是RISC结构,数据从内存到CPU之间的移动只能通过L/S指令来完成,也就是ldr/str指令. 比如想把数据从内存中某处读取到寄存器中,只能使用ldr 比如: ldr r0, 0x123456 ...

  9. ARM指令浅析1(mov、ldr)

    1.环境及优化项 采用-O2优化选项,通过arm处理器架构下的gcc编译器编译用例生成汇编码查看其生成的指令.至于为什么用O2选项,是因为在某些用例中,加入-O3选项之后,arm处理器架构下gcc编译 ...

最新文章

  1. ASP.NET2.0 文本编辑器FCKeditor的冰冷之心 【月儿原创】
  2. 类脑量子叠加脉冲神经网络:从量子大脑假说到更好的人工智能
  3. 沈阳构建智慧产业体系 大数据企业5年后将超200家
  4. 不能打游戏的汽车不是好电影院!特斯拉面向国内推送V10.0系统,能辅助变道还能看爱奇艺...
  5. window用ssh连接本机虚拟机中的ubuntu
  6. 【资料下载】Python 第三讲——正则表达式爬取糗事百科数据...
  7. SyntaxError: Non-ASCII character '\xe9' in file...ubuntu系统下python运行时提示编码格式不正确以及提示No module named xxx
  8. mysql允许两个用户远程连接,配置MySQL服务允许用户远程连接
  9. 投标工作笔记001---竞标和围标
  10. JavaScript学习(八十三)—JavaScript书写位置、注释、以及输入输出语句
  11. paip.输出内容替换在Apache 过滤器filter的设置
  12. 企业信息安全管理制度
  13. 电脑BIOS为UEFI BIOS,出现蓝屏情况“你的设备遇到问题,需要重启。我们只收集某些错误信息,然后你可以重新启动。100%完成“,解决方法。
  14. MagicBook2018 解决指纹失效
  15. 直线外一点到直线的距离
  16. dns配置异常怎么修复_dns配置异常不能上网如何修复
  17. 简易电梯控制系统设计(两层楼)(
  18. java面试题之-Redis篇(持续更新)
  19. Python笔记:python实现跳板机
  20. 用c语言计算运费.c

热门文章

  1. 第一次作业(个人作业):阅读教材,提五个问题
  2. MySQL数据库多表查询练习题
  3. 编写Java程序,实现简单的五子棋博弈游戏(美和易思Java练习习题)
  4. java网络程序设计 聊天室之私聊、群聊和清屏功能的实现
  5. Leetcode小白上线第三十三天
  6. linux 如何扫描 病毒,linux安装fprot扫描病毒
  7. html判断符号,html js 格式验证标点符号
  8. Linux服务器移动文件命令
  9. STC单片机使用Printf
  10. html+css实现一个会旋转且变大的静态照片墙