公 2.存储器分段技术 为什麽要采用存储器“分段”技术? ·实模式下CPU可直接寻址的地址空间为220=1M 字节单元。CPU需输出20位地址信息才能实现对 1M字节单元存储空间的寻址。 但实模式下CP∪中所使用的寄存器均是16位的, 内部ALU也只能进行16位运算,其寻址范围局限 在216=65536(64K)字节单元。 为了实现对1M字节单元的寻址,80X86系统采用 了存储器分段技术
2. 存储器分段技术 为什麽要采用存储器“分段”技术? • 实模式下CPU可直接寻址的地址空间为220=1M 字节单元。CPU需输出20位地址信息才能实现对 1M字节单元存储空间的寻址。 • 但实模式下CPU中所使用的寄存器均是16位的, 内部ALU也只能进行16位运算,其寻址范围局限 在216=65536(64K)字节单元。 • 为了实现对1M字节单元的寻址,80x86系统采用 了存储器分段技术
公 ·具体做法是,将1M字节的存储空间分成许多逻辑 段,每段最长64K字节单元,可以用16位地址码 进行寻址。 ·每个逻辑段在实际存储空间中的位置是可以浮动 的,其起始地址可由段寄存器的内容来确定。实际 上,段寄存器中存放的是段起始地址的高16位, 称之为“段基值”( segment base value) 逻辑段在物理存储器中的位置如图42所示
• 具体做法是,将1M字节的存储空间分成许多逻辑 段,每段最长64K字节单元,可以用16位地址码 进行寻址。 • 每个逻辑段在实际存储空间中的位置是可以浮动 的,其起始地址可由段寄存器的内容来确定。实际 上,段寄存器中存放的是段起始地址的高16位, 称之为“段基值”(segment base value)。 • 逻辑段在物理存储器中的位置如图4.2所示
公 00000H 逻辑段1起点 逻辑段1≤64KB 逻辑段2起点 逻辑段2 逻辑段3起点 ≤64KB 逻辑段3 ≤64KB 逻辑段4起点 逻辑段4 ≤64KB FFFFFH 图4.2逻辑段在物理存储器中的位置
FFFFFH 逻辑段1起点 逻辑段2起点 逻辑段3起点 逻辑段4起点 00000H 逻辑段1 ≤64KB 逻辑段2 ≤ 64KB 逻辑段3 ≤ 64KB 逻辑段4 ≤ 64KB 图4.2 逻辑段在物理存储器中的位置