ARM乘法指令完成两个数据的乘法,两个32位二进制数相乘的结果是64位的4积。
其中:
1、“RadHi:RdLo”是由RdHi(最高有效32位)和RdLo(最低有效32位)链接形成的64位数,“[31:0]”只选取结果的最低有效32位
2、简单的赋值由“:=”表示
3、累加(将右边加到左边)是由“+=”表示
一、MUL乘法指令
1、作用
将Rm和Rs中的值相乘,结果的最低32位保存到Rd中
2、语法格式
MUL{}{S} ,,
3、参数说明
3.1、S:S位(bit[20])决定指令的操作是否影响CPSR中的条件标志位N位和Z位的值。当S=1时,跟新CPSR中的条件标志位的值;当S=0,指令不更新CPSR中的条件标志位。
3.2、:寄存器位目标寄存器
3.3、:第一个乘数所在寄存器
3.4、:第二个乘数所在寄存器 4、举例:
R1=R2*R3用指令表示为 MUL R1,R2,R3
二、MLA乘-累加指令
1、作用
将Rm和Rs中的值相乘,再将乘积加上第三个操作数,结果的最低32保存到Rd中
2、语法格式
MLA{}{S} ,,,
3、参数说明:
3.1、:寄存器位目标寄存器
3.2、:第一个乘数所在寄存器
3.3、:第二个乘数所在寄存器
3.4、:将要累加到*结果中的第三操作数
4、举例说明
R1=R2*R3+10用指令表示为 : MOV R0,#0x0A
MLA R1,R2,R3,R0
三、UMULL无符号数长乘指令
1、作用
UMULL为64位无符号乘法指令,指令将Rm和Rs中的值做无符号数相乘,结果的低32位保存到RsLo中,而高32位保存到RdHi中。
2、语法格式
UMULL{}{S} ,,,
3、参数说明
3.1、:寄存器位目标寄存器,存储结果的低32位值
3.2、:寄存器位目标寄存器,存储结果的高32位值
3.3、:第一个乘数寄存器
3.4、:第二个乘数寄存器
4、举例
完成(R1,R0)=R5*R8操作
UMULL R0,R1,R5,R8
四、UMLAL无符号长乘-累加操作指令
1、作用
UMLAL位64位无符号长乘-累加指令,指令将Rm和Rs中的值做无符号数相乘,64位乘积与RdHi,RdLo相加,结果的低32位保存到RsLo中,而高32位保存到RdHi中。
2、语法格式
UMLAL{}{S} ,,, 3、举例
完成(R1,R0)=R5*R8+(R1,R0)操作
UMLAL R0,R1,R5,R8
五、SMULL有符号数长乘操作指令
1、作用
SMULL64位有符号长乘指令,指令将Rm和Rs中的值做有符号数相乘,结果的低32位保存到RsLo中,而高32位保存到RdHi中
2、语法格式
SMULL{}{S} ,,,
3、实例
完成(R3,R2)=R7*R6
SMULL R2,R3,R7,R6
六、SMLAL有符号长乘-累加操作指令
1、作用
SMLAL为64位有符号长乘法指令,指令将Rm和Rs中的值做有符号数相乘,64位乘积与RdHi,RdLo相加,结果的低32位保存到RsLo中,而高32位保存到RdHi中。
2、语法指令
SMLAL{}{S} ,,,
3、实例
完成(R3,R2)=R7*R6+(R3,R2)
SMLAL R2,R3,R7,R6
关键字:ARM 乘法指令 寄存器
引用地址:
ARM学习笔记7——乘法指令
推荐阅读最新更新时间:2024-11-12 10:47
ARM7单片机(学习ing)—(一)、输入/输出端口GPIO编程—01
一、输入/输出端口GPIO编程 一—(01)、一位数码管静态显示(通过74HC595实现) 1、管脚连接模块 首先介绍一下LPC2106的相关的管脚~~ 特性:可以实现独立的管脚配置 应用:管脚连接模块的用途是将管脚配置为需要的功能(这一章节主要就是介绍GPIO功能~~别的会在接下来的章节中分别予以介绍~~) 描述:管脚连接模块可以使所选管脚具有一个以上的功能。配置寄存器控制多路开关来连接管脚与片内外设。外设在激活和任何相关只读使能之前必须连接到适当的管脚。任何使能的外设功能如果没有映射到相应的管脚,则被认为是无效的。 寄存器的描述: 管脚连接模块包括两个寄存器: 管脚功能寄存器0:(PINSEL0) PINSEL0寄存器按
[单片机]
基于ARM Cortex-M3的小型化远程监控智能电源系统
传统的电源维护采用的是人工手动式维护管理模式,而 智能 电源监控 系统以嵌入式技术、计算机技术、通信技术等为基础,实现了电源系统向智能化、自动化管理模式的转变。 随着当代科技的日益发展,数量巨大的各类设备的电源维护管理需要投入大量的人力、物力,像通信/ 电力设施所处环境越来越复杂,人烟稀少、交通不便、危险度高等都增大了维护的难度和费用。这对电源设备的监控管理提出了更高的要求。电源监控系统需要对系统中各状态量进行监视,还必须能对各供电支路进行控制和管理。维护管理人员可远程进行数据查询、控制等维护工作,并可利用友好的人机界面方便地得到需要的信息。 数字化技术的发展表现出了传统技术无法比拟的优势,整个电源监控系统的信号采样、处理、控
[电源管理]
MSP430CPU介绍
总结 1. CPU介绍 MSP430的CPU具有诸如计算分支、表格处理、支持高级语言(C)等现代处理器特征,其特点包括: 1.RISC精简指令集 2.正交体系结构 3.包括程序计数器PC、堆栈寄存器SP、状态寄存器SR在内的全部寄存器可访问 3.单周期寄存器操作 4.更大的寄存器容量以减少内存访问 5.20位地址总线允许直接访问,在整个内存范围内进行分支,而不进行分页。 6.16位数据总线允许长字访问 7.提供常数发生器产生6个常用常数以减少代码大小 8.直接内存到内存传送不需要中间寄存器 9.字节、字、20位地址直接访问 2. 中断 中断向量为16位地址,可指向低64KB内存,这也意味着中断服务程序必须位于低64KB的内存空
[单片机]
STM32学习008_ARM产品浅析
ARM是英国Acorn有限公司设计的基于RSIC的一款微处理器,全称为Acorn RISC Machine,ARM处理器本身是32位设计,但也配备16位指令集,一般来讲比等价32位代码节省达35%,却能保留32位系统的所有优势。 ARM处理器的三大特点是:耗电少功能强、16位/32位双指令集和合作伙伴众多。 1、体积小、低功耗、低成本、高性能; 2、支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件; 3、大量使用寄存器,指令执行速度更快; 4、大多数数据操作都在寄存器中完成; 5、寻址方式灵活简单,执行效率高; 6、指令长度固定。 ARM处理器共有37个寄存器,被分为若干个组(BANK),这
[单片机]
密谋取代x86!运行EXE的ARM芯片技术非高通独占
不久之前高通对外正式宣布称自家是目前唯一一家与ARM达成协议,获得推出可运行Windows系统芯片的授权许可。不过ARM高管近日澄清称,ARM并没有阻止授权芯片厂商开发可运行x86系统的芯片,而且法律上也没有限制。ARM还坦承在去年被日本软银收购之后,就已经置顶了“所有计算设备”范畴的规划,以扩大公司的业务范围。 不过虽然高通和ARM之间没有这明确的协议规定,但在微软和高通之间可就不一定了,早期的WIndows手机和ARM芯的平板基本全部是与高通合作的产物。在此前跨平台的Windows RT失败后,微软并没有放弃,此次在ARM芯上运行x86版的EXE程序是通过在ARM芯片的基础上开发模拟器实现的。虽然目前不知道效率如何,AR
[嵌入式]
arm:启动代码判断是从nand启动还是从norflash启动,拷贝程序到内存的过程
一、nand启动和nor启动: CPU从0x00000000位置开始运行程序。 1、nand启动: 如果将S3C2440配置成从NANDFLASH启动(将开发板的启动开关拔到nand端,此时OM0管脚拉低)S3C2440的Nand控制器会自动把Nandflash中的前4K代码数据搬到内部SRAM中(地址为0x40000000),同时还把这块SRAM地址映射到了0x00000000地址。CPU从0x00000000位置开始运行程序。 2、如果将S3C2440配置成从Norflash启动(将开发的启动开关拔到nor端,此时OM0管脚拉高),0x00000000就是norflash实际的起始地址,norf
[单片机]
手把手教你写S12XS128程序(15)--A/D寄存器说明5
5、ATD0状态寄存器5---ATD0START0、ATD0START0 ATD0START0反映当前的转换通道、A/D转换是否结束、是否有外部触发等; ATD0START1反映转换序列中相应的转换是否完成。寄存器ATD0START0、 SCF ---转换序列完成标志 在单次转换模式时,当转换完成后置位 (SCAN = 0) 在连续转换模式时,当第一次转换完成后置位 (SCAN = 1),当AFFC = 0,写 1 清零。 ETORF ---外部触发覆盖标志 如果在转换过程中高/低电平出现,置位 FIFOR 当结果寄存器在读出之前已经被写入时,置位 ( CCF 没有清零) CC 转换计数器---
[单片机]
ARM920T看门狗定时器、系统时钟
看门狗定时器 原理:看门狗每隔一定时间【假设为3小时】就会饿,每次饿时都会叫,如果你不想让它叫,只要保证每隔3小时喂一次狗就可以。 递减计数器为0时会自动重启控制器。 用途: 1.用于解决远程控制器在出现电磁干扰、噪声、系统错误等外界条件造成的系统死机等不正常运行问题。 2.可以通过设置产生定时的中断信号。 结论: 1.设置WTCON 设置看门狗定时器的使能; 2.设置WTCON 和 位来设置看门狗控制器的工作频率。 3.设置WTCON 和WTCON 使能产生中断和复位信号。 4.设置WTDAT设置计数值。 --------------------------------------------------------------
[单片机]