微型计算机原理及应用学习笔记 微型计算机的工
一、一个模型机
为了使初学者了解微型计算机的工作过程,我们以图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的取指、译码后实现的,具体操作过程同前述有关操作。
【免责声明】
1、由于各方面情况的调整与变化,本网提供的考试信息仅供参考,考试信息以省考试院及院校官方发布的信息为准。
2、本网信息来源为其他媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。联系邮箱:952056566@qq.com
相关《微型计算机原理及应用学习笔记 微型计算机的工》的文章
甘肃自考便捷服务
- 微信交流群
- 微信公众号
微信扫一扫加入考生微信群
①学习交流、②考试提醒、③自考解答
④自考资料、⑤新闻通知、⑥备考指导
甘肃自考网微信公众号
随时获取甘肃省自考政策、通知、公告
以及各类学习微信公众号
- 热点文章
- 常见问题