![Intel 80486 及以上 CPU 的 Intel 数据总线](https://linux22.com/image/1237719/Intel%2080486%20%E5%8F%8A%E4%BB%A5%E4%B8%8A%20CPU%20%E7%9A%84%20Intel%20%E6%95%B0%E6%8D%AE%E6%80%BB%E7%BA%BF.png)
为什么 Intel 80486 及以上版本的 CPU 具有双 32 位内部数据总线? ALU 仍然是 32 位宽,那么额外的 32 位总线有什么用呢?
答案1
它用于浮点/MMX/SSE 数据移动。
答案2
双倍宽度数据总线一次可以传输不止一条数据。正如 Paul R 指出的那样,它用于传输浮点数据,但也可以同时传输两条 32 位数据。
因此,假设您要发送一条指令来将两个数据位相加,您可以在一个时钟周期内“并排”发送两个数据位,同时发送一条指令“将这两个数据位相加”。这样可以节省时间,因为数据发送速度更快,也意味着 ALU 不必等待两个数据到达太长时间。
总的来说,这只是意味着资源得到更好的利用,并且可以一次发送大量的数据,无论这是否意味着可以一次发送多个小位数据,或者较大位数据必须比使用较小的数据总线时分割得更少。