ARM的指令BFI如何翻译成等效的C++?

PDD123 2019-09-24 03:40:32
ARM的指令:BFI{<c>}{<q>} <Rd>, <Rn>, #<lsb>, #<width>
其功能用C++描述是不是这样:
		unsigned int inline bfi(unsigned int rd, unsigned int rn, unsigned int lsb, unsigned int width)
{
unsigned int ls = (unsigned int(0xFFFFFFFF) >> (32 - width));
rn = (rn & ls) << lsb;
ls = ~(ls << lsb);
rd = rd & ls;
rd = rd | rn;
return rd;
}


...全文
639 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
PDD123 2019-09-24
  • 打赏
  • 举报
回复
引用 3 楼 早打大打打核战争 的回复:
应该是对的,你对比一下用指令和自行计算的结果
好的,谢谢。 结果和我理解的相同,只要我理解对了就对了。
PDD123 2019-09-24
  • 打赏
  • 举报
回复
一般有可能有歧义的地方,我要嘛写成两段,要嘛带个括号。
  • 打赏
  • 举报
回复
应该是对的,你对比一下用指令和自行计算的结果

PDD123 2019-09-24
  • 打赏
  • 举报
回复
引用 1 楼 早打大打打核战争 的回复:
rd = rd & ls; rd = rd | rn; return rd; 可以直接: return rd & ls | rn;
你好,我就想问问对不对。
  • 打赏
  • 举报
回复
rd = rd & ls;
rd = rd | rn;
return rd;
可以直接:
return rd & ls | rn;
内容概要:本文系统研究了基于CNN-SVM的卷积神经网络与支持向量机融合的数据分类预测方法,聚焦其在工业故障识别中的应用,提供了完整的Matlab代码实现。通过CNN提取输入数据的深层空间特征,再由SVM进行高精度分类,充分发挥两者优势,有效提升了故障识别的准确性、鲁棒性与泛化能力。该方法特别适用于处理电力系统、机械设备等领域的高维、非线性、强噪声监测数据,在变压器故障诊断、轴承缺陷识别等场景中具有重要应用价值。文档还整合了机器学习、深度学习、图像处理、路径规划、电力系统优化等多个前沿科研方向的技术资源,配套大量Matlab/Simulink仿真案例与Python代码,全面支持科研复现与工程实践。; 适合人群:具备一定编程基础,熟练掌握Matlab或Python语言,从事电气工程、自动化、人工智能、机械故障诊断等相关领域研究的研发人员及高校研究生; 使用场景及目标:① 实现工业设备的状态监测与多类别故障分类;② 深入理解CNN与SVM融合模型的设计原理与工程实现细节;③ 借助所提供的丰富算法案例开展科研复现、模型优化与系统仿真验证; 阅读建议:建议按照文档目录结构系统化学习,结合百度网盘提供的完整代码资源进行动手实践,重点关注CNN特征提取层与SVM分类器之间的数据接口设计与参数调优策略,同时可延伸学习文中涉及的其他智能算法及其在电力系统、信号处理等领域的交叉应用,全面提升科研创新能力。

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧