1

(这是这个问题的正确网站吗?)

我最近一直在研究电路,特别是用于执行数学函数的电路,例如加法、减法、乘法和除法。我从图书馆得到了一本关于一般电路的书,主要阅读关于数学的部分,但他们似乎没有任何关于除法的部分。我完全理解所有逻辑门以及它们在加法、减法和乘法中的用途,但书中没有关于除法的内容。事实证明,谷歌也没有多大帮助。所以我的问题是

A) 处理器做除法吗?还是稍后完成,例如机器代码或更高级别的编程语言?

如果开头的答案是肯定的,那么我想知道

B)他们如何进行分裂?他们使用什么二进制除法?它使用什么样的逻辑门排列(最好是门图)?

4

1 回答 1

4

A) 是的,在很多情况下(x86 就是一个例子)。在其他情况下,可能存在执行部分除法操作的操作码。在其他情况下,可能必须在软件中模拟整个事情。

B)多种技术。本书有一整章是关于除法技术的:有限精度数系统和算术

二进制恢复除法可能是最容易理解的,它相当于你在学校所做 的长除法。二进制非恢复除法是同样的事情,但重新排列,这导致需要的操作更少。 SRT 部门更进一步。然后您可以进入非二进制除法(即基于更高的基数)。

除了基本除法算法之外,您还需要处理负数、特殊情况和浮点数(如果您喜欢这类事情)。同样,存在许多技术。

每种方法都有取舍;我怀疑英特尔使用哪种特定变体是常识。

于 2012-01-02T20:50:30.620 回答