汇编语言 第二章-寄存器

来源:互联网 发布:伴奏升降调软件 编辑:程序博客网 时间:2024/05/17 04:19

一个典型的CPU由运算器、控制器、寄存器等组成.
功能如下:
1. 运算器进行数据的处理
2. 寄存器进行信息存储
3. 控制器控制各种器件进行工作
4. 内部总线连接各种器件,进行数据传输


2.1 通用寄存器

8086CPU所有寄存器都是16位的。
AX、BX、CX、DX这四个寄存器通常用来存放一般性数据,被称为通用寄存器,AX如图所示
这里写图片描述

为了兼容性,16位寄存器可以当作两个8为寄存器试用
这里写图片描述


2.1 物理地址

我们现在讨论8086CPU如何在内部形成内存单元的物理地址

地址加法器采用 物理地址=段地址*16+偏移地址 的方法合成物理总地址。


段寄存器

已知段地址与偏移地址通过地址加法器合成物理地址。

段地址在段寄存器中存放

8086CPU由四个段寄存器:CS DS SS ES

当8086CPU要访问内存时有这四个段寄存器提供内存单元的段地址。

CS和IP是8086CPU两个关键的寄存器,CS为代码段寄存器,IP 为指令指针寄存器。

在8086CPU中,任意时刻CPU将CS:IP指向的内容当作指令执行。
过程如下:
(1)从CS:IP指向的内存单元读取指令,读取的指令进入指令缓存器。
(2)IP=IP+所读取指令的长度,从而指向下一跳指令。
(3)执行指令,转到步骤(1),重复这个过程。

在8086CPU加点或复位后CS=FFFFH,IP=0000H,即CPU刚启动时,FFFF0H单元中的指令8086PC机开机的第一条指令。


修改CS,IP指令

在CPU中,程序员能够用指令读写的部件只有寄存器,程序员可以通过改变寄存器中的内容实现对CPU的控制。CPU从何处执行时由CS,IP的内容决定的,我们可以通过修改CS,IP的值来控制CPU执行命令。

0 0
原创粉丝点击