为什么所有数据类型的大小都是 2 的幂?
举两个例子:
short int 16
char 8
为什么他们不喜欢跟随?
short int 12
最佳答案
那是一个实现细节,并非总是如此。一些奇特的体系结构具有非二次幂的数据类型。例如,36-bit words在一个阶段很常见。
如今,2 的幂几乎普遍存在的原因是它通常可以简化内部硬件实现。作为一个假设的例子(我不做硬件,所以我不得不承认这主要是猜测),指示其参数之一的操作码部分可能存储为二次幂索引参数中的字节数,因此两位足以表示参数是 8、16、32 或 64 位中的哪一个,将其转换为适当的锁存信号所需的电路将非常简单。
关于c++ - 为什么所有数据类型都是 2 的幂?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5191833/