assembly - 8086 汇编 SHR 指令除以 3 问题
问题描述
我知道 shr 除法是如何工作的,但它只除偶数。我想把数字除以3。这个问题的汇编8086代码是什么?谢谢。
解决方案
除以 3 与乘以 1/3 相同。二进制的 1/3 是 0.010101...
所以在伪代码中:
sum:=0
tmp:=IN
while (tmp>0) {
shr tmp, 2
sum += tmp
}
OUT:=sum
推荐阅读
- c++ - 我正在尝试使用 -fsanitizer=address 进行编译,但不断收到“找不到 -lasan”
- java - Java 泛型参数是如何推断的?
- ios - UIImagePickerController 只能在主线程中使用 | 应用程序崩溃
- f# - 如何在 F# 中将 Excel 工作表放入 Deedle 数据框
- memory-management - Solaris 中的物理内存利用率
- python - 读取 5gb 以上的 csv 数据集
- gitlab - 阶段对于其他分支是可选的,但对于主分支是强制性的
- linux - __init 函数中的本地静态标识符会发生什么?
- repast-simphony - 批量运行后的模拟可视化
- d3.js - dc.js 中带有 JSON 对象的折线图