汇编 80x86 计算机组织

8086 计算机组织

基本概念

工作方式:

  • 实模式 8086工作方式
  • 保护模式 80286+,提供虚拟存储的关系和多任务机制
  • 虚86魔式 80386+ 一台机器可同时模拟多个8086处理器的工作
  • 系统管理模式 供系统设计人员实现十分高级功能的工作方式

80x86 寄存器组

  • 程序可见寄存器 汇编语言中用到
  • 程序不可见寄存器 系统所用

通用寄存器

汇编 80x86 计算机组织_第1张图片

除了下图阴影区之外的寄存器是 8086/8088和80286 所具有的寄存器,都是i6位寄存器。
AX BX CX DX 都可称为数据寄存器,用来暂时存放计算过程中的操作数、结果或其他信息。
都可以 以字(16位)形式访问,或者以字节访问。AX AH AL 分别访问高字节和低字节

SP\BP\SI\DI只能以字(16位)访问

汇编 80x86 计算机组织_第2张图片

专用寄存器
IP 16位寄存器 指令指针寄存器,用来存放代码段中的地址偏移,始终指向下一条指令的首地址,和段寄存器CS连用确定下一条指令的物理地址。

SP 16位寄存器 堆栈指针寄存器 SP存放栈顶偏移

FLAGS 16位寄存器 又称程序状态寄存器PSW 存放条件码编制、控制标志、系统标志的寄存器

汇编 80x86 计算机组织_第3张图片
汇编 80x86 计算机组织_第4张图片

段寄存器

专门用于存储器寻址

汇编 80x86 计算机组织_第5张图片

实模式存储器寻址

  • 8086 8088的goon工作方式,工作在20位地址
  • 单任务工作方式,独占系统所有资源
  • 地址总线20位 00000H ~ FFFFFH

数据总线宽度16位,如何解决20位的寻址?

1、存储器地址分段

每个段的最大长度 2 16 2^{16} 216B,段内地址是连续的线性增长的

小段 paragraph
从 0地址开始,每16字节为一小段
小段首地址特征:在十六进制表示的地址中,最低位为0(即20位地址的低四位为0)

  • 逻辑地址 是程序中使用的地址,它由段基址和段内偏移值所组成,段基址与段内偏移值都为16位的二进制数。

  • 物理地址 也叫实际地址或绝对地址,是CPU访问存储器时实际使用的地址,为20位地址。

  • 段地址:段起始地址的高16位

  • 偏移地址:段内相对于段起始地址的偏移值(16位)(有效地址EA)

汇编 80x86 计算机组织_第6张图片

汇编 80x86 计算机组织_第7张图片

汇编 80x86 计算机组织_第8张图片

汇编 80x86 计算机组织_第9张图片

保护模式存储器寻址

  • 保护模式:工作在80286+,工作在系统所提供地址,多任务方式下,根据任务的特权级请求使用系统资源

  • 多任务处理功能:多个应用程序能同时在一台计算机上运行,而且彼此必须相互隔离,使一个应用程序的故障或缺陷不会破坏系统,也不会影响其它应用程序的运行

  • 虚拟存储

逻辑地址

实模式逻辑地址 = 段地址:偏移地址

保护模式逻辑地址 = 选择器:偏移地址

选择器存放在段寄存器中,不能直接表示段基地址,而由操作系统通过一定的方法取得段基地址在和偏移地址相加,从而且的存储单元的物理地址。

偏移地址为32位,最大段长4GGB

汇编 80x86 计算机组织_第10张图片

描述符

描述符: 用来描述短地大小、断在存储器中的位置、及控制信息和状态信息,由及地址、界限、访问权、附加字段四部分组成。

  • 基地址:指定段的起始地址
  • 界限:存放该段的长度
  • 访问权:说明该段在系统中的功能没并给出该段的一些控制信息
  • 附加字段: 表示该段的一些属性,描述符部分,由操作系统设置不是由用户设定

汇编 80x86 计算机组织_第11张图片

你可能感兴趣的:(汇编,开发语言)