一、80286的工作模式

80286首次提出了实模式和保护模式的概念。

实模式:和8086的工作方式相同;

保护模式:提供了存储器管理机制和保护机制,支持多任务。

二、80286的寄存器

(一)通用寄存器

80286的通用寄存器和8086一样,有AX,BX,CX,DX,BP,SP,SI,DI;

(二)IP

80286的指令指针寄存器也和8086一样,没有什么特别的。

(三)标志寄存器

80286的标志寄存器同8086相比,增加了IOPL(特权级)和NT(子任务嵌套),这两个字段只在保护模式中使用。

(四)MSW

MSW(机器状态字)是80286新设置的16位寄存器,在80386及其后续的CPU中,已经把MSW扩展为4个32位的控制寄存器CR0、CR1、CR2和CR3,原来的MSW功能由CR0的低16位来实现。


MSW的位0是启用保护模式(Protection Enable)标志,也就是我们常说的PE位。PE=1时,开启保护模式;PE=0时表示工作在实模式。

(五)段寄存器

8086中的段寄存器,在808286中称为段选择子或者段选择器。当进行逻辑地址到实地址的变换时,用它来选择描述符表中的一个描述符。段选择子的格式和含义同32位处理器的段选择子相同,这里不再赘述。

(六)段描述符

字段说明

P位、DPL位、A位同32位处理器的段描述符含义相同。

【S】S=1代表代码段或者数据段描述符;S=0代表非段描述符;

【E】相当于32位处理器描述符的X位。E=1表示代码段描述符;E=0表示数据段描述符;

对于代码段描述符:

【C】相当于32位处理器段描述符的C(一致性)位。

【R】相当于32位处理器段描述符的R位。R=1时可读,可执行;R=0时仅执行;

对于数据段描述符:

【ED】相当于32位处理器段描述符的E(扩展方向)位。

【W】相当于32位处理器段描述符的W(是否可写)位。

(七)存储器寻址

物理地址由段描述符中的24位的段基址和16位的偏移量相加而成。

关于80286——《x86汇编语言:从实模式到保护模式》读书笔记15的更多相关文章

  1. 16位模式/32位模式下PUSH指令探究——《x86汇编语言:从实模式到保护模式》读书笔记16

    一.Intel 32 位处理器的工作模式 如上图所示,Intel 32 位处理器有3种工作模式. (1)实模式:工作方式相当于一个8086 (2)保护模式:提供支持多任务环境的工作方式,建立保护机制 ...

  2. ASM:《X86汇编语言-从实模式到保护模式》第10章:32位x86处理器的编程架构

    ★PART1:32位的x86处理器执行方式和架构 1. 寄存器的拓展(IA-32) 从80386开始,处理器内的寄存器从16位拓展到32位,命名其实就是在前面加上e(Extend)就好了,8个通用寄存 ...

  3. 存储器的保护(三)——《x86汇编语言:从实模式到保护模式》读书笔记20

    存储器的保护(三) 修改本章代码清单,使之可以检测1MB以上的内存空间(从地址0x0010_0000开始,不考虑高速缓存的影响).要求:对内存的读写按双字的长度进行,并在检测的同时显示已检测的内存数量 ...

  4. 存储器的保护(一)——《x86汇编语言:从实模式到保护模式》读书笔记18

    本文是原书第12章的学习笔记. 说句题外话,这篇博文是补写的,因为让我误删了,可恶的是CSDN的回收站里找不到! 好吧,那就再写一遍,我有坚强的意志.司马迁曰:“文王拘而演<周易>:仲尼厄 ...

  5. 进入保护模式(三)——《x86汇编语言:从实模式到保护模式》读书笔记17

    (十)保护模式下的栈 ;以下用简单的示例来帮助阐述32位保护模式下的堆栈操作 mov cx,00000000000_11_000B ;加载堆栈段选择子 mov ss,cx mov esp,0x7c00 ...

  6. 进入保护模式(二)——《x86汇编语言:从实模式到保护模式》读书笔记14

    首先来段题外话:之前我发现我贴出的代码都没有行号,给讲解带来不便.所以从现在起,我要给代码加上行号.我写博客用的这个插入代码的插件,确实不支持自动插入行号.我真的没有找到什么好方法,无奈之下,只能按照 ...

  7. 《X86汇编语言:从实模式到保护模式》读书笔记之引言

    有幸结识了<X86汇编语言:从实模式到保护模式>一书.我觉得这本书非常好,语言活泼,通俗易懂,源码丰富,受益匪浅.读罢一遍,意犹未尽.于是打算再读一遍,并把自己的读书所学总结成笔记,一来给 ...

  8. 硬盘和显卡的访问与控制(一)——《x86汇编语言:从实模式到保护模式》读书笔记01

    本文是<x86汇编语言:从实模式到保护模式>(电子工业出版社)的读书实验笔记. 这篇文章我们先不分析代码,而是说一下在Bochs环境下如何看到实验结果. 需要的源码文件 第一个文件是加载程 ...

  9. 程序的载入和运行(五)——《x86汇编语言:从实模式到保护模式》读书笔记25

    程序的载入和运行(五)--<x86汇编语言:从实模式到保护模式>读书笔记25 前面几篇博文最终把代码分析完了.这篇就来说说代码的编译.运行和调试. 1.代码的编译及写入镜像文件 之前我们都 ...

随机推荐

  1. java反射的补充:桥接方法以及Spring中一些工具类

    在上一篇博文中:http://www.cnblogs.com/guangshan/p/4660564.html 源码中有些地方用到了 this.bridgedMethod = BridgeMethod ...

  2. 楊輝三角C#版

    class Program { static void Main(string[] args) { Console.WriteLine("please input a number:&quo ...

  3. ML.NET 0.9 版本发布---.net下的机器学习引擎

    欢迎来到 2019年!在过去的9个月里, 我们一直在为ML.NET添加新的特征和改进相关功能.在提交1.0版本之前,我们将专注于包的整体稳定性并对API进行不断优化, 扩大测试的覆盖面并对开发文档进行 ...

  4. 201621123012《Java程序设计》第12次学习总结

    作业12-流与文件 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 面向系统综合设计-图书馆管理系统或购物车 使用流与文件改造你的图书馆管理系统或购物车 ...

  5. NOIP simulation

    NOIP 模拟赛Day 1题目名称LGTB 玩扫雷LGTB 学分块LGTB 打THD英文代号mine divide thd时限1 秒1 秒1 秒输入文件mine.in divide.in thd.in ...

  6. 为什么要使用rem

    为什么要使用rem 今天2019年4月16号更新,模仿网易移动端的的写法: html { font-size: 13.33333vw } @media screen and (max-width:32 ...

  7. Elasticsearch 5.4.1 安装简易文档

    1. 系统安装JDK 1.8.0_131或以上版本的JDK 2. 创建软件安装目录 # mkdir -p /opt/software3. 创建elk用户,新版的ELK不在支持使用root账户运行程序, ...

  8. CentOS 安装系统侦察工具

    Nessus setup: rpm -ivh http://downloads.nessus.org/nessus3dl.php\?file\=Nessus-6.10.2-es6.x86_64.rpm ...

  9. 正则表达式,sed简单用法

      一. 正则表达式 1. 常见的正则表达式字符 [] 匹配字符集 grep "bl[lo]g" oldboy.txt 表示字符‘l’或者‘o’都可匹配 * 重复前面字符任意次 g ...

  10. 如何 3D 打印一个密码锁

    简评:这篇文章介绍怎么用 3D 打印机做一个密码锁,巧妙地利用机械结构的变化实现锁的功能,相当有趣! 3D 打印机非常适合打印静态物体.如果你够聪明,还可以打印出功能物件.如果你特别特别聪明,那你能做 ...