我不明白内存寻址中的一些东西

fla*_*nka 3 x86 memory-management x86-16

我有一个非常简单(n00b)的问题.

20位外部地址总线提供1 MB物理地址空间(2 ^ 20 = 1,048,576).(维基百科)

为什么1 MByte?

2^20 = 1,048,576 bit = 1Mbit = 128KByte not 1MB
Run Code Online (Sandbox Code Playgroud)

我误解了一些事情.

Cra*_*lus 5

当你有20位时,你可以解决2^20.这是你的范围,而不是位数.

即如果你有8位,你的范围最高为255(无符号),而不是2 ^ 8位.

因此,使用20位,您可以处理最多2 ^ 20个字节,即1MB

即20位,您可以表示从0到2^20= 1,048,576的地址.即你可以参考高达1MB的内存.