为什么在计算机科学中我们使用2的幂作为数据量的度量单位? 例如,1个字节是2 ^ 3位。这是按惯例建立还是由于其他原因?
而且,一旦我们有了字节,我们为什么要考虑1兆字节= 2 ^ 20而不是10 ^ 6?
有人说这是方便的,因为计算机采用二进制表示。但这并没有回答这个问题。是的,计算机使用比特。但是,我们可以构建具有任意容量的处理器寄存器(例如,20位,这不是2的幂)。
这仅仅是一种惯例,还是存在其他原因?
答案 0 :(得分:0)
考虑如何使用电子记忆。
为了寻址存储器的特定块(例如字节),将数字地址线设置为1和0的模式以指示所需的地址。一个制造商使用我们知道的二进制文件,另一个使用BCD,四行代表地址0-9。要访问该数据,一个系统使用2^20
个字节和20个地址行。另一个系统有10^6
个字节和24个地址行。
最适合的系统是什么?需要20行或24行存储芯片的那个?
鉴于采用了许多方法,市场选择了密度小于十进制和其他替代方案。二进制对于许多计算机算法和体系结构来说非常自然。十进制对人类有用。