您好,欢迎访问一九零五行业门户网

微型计算机的基本工作原理

微型计算机是通过执行程序来工作的,机器执行不同的程序就能完成不同的任务。因此,微型计算机执行程序的过程体现了微型计算机的基本工作原理。下面通过程序执行过程说明微型计算机的基本工作原理。 1.指令和程序
指令是控制计算机操作的代码,又称指令码。指令码由操作码和地址码构成。操作码用于控制机器执行何种操作;地址码用于指示参加操作的操作数。指令码的格式为:
操作码︱地址码
指令用计算机可识别的二进制代码形式表示,这种代码称为机器码。但机器码既不便于记忆又不便于书写,因此人们通常采用助记符表示指令,如表1-4所示。
一种微处理器所有指令的集合或指令的全体称为它的指令系统。微处理器类型不同,它的指令系统也不一样,因此intel8050有78条指令,mcs-51系列中的80c51有111条指令等等。
程序是为完成某项任务而由指令系统中的若干指令组成的有序集合。编制程序称为程序设计。计算机可直接识别和执行的用机器码编写的程序,称为目标程序。用指令的助记符编写的程序称为汇编语言源程序,该程序计算机不能识别和执行,需经汇编程序汇编生成目标程序才能被计算机执行。由此可见,计算机只能执行机器码程序。
表1 指令的三种形式
机器码
机器码
助记符
功能
01110100 00010101
74 15h
mov a, #15h
(a) ←15h
00100100 00101011
24 2bh
add a, #2bh
(a) ←(a)+2bh
10000000 11111110
80 feh
sjmp $
停止
2.程序执行过程举例
图1是计算21+43的程序。以此为例说明微型计算机的工作原理。该程序由三条指令组成,即为:
mov a, #15h
add a, #2bh
sjmp $
每条指令均为双字节指令(即第一字节为操作码,第二字节为操作数)。第一条指令的作用是把15h传送到累加器a;第二条指令是加法指令,它把累加器a中的15h和2bh相加,将结果保存在累加器a中;第三条是停机指令,执行后计算机处于动态停机状态。为了执行程序,首先将程序放入内存,假设从3000h单元开始存放程序,共占用了6个存储单元;然后将程序在内存的起始地址3000h放入程序计数器pc,如图1(a)所示,此时即可让计算机开始执行程序。
图1 程序执行过程中pc的变化
(1)执行第一条指令
第一条指令是双字节指令,执行过程为:
①微操作控制器将程序计数器pc中的地址3000h经地址寄存器送入地址总线后,向存储器发出读信号,同时使程序计数器pc中的内容自动加1而变成3001h,为读取
指令的第二个字节做好准备;
②存储器根据地址总线上的地址找到3001h存储单元,在读信号控制下读出3001h单元的内容即操作码74h送到数据总线上;
③经数据总线将操作码74h送入指令寄存器ir,经缓冲后送入指令译码器id;
④经指令译码器id对操作码74h译码并结合时序部件产生微操作序列,将程序计数器pc中的地址3001h经地址寄存器送入地址总线后发出读信号,同时使程序计数器
pc自动加1变成3002h,为读取第二条指令做好准备;
⑤存储器由地址总线中的新地址3001h把3001h单元的内容15h送入数据总线;
⑥微操作控制序列将数据总线上的操作数15h送人累加器a中。
至此,第一条指令执行结束,将3001h单元中的第一个操作数15h送人累加器a。
(2)执行第二条指令
第二条指令也是双字节指令,第一字节24h为操作码,指示进行加法操作,两个操作数中一个在累加器a中,另一个为该指令的第二个字节。
第一条指令执行结束,程序计数器pc中内容为3002h。图1(b)为将要执行的第二条指令的内存地址。首先将pc中的地址3002h送入地址总线并向存储器发出读
信号,同时pc加1而变为3003h。存储器由地址总线上的地址找到3002h单元,在读信号的控制下,读出操作码24h经数据总线送人ir。经ir译码,将pc中的3003h送入地址
总线,发出读信号,同时使pc自动加1变为3004h,则pc指向第三条指令,如图1(c)所示。在操作码24h的微操作控制下从存储器3003h单元读出操作数2bh送入tmp,控
制alu将累加器a中15h和tmp中的2bh相加,将两数的和经内部总线送入累加器a,并根据运算结果设置程序状态字psw某些状态位的值,完成本条指令的执行。
(3)执行第三条指令
第三条指令的执行过程和第一、第二两条指令类似,先读取指令,分析、执行指令后,mpu处于动态停机状态。
至此,整个程序的执行结束。
其它类似信息

推荐信息