小结 第二章

一个典型的 CPU由运算器、控制器、寄存器等器件组成。
内部总线实现CPU内部各个器件之间的联系。
外部总线实现CPU和主板上其它器件的联系。
xCPU
 xCPU
通常用字长来描述CPU。例如,字长16,则称16位CPU。
 CPU字长
CPU在单位时间内能一次处理的二进制位数。
该指标反映出CPU内部运算处理的速度。
 
CPU通过外部数据总线与内存之间一次能够传送的数据位。

8086CPU有14个寄存器:AX、BX、CX、DX、SI、DI、SP、IP、SS、DS、ES、PSW。

CPU中的寄存器都是8位的。

当8086CPU要读写内存时:

     (1) CPU中的相关部件提供两个16位的地址,一个称为段地址,另一个称为偏移地址;

     (2)段地址和偏移地址通过内部总线送入一个称为地址加法器的邮件;

     (3)地址加法器将两个16位地址合成位一个20位的物理地址;

     (4)地址加法器通过内部总线将20位物理地址送入输入输出控制电路;

    (5)输入输出控制电路将20位物理地址送上地址总线;

    (6)20位物理地址被地址总线传送到存储器。

所有的内存单元构成的存储空间是一个一维的线性空。每一个内存单元在这个空间中都有唯一的地址,这个唯一的地址称为物理地址

段」8086为解决用16位寄存器表示20位的物理地址而引入的一个逻辑上的概念
可以根据需要,将地址连续、 起始物理地址为 16倍数的一组内存单元(不超过64KB)当作一个「段」使用。

段地址*16+偏移地址=物理地址

其中 :
 「段地址: 偏移地址」  也称「逻辑地址」 
 「段地址 × 16  构成段的起始物理地址,故根据需要划分段使用时,段的起始物理地址必须是16的倍数。
 

CS为代码段寄存器,用于存放代码段;IP为指令指针寄存器,用于存放CPU将要读取的指令在代码段中的偏移地址。

CS:IP对应的物理地址存放的是CPU将要读取的指令。

             (CS) × 16 + (IP)   指令的物理地址

jump指令:可以修改CS、IP的指令。

相关注意事项
 
(1) CPU从何处执行指令是由CS和IP中的内容决定的。
(2) 程序员可以通过改变CS、IP中的内容来控制CPU执行目标指令。
(3) IP和CS值的修改不能通过mov指令实现,需借助移指令 (如jmp, call)。
 

猜你喜欢

转载自www.cnblogs.com/20171308170-hc/p/9786608.html
今日推荐