[如果我说一条64位指令,其中2个字节(16位)用于操作码,其余部分用于操作数地址,则可以确定我具有48位用于该地址(64-16)。我可以转到的数字是可以用48位加1来显示地址0的最大值。这将是2^48。但是,我对iB单位的理解存在问题。
64-16
2^48
2^48是2^40 (TiB) x 2^8 = 256TiB。但是由于TiB = 2^40 BYTES,2^48何时成为BYTE?我通常认为要获得字节数必须除以8,但这似乎并非如此。
2^40 (TiB) x 2^8 = 256TiB
TiB = 2^40
有人可以解释为什么这样做有效吗?
A byte是具有地址的最小内存块。不管地址位数是多少,根据定义,结果地址都是一个字节的地址。在当今所有(或至少大多数)计算机体系结构中,一个字节与octet相同,即八位;但是从历史上看,流行的计算机体系结构具有6位字节或12位字节,甚至每个字节还有其他更奇特的位数。