使用单个aarch64指令获取余数?

c_mnon

我正在为ARM8(aarch64)编写一些汇编代码。我想进行除法,并将获得的余数用于进一步的计算。在x86中,当我使用'div'时,我知道我的余数保存在RDX中我的问题是-是否与aarch64指令集中的等效?我知道'udiv'和'sdiv'做无符号和有符号除法,并得到商。有没有一条指令可以给我剩余?(我想在c中使用%模运算符)。我知道我可以使用代数获得它,只是想确认我没有错过更简单的方法。

不是这样的

除非可以将常数and除以2的幂次方,否则可以将其优化到,没有指令可以计算除法的余数。您可以将它整齐地分成两个部分:

// input: x0=dividend, x1=divisor
udiv x2, x0, x1
msub x3, x2, x1, x0
// result: x2=quotient, x3=remainder

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

stp aarch64指令必须与“非连续寄存器对”一起使用

来自分类Dev

ARMv8 AARCH64指令中止处理程序?

来自分类Dev

“ cqo”,“ cdq”和“ cwd” x86_64指令。为什么不只使用cqo?

来自分类Dev

使用nasm将64位指令汇编为原始机器代码

来自分类Dev

在8086指令集中使用ASSUME指令

来自分类Dev

64位指令中的C ++指针

来自分类Dev

64位指令中的C ++指针

来自分类Dev

如何在ARMv8-a上启用Aarch32指令集?

来自分类Dev

如何获取我的Angular 2指令的实例的句柄?

来自分类Dev

Angular2指令:获取标签内容

来自分类Dev

在同一指令的链接功能内使用指令控制器中的功能

来自分类Dev

体系结构-32位处理64位指令

来自分类Dev

您选择的CPU不支持x86-64指令集

来自分类Dev

长度更改前缀(LCP)是否在简单的x86_64指令上引起停顿?

来自分类Dev

x64指令编码(r / m,reg与reg,r / m)

来自分类Dev

Angular 2指令及其属性

来自分类Dev

angularJS ES6指令

来自分类Dev

我可以映射到可搜索字符设备`/ dev / mem_8`并使用x86_64指令对其进行访问吗?

来自分类Dev

如何从@HostListener,angular2指令获取目标元素ID

来自分类Dev

在Angular2指令中进行字符串插值后获取内容

来自分类Dev

AArch64重定位前缀

来自分类Dev

Aarch64什么是后继转发?

来自分类Dev

构建臂/ aarch64 rootfs

来自分类Dev

在AArch64上执行sqrt函数

来自分类Dev

GAS aarch64语法获取.ascii字符串长度

来自分类Dev

如何在 Debian 上为 qemu 用户模式获取 aarch64 版本的 musl

来自分类Dev

MSVC为什么对这种琐碎的事情使用SSE2指令?

来自分类Dev

未使用Angular 2指令在元素上设置高度

来自分类Dev

为什么80x87指令集使用“基于堆栈”的设计?

Related 相关文章

热门标签

归档