在CPU中:
运算器进行信息处理;
寄存器进行信息存储;
控制器控制各种器件进行工作;
内部总线连接各种器件,在它们之间进行数据传送。
8086CPU有14个寄存器:(8086所有寄存器16位)
AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW
2.1 通用寄存器——
通用寄存器:AX、BX、CX、DX;
16位可分两个独立使用的8位寄存器:
AX=AH+AL;BX=BH+BL;CX=CH+CL;DX=DH+DL。
AX的低8位构成AL,高8位构成AH寄存器。
2.2 字在寄存器中的存储——
字节:byte,8个bit;
字:两个字节,为高位字节和低位字节。
2.3 几个汇编指令——
写汇编指令或寄存器名称时不分大小写。
数据传送或运算时,指令的两个操作对象的位数应当一致。
2.4 物理地址
2.5 16位结构的CPU——
16位结构描述了一个CPU具有的结构特性:
(1)运算器一次最多可以处理16位的数据;
(2)寄存器的最大宽度为16位;
(3)寄存器和运算器之间的通路为16位。
2.6 8086CPU给出物理地址的方法——
地址加法器:物理地址=段地址*16+偏移地址;
简捷算法:段地址*16 即 左移4位。
2.7 “段地址*16+偏移地址=物理地址”的本质含义——
本质含义:CPU在访问内存时,用一个基础地址(段地址*16)和一个相对于基础地址的偏移地址相加,给出 内存单元的物理地址。
基础地址+偏移地址=物理地址。
2.8 段的概念——
段地址*16:定位段的起始地址(基础地址)。
偏移地址:定位段中的内存单元。
一个段的最大长度为64KB。
2.9 段寄存器——
8086CPU有4个段寄存器:CS、DS、SS、ES。
2.10CS和IP——
CS:代码段寄存器。
IP:指令指针寄存器。
8086机中,任意时刻,CPU将CS:IP指向的内容当作指令执行。
2.11修改CS、IP的指令——
jmp指令:jmp 段地址:偏移地址
用指令中给出的段地址修改CS,偏移地址修改IP。
“jmp 某一合法寄存器”:用寄存器中的值修改IP。
2.12代码段
实验1 查看CPU和内存,用机器指令和汇编指令编程
略。
END
2012年01月01日