Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我需要一种方法来计算定点数 B 包含在定点数 A 中的次数。类似于整数除法,但在非整数操作数上。我需要为此操作设计一个硬件块。我的第一个猜测是使用除法作为移位和减法,当我到达小数部分时停止,但也许你知道找到它的更好方法。
如果我理解正确你想要小数除法的整数部分,即
C = floor(A / B)
现在,分数除法与整数除法没有什么不同,除了调整小数点,如果你表示A = a * 2^-n并且B = b * 2^-m你得到
A = a * 2^-n
B = b * 2^-m
C = floor(A / B) = floor((a / b) * 2^(-n-m))
因此,您可以对整数使用除法算法(本质上是移位和减法)并忽略(向下舍入)最低有效n+m位,或者更有效地在到达小数点后停止迭代。
n+m