问题描述
我知道 shr 除法的工作原理,但它只除偶数。我想把数字除以3,这个问题的汇编8086代码是什么?谢谢。
解决方法
除以 3 与乘以 1/3 相同。二进制的 1/3 是 0.010101...
所以在伪代码中:
sum:=0
tmp:=IN
while (tmp>0) {
shr tmp,2
sum += tmp
}
OUT:=sum
我知道 shr 除法的工作原理,但它只除偶数。我想把数字除以3,这个问题的汇编8086代码是什么?谢谢。
除以 3 与乘以 1/3 相同。二进制的 1/3 是 0.010101...
所以在伪代码中:
sum:=0
tmp:=IN
while (tmp>0) {
shr tmp,2
sum += tmp
}
OUT:=sum