80386与8086区别以及保护模式

在windows环境下,cpu的工作方式有三种:实模式:和8086工作一样(一般为开机时初始化计算机的时候),此时一个任务独占cpu

                                                        保护模式:即计算开机后所处的状态,此时可以运行多个程序,多线程。

                                                        虚拟8086模式:即计算机处于保护模式时运行的dos程序,此时处于保护模式,即在保护模式下模拟实模式,使之前8086下能运行的软                                                                                件在保护模式下仍能运行,实现兼容。

 

80386相对于8086来说,寻址机制改变了,因为80386需要能寻找到更大的地址,所以之前的段地址:偏移地址已经不够如此大的空间,所以使用一种新的机制,直接用一个通用寄存器来寻址(64位),而因为windows的保护机制(对操作有限制),系统需要知道各个段的信息(如是否可读可写),这样才更好的执行保护,此时便有了段描述表,即将段的信息存储成一张表,然后用段寄存器来寻址(段寄存器被称为段描述符),此时就增加了两个寄存器,即GDTR(全局描述表),和LDTR(局部描述表),LDTR通过windows的分页机制来进行定位。

windows对中断的处理不能向8086那样,windows对用户的操作作了一些权限,用户级的代码不能随便使用系统级的代码,就肯定不能像8086那样,还可以随便改变中断程序,80386提供了一个门,用来访问中断程序,低级程序调用高级程序,只能通过门来调用,于是80386增加了一个寄存器IDTR,用来存放IDT(中断描述表)的地址。

 

80386相对于8086寻址更加灵活,还可以改变中断描述表的地址等,但也对用户的操作作了更多的限制。

posted @ 2016-05-04 10:01  xhyxhy  阅读(2874)  评论(0编辑  收藏  举报