CPU--实模式与保护模式】的更多相关文章

实模式和保护模式区别及寻址方式 转载请注明出处:http://blog.csdn.NET/rosetta 64KB-4GB-64TB? 我记得大学的汇编课程.组成原理课里老师讲过实模式和保护模式的区别,在很多书本上也有谈及,无奈本人理解和感悟能力实在太差,在很长一段时间里都没真正的明白它们的内含,更别说为什么实模式下最大寻址空间为1MB?段的最大长度不超过64KB?而保护模式下为啥最大寻址能力就变成了64TB?每个段最大也达4GB? 更甚者分段和分页这两个高深的概念像我这种菜鸟怎么也理解不了啊!…
★PART1:进入保护模式 1. 全局描述符表(Global Descriptor Table,GDT)        32位保护模式下,如果要使用一个段,必须先登记,登记的信息包括段的起始地址,段的界限和各种访问属性,如果偏移地址超过了段的界限,就会引发异常中断.和一个段有关的信息需要8个字节来描述,这被称为段的描述符(Segement Descriptor),每个段都需要一个描述符,为了存放描述符,需要在内存中开辟一段空间.这些描述符集中存放,构成了一个描述符表. 为了跟踪全局描述符表,处理…
★PART1:32位的x86处理器执行方式和架构 1. 寄存器的拓展(IA-32) 从80386开始,处理器内的寄存器从16位拓展到32位,命名其实就是在前面加上e(Extend)就好了,8个通用寄存器被命名为EAX,EBX,ECX,EDX,ESI,EDI,ESP和EBP,同样的,操作的时候必须要和寄存器的长匹配,比如下面的操作就是错的. 32位通用寄存器的高16位不可以单独使用,但是他们的低16位依然可以按照8086的使用方法一样使用.处理器在32位保护模式下可以使用全部的32条地址线,访问4…
本文是原书第12章的学习笔记. 说句题外话,这篇博文是补写的,因为让我误删了,可恶的是CSDN的回收站里找不到! 好吧,那就再写一遍,我有坚强的意志.司马迁曰:“文王拘而演<周易>:仲尼厄而作<春秋>:屈原放逐,乃赋<离骚>:左丘失明,厥有<国语>:孙子膑脚,<兵法>修列:不韦迁蜀,世传<吕览>……”好了,不煽情了,进入正题. 第12章的代码如下. 1 ;代码清单12-1 2 ;文件名:c12_mbr.asm 3 ;文件说明:硬盘主引…
一.Intel 32 位处理器的工作模式 如上图所示,Intel 32 位处理器有3种工作模式. (1)实模式:工作方式相当于一个8086 (2)保护模式:提供支持多任务环境的工作方式,建立保护机制 (3)虚拟8086模式:这种方式可以使用户在保护模式下运行8086程序(比如cmd打开的console窗口,就是工作在虚拟8086模式) 有几点需要特别说明: (1)保护模式可分为16位和32位的,由段描述符中的D标志指明.对于32位代码段和数据段,这个标志总是设为1:对于16位代码和数据段,这个标…
一.80286的工作模式 80286首次提出了实模式和保护模式的概念. 实模式:和8086的工作方式相同: 保护模式:提供了存储器管理机制和保护机制,支持多任务. 二.80286的寄存器 (一)通用寄存器 80286的通用寄存器和8086一样,有AX,BX,CX,DX,BP,SP,SI,DI: (二)IP 80286的指令指针寄存器也和8086一样,没有什么特别的. (三)标志寄存器 80286的标志寄存器同8086相比,增加了IOPL(特权级)和NT(子任务嵌套),这两个字段只在保护模式中使用…
首先来段题外话:之前我发现我贴出的代码都没有行号,给讲解带来不便.所以从现在起,我要给代码加上行号.我写博客用的这个插入代码的插件,确实不支持自动插入行号.我真的没有找到什么好方法,无奈之下,只能按照网友的说法,在VIM中给每行代码加上行号,然后再贴出来. 在VIM中每一行都添加上行号的方法是: :%s/^/\=line(".")/ 对,只要执行这个命令就可以了.至于为什么这样写,可以参考我的另一篇博文 <在VIM中添加行号的方法>http://blog.csdn.net/…
在说正题之前,我们先看2个概念. 1.指令集架构(ISA) ISA 的全称是 instruction set architecture,中文就是指令集架构,是指对程序员实际"可见"的指令集,包含了程序员编写一个能正确运行的二进制机器语言程序的所有信息,涉及到指令. I/O 设备等.例如 Intel 的 IA-32.Intel 64.ARM 的 ARMv7.ARMv8 等等. 2.微架构 微架构(Microarchitecture)又称为微体系结构/微处理器体系结构.是将一种给定的指令集…
[-1]写在前面: 以下部分内容总结于 http://blog.csdn.net/ruyanhai/article/details/7181842 complementary: 兼容性是指运行在前期CPU,如8086/8088上的的程序,也可以运行在其以后的处理器,如80286上: [0]看看intel处理器的发展历程 [1]8086/8088的寻址和问题 1.1)寻址:在8086/8088中,只有20根地址总线,所以可以访问的地址是2^20=1M,但由于8086/8088是16位地址模式,能够…
x86实模式到保护模式  李忠 王晓波 第3到4章 各个进制间的转换省略 实验环境 编译器  nasm 虚拟机 virtual box 小程序  hexview   观察编译后的机器代码 fixvhdwr 向虚拟硬盘写入数据 计算机启动简介 cpu的引脚  reset    接受复位信号   电平由低变高时    cpu进行硬件的初始化   cs的内容为0xffff     其余寄存器为0 内存   dram  随机访问存储器 rom  只读存储器    例如bios系统需要无电存储 8086…