Tag: 数字逻辑

为什么按位运算比旧微处理器上的加/减操作稍快?

我今天看到了这段摘录: 在大多数较旧的微处理器上,按位运算比加法和减法运算稍快,并且通常比乘法和除法运算快得多。 在现代体系结构中,情况并非如此:按位运算通常与添加速度相同(尽管仍然比乘法更快)。 我很好奇为什么按位操作比旧微处理器上的加/减操作稍快一些。 我能想到的只会导致延迟的是,实现加/减的电路取决于几级逻辑门(并行加法器和诸如此类),而按位运算则具有更简单的电路实现。 这是什么原因? 我知道算术和按位运算都在现代处理器的一个时钟内执行,但纯粹谈到电路的传播时间,理论上现在处理器中的延迟是不是仍然存在? 最后,我有一个关于按位移位操作执行的概念C问题: unsigned x = 1; x <<= 5; unsigned y = 0; y += 32; x和y都应该保持值32 ,但是它需要5个单独的左移来获得x到该值(如通过管道实现的按位移位)? 为了澄清,我纯粹是在询问电路行为而不是时钟周期数。