ARM中好像没有除法啊? 那32除以6,我怎么样能得到5呢?我想用移位,但移位只能除以2、4,8等 有代码加分

ARM中好像没有除法啊? 那32除以6,我怎么样能得到5呢?我想用移位,但移位只能除以2、4,8等 有代码加分,第1张

计算机中除法是用减法实现的,而减法是用加法实现的(加上他的补码),可乱虚轿以用32一直减誉碧6来实现除法,用C#语言哗肆实现如下:

int a=32

int b=6

int count=0

while(true)

{

a=a-b

if(a>=0)

{

count++

}

else

{

break

}

}

这除法多半是转化为了减法……大宏现在ARM单片机指令中有除法指令,并且被除数和除数相差越大,除法指令执行时间越长,估计就是反复执行被除数减去除数的减法,知道被除数不够减为止,笑桐这时候剩下的被除数碰仿坦是余数,重复的减法次数就是商。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12563046.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存