80386处理器的寻址方式 在实式模式下,80386处理器的最大寻址空间仍然为1M,和8086/8088相似。即段地址*10H+段内偏移地址,从而形成20位地址。此种模式下,段基址是16的倍数,长度最大不超过64K。在保护模式下,80386处理器可以使用所有的物理内存。段基址可以是32位,也可以不是16的倍数, 同时它的最大长度为4G,这与8086完全不同,在形成逻辑地址时用段基址直接加上段内偏移地址,而并不将段基址左移4位(乘以16)。通常情况下,除了 访问堆栈外,默认的段都为DS,有跨段前缀就另当别论了。在以BP,EBP,ESP作为基址寄存器时,这时默认的段寄存器应该是SS,举几个简单的例子:MOV EAX,[SI];这里的段寄存器是DSMOV EAX,FS:[ESI];这里的段寄存器是FS,因为指令中使用跨段前缀显示指定了MOV EAX,[BP];这里的段寄存器是SS,因为指令中使用了BP作为基址寄存器MOV EAX,GS:[BP];这里段寄存器是GS,因为指令中使用跨段前缀显示指定了80386中32位数的操作的顺序是“高高低低”,即是说高16-》高16,高8-》高8,低16-》 低16,低8-》低8,这和8086相似。同时80386微处理器兼容所有8086的寻址方式,而且对8086的寻址方式有很大的改进和扩展。在8086 下,只允许BP,BX,SI,DI作为寻址寄存器,但在80386下,8个通用寄存器都可以作为寻址寄存器。不过有一点要注意的是在基址变址寄存器寻址方 式或相对基址变址寻址方式中,段寄存器由基址寄存器来确定,而不是由变址寄存器来确定,同时除E