《自考视频课程》名师讲解,轻松易懂,助您轻松上岸!低至399元/科!
一、一个模型机
为了使初学者了解微型计算机的工作过程,我们以图1-5所示的简化的模型机为例进行说明。为简明起见,图中只画出内存储器和微处理器,并假定要执行的程序以及数据已存入内存储器中。
图1-5 一个模型机
图中微处理器由三部分组成:
(1)控制器。由指令寄存器IR(Instruction Register)、指令译码器ID(Instruction Decoder)和可编程逻辑阵列PLA(Programmable Logic Array)组成,由PLA产生控制信号。
(2)运算器。其中算术逻辑部件ALU的两个输入端表示为I1和I2,I1由累加器AL提供,I2可以来自寄存器BL,也可来自数据寄存器DR(Data Register)提供的从内存储器读出的内容。输出端表示为O,输出运算结果,通过数据总线传送到指定的目的地。标志寄存器F(Flag)用来存放运算结果的某些特征。
(3)寄存器组。模型机的微处理器中的寄存器只画出AL、BL、AR、DR和IP,要执行的指令地址由指令指针IP(Instruction Pointer)给出,送地址寄存器AR(Address Register), 再通过微处理器的地址总线AB(Address Bus)寻址内存储器中相应的存储单元,从中读出一条指令的指令代码由微处理器的数据总线DB(Data Bus)送数据寄存器DR,再经过指令寄存器IR、指今译码器ID和定时控制电路PLA发出执行该指令所需的各种控制信号。
模型机中存储器结构如图1-6所示。
图1-6 模型机中存储器结构
存储器由1024(1K)个单元组成,用三位16进制数000H~3FFH表示各单元的地址,每个单元存放8位二进制信息(用二位16进制数表示)。由地址总线AB上送来的内存地址(10位二进制数),经过内存储器中的地址译码器译码后选中对应的内存单元,然后可对该单元进行指令所要求的读或写操作。
以读操作为例:
设在内存010H单元中的内容为5AH(01011010B),现要将其读出。首先,微处理器中地址寄存器给出地址010H,送上地址总线AB送入内存储器,经内存中地址译码器译码后,选中010H单元,同时微处理器中PLA发出存储器读的控制命令前一单元fix = v ns = "urn:schemas-microsoft-com:vml" /> ,在该信号作用下将010H单元内容5AH送上数据总线并传送到微处理器中的数据寄存器DR,根据指令要求送到目的地。上述存储器读过程见图l-7所示。
图1-7 存储器的读操作
二、模型机中指令的执行过程
模型机中指令的执行过程可用三条汇编指令形式表示的程序表示,即为
MOV AL,09H
ADD AL,12H
HLT
第一条指令 MOV AL,09H是把立即数09H送入累加器AL;第2条指令ADD AL,12H是把AL中的内容(即上一条指令操作结果AL=09H)同立即数12H相加,结果为09H+12H=IBH存入AL中;第三条指令HLT为暂停指令。可见这三条指令的功能为把09H和12H(即10进制数18)相加后存放在AL中。
微处理器只能识别机器码,上述指令以机器码形式表示如下
MOV AL,09H——10110000B(B表示二进制码)
00001001B
ADD AL,12H——00000100B
HLT——11110100B
三条指令共5个字节,存放在内存储器中000H~004H 5个存储单元中,如图1-8所示。
1. 取第一条指令操作码的操作过程
操作过程如图1-9所示。
首先将第一条指令第一字节的地址000H赋予IP,然后进入第一条指令的取指操作(实际上是取操作码)。
1)IP的值000H送入地址寄存器AR;
2)IP的内容自动加1,即000H变为001H;
图1-8 指令在内存中存放示意图
图1-9 取第一条指令操作码的操作过程
3)地址寄存器AR将地址码000H通过地址总线送到存储器,经译码后选中000H单元;
4)微处理器给出读命令 ;
5)所选中的000H单元内容B0H送上数据总线;
6)数据总线上的数据B0H送上数据寄存器DR;
7)因是取指操作,取出的是指令操作码B0H,即由DR送到指令寄存器IR;
8)IR中的操作码经指令泽码器ID译码后,通过PLA发出执行该指令的有关控制命令。
第一条指令的操作码B0H经译码后知道这是一条把立即数09H送累加器AL的指令,立即数09H在指令的第二字节中,则执行第一条指令就是从内存中取出指令第二字节(即09H)送入AL。
2. 执行第一条指令(即取第一条指令第二字节)的操作过程
操作过程如图1-10所示。
图1-10 执行第一条指令的操作过程
1)将IP的内容001H送入AR;
2)IP的内容自动加1(002H);
3)AR通过地址总线AB把地址码00lH送到内存储器,经地址译码后选中相应的存储单元;
4)微处理器给出读命令 ;
5)所选中的001H单元内容09H送上数据总线DB;
6)DB上的数据09H送上数据寄存器DR;
7)由指令操作码的译码可知,指令要求把第二字节的数据送入累加器AL,则DR上的数据09H通过内部总线送到AL。则第一条指令的执行过程全部完成。
然后,进入第二条指令的取操作码阶段,以及第二条指令的执行阶段,如图1-11和图1-12所示。具体过程不再赘述。
图1-11 取第二条指令操作码的操作过程
图1-12 执行第二条指令的操作过程
至此,该程序段的主要工作(09H+12H=1BH送入AL)已经完成,第三条指令HLT只是告诉微处理器进入“暂停”阶段。这是通过第三条指令HLT的机器码F4H的取指、译码后实现的,具体操作过程同前述有关操作。
本文标签:中山自考 工学类 微型计算机原理及应用学习笔记 微型计算机的工
转载请注明:文章转载自(http://www.zszkw.cn)
《中山自考网》免责声明:
1、由于考试政策等各方面情况的调整与变化,本网提供的考试信息仅供参考,最终考试信息请以省考试院及院校官方发布的信息为准。
2、本站内容部分信息均来源网络收集整理或来源出处标注为其它媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。联系邮箱:812379481@qq.com