问答网

当前位置: 首页 > 知识问答 > 其物理寻址范围为什么是00000H 0FFFFFH 怎么算的

其物理寻址范围为什么是00000H 0FFFFFH 怎么算的

知识问答 浏览6次

答:8086CPU寻址范围1MB。因为8086CPU地址线为20条,2^20=1024KB,即1MB。8086系统中,指令仅给出16位地址,与寻址有关的寄存器也只有16位长,因此寻址范围只有64KB,为了寻址1MB,所以分成四个逻辑段。

当CPU访问内存时,段寄存器的内容(段基址)自动左移4位(二进制),与段内16位地址偏移量相加,形成20位的物理地址。

采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是 16位二进制数。 物理地址:存储器的绝对地址,从00000H~FFFFFH,是CPU访问存储器的实际寻址地址(也称为绝对地址) 16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址,这相当于完成如下的地址运算: 物理地址=段基址×16+偏移地址 ?采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是 16位二进制数。 物理地址:存储器的绝对地址,从00000H~FFFFFH,是CPU访问存储器的实际寻址地址(也称为绝对地址) 16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址,这相当于完成如下的地址运算: 物理地址=段基址×16+偏移地址。