历史上的今天
今天是:2025年02月19日(星期三)
2020年02月19日 | ARM学习笔记7——乘法指令
2020-02-19 来源:eefocus
ARM乘法指令完成两个数据的乘法,两个32位二进制数相乘的结果是64位的4积。

其中:
1、“RadHi:RdLo”是由RdHi(最高有效32位)和RdLo(最低有效32位)链接形成的64位数,“[31:0]”只选取结果的最低有效32位
2、简单的赋值由“:=”表示
3、累加(将右边加到左边)是由“+=”表示
一、MUL乘法指令
1、作用 4、举例: R1=R2*R3用指令表示为 MUL R1,R2,R3 二、MLA乘-累加指令 MOV R0,#0x0A 三、UMULL无符号数长乘指令 四、UMLAL无符号长乘-累加操作指令 3、举例 五、SMULL有符号数长乘操作指令 六、SMLAL有符号长乘-累加操作指令
将Rm和Rs中的值相乘,结果的最低32位保存到Rd中
2、语法格式
MUL{
3、参数说明
3.1、S:S位(bit[20])决定指令的操作是否影响CPSR中的条件标志位N位和Z位的值。当S=1时,跟新CPSR中的条件标志位的值;当S=0,指令不更新CPSR中的条件标志位。
3.2、
3.3、
3.4、
1、作用
将Rm和Rs中的值相乘,再将乘积加上第三个操作数,结果的最低32保存到Rd中
2、语法格式
MLA{
3、参数说明:
3.1、
3.2、
3.3、
3.4、
4、举例说明
R1=R2*R3+10用指令表示为 :
MLA R1,R2,R3,R0
1、作用
UMULL为64位无符号乘法指令,指令将Rm和Rs中的值做无符号数相乘,结果的低32位保存到RsLo中,而高32位保存到RdHi中。
2、语法格式
UMULL{
3、参数说明
3.1、
3.2、
3.3、
3.4、
4、举例
完成(R1,R0)=R5*R8操作
UMULL R0,R1,R5,R8
1、作用
UMLAL位64位无符号长乘-累加指令,指令将Rm和Rs中的值做无符号数相乘,64位乘积与RdHi,RdLo相加,结果的低32位保存到RsLo中,而高32位保存到RdHi中。
2、语法格式
UMLAL{
完成(R1,R0)=R5*R8+(R1,R0)操作
UMLAL R0,R1,R5,R8
1、作用
SMULL64位有符号长乘指令,指令将Rm和Rs中的值做有符号数相乘,结果的低32位保存到RsLo中,而高32位保存到RdHi中
2、语法格式
SMULL{
3、实例
完成(R3,R2)=R7*R6
SMULL R2,R3,R7,R6
1、作用
SMLAL为64位有符号长乘法指令,指令将Rm和Rs中的值做有符号数相乘,64位乘积与RdHi,RdLo相加,结果的低32位保存到RsLo中,而高32位保存到RdHi中。
2、语法指令
SMLAL{
3、实例
完成(R3,R2)=R7*R6+(R3,R2)
SMLAL R2,R3,R7,R6
史海拾趣
|
涉及产品造型问题。无庸置疑,做FFT,DSP是首选,但ARM也有其很诱人的优势,想请教一下用ARM做过FFT的朋友,其速度如何?请告知一下所用的芯片型号、振荡器频率、FFT点数及运行时间。谢谢各位。… 查看全部问答> |
|
warning: function declared implicitly错误原因 error:function declared implicitly 解决方法:需在在头文件中用extern关键字声明函数 … 查看全部问答> |
|
CPU:E2200 主板:技嘉GA-G31M(板载X3100显卡,intel G31芯片组)(因为技嘉,华硕价格较贵,可以微星,昂达等G31芯片组的二组主板代替) 内存:金士顿2G,DDR2/800(或金邦,建议不要用威刚,威刚兼容性较差) 显卡:(如有需要可另配,但学习 ...… 查看全部问答> |
|
STM32F107中,用TIM3的PWM模式,预分频数为0,重装载值为3600,按道理说TIM3的最大频率为36MHz,那么PWM的频率应该 ...… 查看全部问答> |
|
毕业已一年又一个月,4年的大学时光,可以说我花在学习上的时间不少,基本上每门课都去学,搞到最后整体成绩还好,但每一门又不是很精通。所以现在工作中得恶补了,呵呵~记得在大三时开设了单片机课程,51的,还是汇编语言。当时就对单片机很好奇, ...… 查看全部问答> |
|
前两天我发了个帖子,说明LPC810如何用SWD方式(J-LINK)下载 于是我写了下程序,就是点亮那个LED的程序 #include \"lpc8xx.h\" int main(){ LPC_SYSCON->SYSAHBCLKCTRL |= (1DIR0|=1… 查看全部问答> |
|
现出让一套CY8CKIT-001 PSoC 开发套件,该套件是集PSoC 1、PSoC 3、PSoC 5三个系列的学习开发的,共包括一块主板、三块MCU模块、还有一个MINI PROR 程序下载下载器。下面上个图: … 查看全部问答> |




