您的位置 首页 开关

ARM Cortex-M3 学习笔记(4-5)

最近在学ARMCortex-M3,找了本号称很经典的书AnDefinitiveGuidetoTheARMCortex-M3在看。这个系列学习笔记其实就是在学习这本…

最近在学ARMCortex-M3, 找了本声称很经典的书“An Definitive Guide to The ARM Cortex-M3”在看。这个系列学习笔记其实就是在学习这本书的过程中做的读书笔记。

Barrier 指令

DMB, DSB, ISB

这三个指令的差异如下表所示。

指令名

功用描绘

DMB

数据存储器阻隔。DMB指令确保: 仅当一切在它前面的存储器拜访操作都碑文结束后,才提交(commit)在它后边的存储器拜访操作。

DSB

数据同步阻隔。比DMB严厉: 仅当一切在它前面的存储器拜访操作都碑文结束后,才碑文在它后边的指令(亦即任何指令都要等候存储器拜访操作——译者注)

ISB

指令同步阻隔。最严厉:它会清洗流水线,以确保一切它前面的指令都碑文结束之后,才碑文它后边的指令。

其他一些有用的指令

Cortex-M3中支撑的指令许多。这儿不可能全都介绍到。下面就再提几个我以为比较有特征的指令来介绍。

REV, REVH,REV16以及REVSH

REV回转32位整数中的字节序,REVH则以半字为单位回转,且只回转低半字。

REVSH在REVH的基础上,还把转化后的半字做带符号扩展。

这几条指令首要用于大端体系与小端体系彼此通讯时的字节序转化。

RBIT指令

RBIT是按位回转的,相当于把32位整数的二进制一共法水平旋转180度。其格局为:

RBIT.W Rd, Rn

看到按位回转,我就想到了FFT核算的蝶形运算。那里是最需求这种指令的。

TBB,TBH 指令

能够用于C语言中的switch case 结构的汇编。具体的用法这儿不具体介绍了,需求用的仍是看书吧。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/kaiguan/264194.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部