用户名:  密码:   
您当前的位置:首页 > 程序设计 >  汇编与密码学 > 

16位,20位,32位,64位地址的寻址空间

上次修改时间: 2017-10-22 17:02:54      来源:网络总结      作者:钢铁长陈
上一页      路径:DSD\Learn\assembly与反assembly\X86汇编(零基础入门学通汇编语言)\      下一页

注:这里有个难以理解的地方,首先要记住现在计算机的基础单位是byte而不bit,不然总会想着是不是要去除以8,因为1byte=8bit。
所以N位的寻址能力应该理解为N位所能表示的地址个数,每个地址表示1个字节(Byte),而每个地址表示1个bit太小没有意义,现在计算机最小单位是以字节byte算的,最终用N位表示的地址个数乘以byte,再根据需要转化需要KB/MB/GB等

1Byte=8bit, 1KB=1024Byte, 1MB=1024K,1GB=1024MB,1TB=1024GB,Byte就是字节

16位的寻址能力
16位的地址表示2^16=65536个地址,现在内存,硬盘最小的单位是字节Byte,也就是16位地址能表示65536个字节
由于1KB=1024Byte,所以16位地址能表示65536/1024=64KB的大小

同理:
20位的寻址能力:2^20/1024Byte=1024KB=1MB
32位的寻址能力:2^32/1024Byte/1024KB/1024MB=4G
64位的寻址能力:2^64/1024Byte/1024KB/1024MB/1024GB=16777216TB/1024/1024=16EB

注2:最初8086CPU是16位的并不能寻址到1MB的内存,解决方法是用16位段地址SS*10h+16位偏移地址组成20位实际物理地址来索引1M的内存