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