Intel 符号惯例 常用词汇概念

来源:互联网 发布:淘宝上卖宿舍用品的店 编辑:程序博客网 时间:2024/05/17 02:32

1 位和字节顺序:

1bit=1位 8位=1字节(byte) cpu操作最小单位是byte,cpu是按照字节编址的

2 分段寻址

        将一段内存当做独立的寻址空间就是内存的分段,一个程序可以有指令段,堆栈段,数据段. 相当于16位汇编中使用 标记 segment .... ends 标记 来分配一个段,在汇编中访问段地址使用    段寄存器:偏移地址 来寻址

3 异常

        由指令引发的错误事件.

4 全局和局部描述符表

        在32位保护模式下操作时,所有的内存访问要么通过全局描述附表 (GDT)要么通过局部描述附表(LDT),在这些表里存放的是段描述符,段描述符包含了段的基址,访问特权,类型,用法信息. 其中GDT包含所有的LDT.

4 系统段,描述符和门

        系统段:系统定义了两个系统段: 任务状态段(TSS)和LDT(GDT不被看做段,因为它不能通过段选择符和段描述符访问,通过GDTR寄存器访问)
        系统架构也定义了一套称为门的描述符(调用门,中断门,陷阱门,任务门),即"门"也是描述符,是描述符就会在GDT中. 这些门提供了一种访问运行在不同于应用程序特权级的系统过程和处理程序的方法.即一个低等级的程序通过门可以访问高等级的代码
5 任务状态段(TSS)和任务门

        TSS定义了任务执行环境的状态.这些状态包括通用寄存器,段寄存器,EFLASGS寄存器,EIP寄存器和段选择符一集3个堆栈段(特权0,1,2各一个堆栈)的指针状态,也包括了与任务相应的LDT的选择符和页表的基地址.

6中断和异常处理

        外部中断,软件中断和异常通常是通过中断描述符表(IDT)处理的,IDT包含了访问中断和异常处理程序的门描述表的集合.IDT也不是通过段选择符和段描述符访问,而是通过IDTR寄存器访问,即IDTR寄存器记录了IDT表的基址

7 内存管理(线性内存,页,页目录,页表)

        系统架构支持物理地址内存或

        者虚拟内存(通过分页). 当用直接物理地址时,线性地址就是物理地址,当使用分页时,所有代码,堆栈,系统段,GDT,IDT都可以将最近访问过页主流在内存中而进行分页.页在物理内存中的位置由页目录和页表来给出.这两个数据结构都保存物理内存中. 

        页目录包含有页表的物理地址,访问提权,内存管理信息. 页目录的基址保存在控制寄存器CR3中.每个任务都可以有自己的页目录.

        页表含有页框的物理地址,访问特权和内存管理信息

8 运行模式

        保护模式:保护模式是处理器的源生模式,在这个模式下涵盖了所有指令和特点,是32位

        实模式:该模式下只能使用8086的编程模式和一些扩展,16位

虚拟86模式:在保护模式中,处理器提供了一种模拟8086的运行,可以再多任务的保护模式 下运行8086的16位程序

9 内存管理寄存器

        GDTR,LDTR,IDTR,TR.这些寄存器指明了那些控制分段内存的数据结构的位置,如GDTR指明GDT(全局描述附表)位置,LDTR指明LDT(局部描述附表)位置,IDTR指明IDT(中断描述符表)位置

        GDTR和IDTR0到15位表示 表的界限,16~47位表示32位线性基地址

        LDTR 0~15位表示描述符在GDT中的索引值,

10 GDTR寄存器

        GDTR一共48位,其实32位保存GDT的基址,16位表示GDT的界限

        表界限只的是GDT中的字节个数

11 LDTR寄存器

        LDTR是16位,保存了指向GDTR中的描述符索引值,LDTR是选择符,指向GDT中的一个描述符,这个描述符中有LDT表的基地址。另外为了LDTR有个48位影子寄存器,用于加快访问速度,每当使用 LLDT +操作数  指令时处理器就会把LDTR指向GDT中的描述符加载到影子寄存器中去。

12 IDTR 中断描述符表寄存器

        IDTR 保存IDT的32位基址16位边界线.

13 任务寄存器TR

        保存16位段选择符,32位基址,16位段界限和当前任务的TSS描述符属性,它引用GDT中的TSS描述符.

14 控制寄存器

        控制寄存器(CR0,CR1,CR2,CR3,CR4)决定了处理器的运行模式和当前正在执行的任务特征

CR0 包含系统控制标志,这些标志控制着处理器的运行模式和状态 CR0的31位=1启用分页,=0不启用

        CR1-保留

        CR2-包含缺页的线性地址

        CR3-包含了页目录的基址和两个标志 PCD和PWT 也称为PDBR寄存器

        CR4-包含一组标志,这些标志启用了架构方面的几个扩展,只有特权0的程序才可以使用mov命令改写

15 装在和保存系统寄存器

        GDTR,LDTR,IDTR和TS都有装在和保存指令用来从寄存器中装在或保存到寄存器中:

        在寄存器指向的表的名称前面加上L句是装在寄存器,将表的基地址和界限从内存装在到寄存器中,加上S是将基址和界限保存到内存中,

        比如GDTR :LGDT指令是将GDT表的基址从内存中装载到寄存器中, SGDT指令是将GDT的基址和界限保存到内存中去

        控制寄存器(CR0,CR1,CR2,CR3,CR4)都是用mov 命令加载的

        

原创粉丝点击