主题:汇编刚开始学的新手,求教一个问题
kongxing
[专家分:0] 发布于 2007-03-13 16:31:00
那个实模式下的内存段大小为什么是64KB?我不知道是怎么算出来的
回复列表 (共2个回复)
沙发
qilan [专家分:60] 发布于 2007-03-13 21:13:00
因为实模式下的偏移地址是16位的,2的16次方就是64K,所以......
板凳
freeeerf [专家分:5440] 发布于 2007-03-13 22:00:00
64KB是最大段值.
物理地址是段地址向左移四位再加上基地址,所以段最小是16B,而实模式下共有1M的空间,所以最大段长度就是1M/16B=2^20/2^4=2^16=64K.(楼上的理解更好一些)
<<IBM-PC汇编语言程序设计>>第27页有这一句:"实际上,可以根据需要来确定段的大小,它可以是1B,100B,100B或在64KB范围内的任意个字节."
我来回复