ARM 汇编 LDR STR MOV

发布者:EtherealEssence最新更新时间:2016-06-21 来源: eefocus关键字:ARM  汇编  LDR  STR  MOV 手机看文章 扫描二维码
随时随地手机看文章
 ARM是RISC结构,数据从内存到CPU之间的移动只能通过L/S指令来完成,也就是ldr/str指令。比如想把数据从内存中某处读取到寄存器中,只能使用ldr比如:ldr r0, 0x12345678就是把0x12345678这个地址中的值存放到r0中。而mov不能干这个活,mov只能在寄存器之间移动数据,或者把立即数移动到寄存器中,这个和x86这种CISC架构的芯片区别最大的地方。x86中没有ldr这种指令,因为x86的mov指令可以将数据从内存中移动到寄存器中。另外还有一个就是ldr伪指令,虽然ldr伪指令和ARM的ldr指令很像,但是作用不太一样。ldr伪指令可以在立即数前加上=,以表示把一个地址写到某寄存器中,比如:ldr r0, =0x12345678这样,就把0x12345678这个地址写到r0中了。所以,ldr伪指令和mov是比较相似的。只不过mov指令限制了立即数的长度为8位,也就是不能超过512。而ldr伪指令没有这个限制。如果使用ldr伪指令时,后面跟的立即数没有超过8位,那么在实际汇编的时候该ldr伪指令是被转换为mov指令的。

RISC 架构

MOV 指令 只能在寄存器之间移动数据,或者把立即数移到寄存器中

LDR :加载指令(将数据从内存中移到寄存器)将数据从内存中移动到寄存器中

比如:ldr r0, 0x12345678就是把0x12345678这个地址中的值存放到r0中。

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

STR :存储指令(将数据存储到内存中) 如  STR  R0,[R1],将R0的值存储到以R1为地址的内存单元中

CISC架构的芯片

x86中没有ldr这种指令,因为x86的mov指令可以将数据从内存中移动到寄存器中。

 

例子:汇编语言对变量赋值

1.COUNT EQU       0x40003100

……

LDR       R1,=COUNT

MOV      R0,#0

STR       R0,[R1]

COUNT是我们定义的一个变量,地址为0x40003100。这中定义方法在汇编语言中是很常见的,如果使用过单片机的话,应该都熟悉这种用法。

LDR       R1,=COUNT是将COUNT这个变量的地址,也就是0x40003100放到R1中。

MOV      R0,#0是将立即数0放到R0中。最后一句STR      R0,[R1]是一个典型的存储指令,将R0中的值放到以R1中的值为地址的存储单元去。实际就是将0放到地址为0x40003100的存储单元中去。可见这三条指令是为了完成对变量COUNT赋值。用三条指令来完成对一个变量的赋值,看起来有点不太舒服。这可能跟ARM的采用RISC有关。

2.入栈:

比如:STMFD sp!{R0-R5,LR} 进栈顺序是:过程中SP递减,LR先入栈

高地址

LR

R5

R4

```````

R0   <-sp

低地址

相应的,存储器的低地址的数据对应于编号低的寄存器。这样做可以保证:最后出栈的是lr,把lr赋给pc,实现在程序跳转前完成寄存器的恢复。

出栈:

LDMFD   SP!, {R0-R3, R12, PC}^

关键字:ARM  汇编  LDR  STR  MOV 引用地址:ARM 汇编 LDR STR MOV

上一篇:arm汇编ldr,str,b,bl指令
下一篇:arm汇编—ldr加载指令,ldr伪指令

推荐阅读最新更新时间:2024-03-16 14:58

基于ARM9 和Linux 的嵌入式视觉系统设计方案
1 引言 视觉系统在现代工业生产自动化系统中应用非常广泛,主要集中于药品检测分装、印刷色彩检测、集成电路生产、精密电子产品装配、智能机器人识别导航等领域。随着Internet 的普及,现代社会已进入后PC 时代,嵌入式技术越来越与人们的生活紧密结合。 嵌入式视觉系统可通过USB 总线等将图像的获取、图像处理、显示设备集成于一体,成本相对较低,体积小巧,可以方便地安装在载体身上,故研究嵌入式的视觉系统具有一定的实际意义。 2 嵌入式视觉系统总体方案设计 嵌入式视觉系统由嵌入式硬件平台、操作系统、图像采集和图像显示四大部分组成,原理框图如下图1 所示。 图1 视觉系统原理框图 S3C2410X 芯片是韩
[单片机]
基于<font color='red'>ARM</font>9 和Linux 的嵌入式视觉系统设计方案
基于LPC2131嵌入式系统的CAN模块设计与实现
随着信息技术技术的飞速发展, ARM技术方案架构作为一种具备低功耗、高性能、以及小体积等特性的32位嵌入式微处理器,得到了众多的知识产权授权用户,其中包括世界顶级的半导体和系统公司。目前已被广泛的用于各类电子产品,汽车、消费娱乐、影像、工业控制、海量存储、网络、安保和无线等领域。被业界人士认为,基于ARM的技术方案是最具市场前景和市场优势的解决方案。 现场总线CAN是为解决现代汽车中众多的电控模块之间的数据交换而开发的一种串行通信协议。由于其具有多主站依据优先权进行总线访问,采用非破坏性总线仲裁,可完成对通信数据的错误检验和优先级判别,数据长度最多为8个字节,传输时间短,受干扰的概率低,抗干扰能力较强,通信速率最高可达1Mbit/s
[应用]
ARM协助合作伙伴降低物联网芯片设计周期风险
基于ARM Cortex -M处理器与TSMC 55 ULP工艺技术的物联网子系统助力创新者加快开发速度 ARM今日宣布推出全新的硬件子系统,帮助客户快速、有效地开发用于智能联网设备的高度定制化芯片。这套专为ARM Cortex-M处理器开发的ARM物联网子系统(IoT subsystem)在针对与ARM最具能效的处理器、射频技术、物理IP 以及ARM mbed 物联网平台的配置使用,进行了优化。 这一子系统IP模块可以单独授权,它与Cortex-M 处理器和ARM Cordio 射频IP一起构成了物联网端点(endpoint)芯片设计的基础,合作伙伴只要整合传感器和其他外设即可完成完整的系统级芯片(SoC)
[物联网]
基于ARM/FPGA的高速同步数据采集方案
  大多数的勘探、观测工作都是在严苛的环境中进行的,对数据的准确性、实时性都有着较高的要求,并且大多情况下要求多参数同步测量。北京恒颐针对勘探、测控等行业的特点,推出了基于ARM+FPGA的低功耗、高速率、高精度、多通道同步数据采集方案,可以通过监测者的要求完成多通道数据的同步采集并实现实时的网络传输。   ◆应用场合   物探分析领域   天然气、石油等地下勘探领域   观测技术领域(地震波、频谱分析)   电力调度系统   ◆系统架构   恒颐高速同步数据采集方案,功能特点如下:   1)通过系统接口直接与采集终端通讯,完成工业现场的多通道模拟量、开关量的数据采集与A/D转换,实现对数据采集终端的控制;   2)
[单片机]
基于<font color='red'>ARM</font>/FPGA的高速同步数据采集方案
ARM白皮书聚焦下一代处理器架构
  日前,ARM联合高通发布了技术白皮书,称基于 ARMv8-A 的高集成 SoC(系统级芯片)将引发新一代变革,目前 SoC主要基于ARMv7-A架构。   手机芯片中包括了计算、通信等不同处理器模块,但计算模块主要根据ARM处理器搭建,ARM处理器因此有“芯片中的芯片”之称。白皮书披露,超过 95% 的Android 设备芯片基于 ARM架构,从 25 美元的入门级智能手机到 600 美元的顶级智能手机。   在ARM披露的业务模式中,高通等“ARM 许可人”将ARM处理器与其他处理器、技术模块集成后,向市场推出各自不同品牌的SoC。   目前,联发科新的4G旗舰处理器MT6595采用了32位的ARM多核处理器,联发科即
[网络通信]
P87LPC764单片机的I2C总线显示电路
      摘要: I2C总线是Philips公司推出的芯片间串行传输总线。目前,已有不少大电气公司半导体厂商推出了不少带有I2C总线接口的单片机。本文介绍一种利用Philips公司生产的P87LPC764单片机作为I2C总线控制器与I2C总线显示器件SAA1064构成的I2C显示电路,并给出相应的程序清单。    关键词: I2C总线 P87LPC764单片机 SAA1064 显示电路   I2C总线是Philips公司推出的芯片间串行传输总线。它以串行数据线(SDA)和串行时钟线(SCL)2根连线实现了完善的全双工同步数据传送,可以极方便地构成多机系统和外围器件扩展系统。关于I2C总线的结构和工作原理详见参考文献1。
[单片机]
P87LPC764单片机的I2C总线显示电路
基于ARM平台实现数字滤波器系统的设计
引言 数字滤波器作为语音与图象处理、模式识别、雷达信号处理、频谱分析等应用中最基本的处理部件,现已成为最常用的工具之一。它既能满足滤波器对幅度和相位特性的严格要求,又能避免模拟滤波器所无法克服的电压漂移、温度漂移和噪声等问题。而对于具有线性相位特性的滤波问题,设计时一般都选择FIR滤波器。 相对于窗函数法和频率设计法,在将理想频率响应和实际频率响应之间的加权逼近误差均匀地分散到滤波器的整个通带和阻带最小化和最大误差这个意义上来说,Chebyshev逼近法可以被视为最佳的设计准则。 1设计原理 1.1 FIR数字滤波器 对于长度为N、输入为x(n)、输出为y(n)的FIR滤波器,其输出函数可用差分方程表示为: 事实上,具
[单片机]
基于<font color='red'>ARM</font>平台实现数字滤波器系统的设计
Nordic Semiconductor 与 Arm 扩展合作关系
签署最新低功耗处理器设计、软件平台和安全 IP 许可协议 Nordic签署 Arm Total Access 授权许可协议,确保其现有和未来的多协议、Wi-Fi、蜂窝物联网和DECT NR+ 产品具备业界领先的处理器和安全技术 挪威奥斯陆 – 2024年2月20日 – Nordic Semiconductor宣布与世界领先的半导体设计和软件平台企业Arm签署一项多年期Arm Total Access (ATA)授权许可协议 。ATA 保证为Nordic当前和未来的产品 (包括多协议、Wi-Fi、蜂窝物联网和 DECT NR+ 解决方案) 提供广泛的Arm® IP、工具、支持和培训。 两家企业的合作始于 2012
[物联网]
Nordic Semiconductor 与 <font color='red'>Arm</font> 扩展合作关系
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved