1、先从存储器入手,如果我们把一个存储体比作一栋大楼,那么每个存储单元可看作大楼的每个房间,每个存储单元可看作每个房间中的一张床位。
2、(显然每个房间都得有一个房间编号)主存的工作方式就是按存储单元的地址号来实现对存储字各位的存(写入)、取(读出)。
【资料图】
3、为能实现按地址访问的方式,主存中还必须配置两个寄存器MAR(Memory Adress Register)和MDR(Memory Data Register)。
4、MAR用来存放欲访问的存储单元的地址,其位数对应存储单元的个数。
5、MDR是存储器数据寄存器,是用来存放从存储体某单元取出的代码或准备往某存储单元存入的代码,其位数与存储字长相等-----------再看控制器,控制器是计算机组成的神经中枢,由它来指挥全机各部件自动、协调地工作。
6、具体而言,它首先要命令存储器读出一条指令,这叫作取指过程。
7、接着,它要对这条指令进行分析,指出指令要完成什么样的操作,并按寻址特征指明操作数的地址,这叫分析过程。
8、最后根据操作数所在的地址,取出操作数并完成某种操作,这叫做执行过程。
9、控制器由程序计数器PC,指令寄存器IR以及控制单元CU几部分组成。
10、-----------接着看I/O子系统,包括各种外部设备及相应的接口。
11、每一个设备都是由I/O接口与主机联系的,它接受CU发出的各种控制命令完成相应的操作。
12、如键盘由键盘接口电路与主机联系;打印机由打印机接口电路与主机联系。
13、启动机器后,控制器立即将程序计数器的内容送至主存的MAR(记作PC—MAR)并命令存储器做读操作,此刻主存“0”号单元的内容“0000010000001000”便被送入MDR内。
14、然后由MDR送至控制器的IR(记作MDR—IR),完成了一条指令的取指过程。
15、经CU分析操作码“000001”为取数指令,于是CU又将IR中的地址码“0000001000”。
16、送至MAR,并命令存储器做读操作,将该地址单元中的操作数x送至MDR,再由MDR送至运算器的ACC(记作MDR,ACC),完成了此指令的执行过程。
17、此刻,也即完成了第一条取数指令的全过程,即将操作数x送至运算器ACC中。
18、与此同时,PC完成自动加1的操作,形成了下一条指令的地址“1”号。
19、同上所述,由PC送至MAR,命令存储器做读操作,将“0001000000001001”送入MDR,又由MDR-->IR。
20、接着CU分析操作码“000100”为乘法指令,故CU又向存储器发出读命令,取出对应地址为“0000001001”单元中的操作数o,经MDR送至运算器MQ,CU再向运算器发乘法操作命令,完成ax的运算,并把运算结果ox存放在ACC中。
21、同时PC完成一次(PC)十1。
22、PC,形成下一条指令的地址“2”号。
23、依次类推,逐条取指、分析、执行,直至打印出结果。
24、最后执行完停机指令后,机器便自动停机。
25、以上图解及文字叙述就是计算机大体的工作原理,也就是其解决问题的过程,可能较为简单,至于上述每个部件的详细解释及相关作用,请登陆常用术语页面进行详细的查询,在此不再一一说明......。
本文就为大家分享到这里,希望小伙伴们会喜欢。