当转换的数量未知时,如何在硬件级别实现位移?
我无法想象你可以转换的每个数字都会有一个单独的电路(这将是64位机器上的64个移位电路),我也无法想象这将是一个转换循环(在64位计算机上最多需要64个移位周期)。这是两者之间的某种妥协,还是有一些聪明的伎俩?
答案 0 :(得分:13)
该电路被称为“barrel shifter” - 它基本上是多路复用器的负载。它每个地址都有一个层 - 需要移位,因此8位桶形移位器需要三位来说“移位多少”,因此需要3层多路复用器。
这是来自http://www.globalspec.com/reference/55806/203279/chapter-9-additional-circuit-designs的8位的图片: