2.1.2 读取指令
操作码DR SR 把源寄存器SR中的内容读到目标寄存器DR中。 2.1.3 “ADD”指令
以下五条机器指令为选做题目,给出指令执行流程(选做要求:(组号 mod 5)+1=红色题目编号):IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JMP(无条件转移),其指令格式如下:
助记符机器指令码说明
②ADD addr 0001 0000 ×××× R0+[addr] ?R0
2.2 储存器
②要求用128K×16位的SRAM芯片设计512K×16位的存储器,SRAM芯片有两个控制端:当 CS 有效时该片选中。当W/R=1时执行读操作,当W/R=0时执行写操作。用64K×16位的EPROM芯片组成128K×16位的只读存储器。试问:。 <1> 数据寄存器多少位? <2> 地址寄存器多少位? <3> 共需多少片EPROM? 此存储器组成框图。
2.3 运算器
设计计算机运算器(包括逻辑框图与指令系统,以及各指令的微程序流程图)。 指令系统是指计算机系统所有指令的集合,微程序是指实现一条机器指令功能的微指令序列,微指令是指实现一定操作功能的一组微命令,微命令对应着相应的微操作。
这次课程设计我们设计了TRA、JIA、JIAN、YU、HUO等微指令。
2.4 硬件系统
2.4.1计算机硬件组成
了解计算机的硬件系统。就计算机的某些硬件组成部分,说明对其认识。 答:构成计算机的一般有“5大部分”,分别为:运算器、控制器、储存器、输
5
入设备和输出设备。 (1)运算器
运算器用来实现算术运算和逻辑运算。主要由:算术逻辑单元(ALU)、累加器、状态寄存器、通用寄存器组等组成。算术逻辑运算单元(ALU)的基本功能为加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、求补等操作。计算机运行时,运算器的操作和操作种类由控制器决定。运算器处理的数据来自存储器;处理后的结果数据通常送回存储器,或暂时寄存在运算器中。与Control Unit共同组成了CPU的核心部分。 (2)控制器
控制器根据指令的功能产生相应的控制信号,控制其它部分的工作以便实现指令的功能。主要由程序计数器、指令寄存器、指令译码器、时序产生器和操作控制器组成,它是发布命令的“决策机构”,即完成协调和指挥整个计算机系统的操作。控制器工作的实质就是解释程序,它每次从存储器读取一条指令,经过分析译码,产生一系列操纵计算机其他部分工作的控制信号(操作命令),发想各个部件,控制各部件动作,是整个机器连续,有条不紊地运行。高级计算机中的控制器可以改变某些指令的顺序,以改善性能。
对所有CPU而言,一个共同的关键部件是程序计数器,它是一个特殊的寄存器,记录着将要读取的下一条指令的存储器中的位置。 (3)储存器
存储器用来存放数据和程序。主要功能是存储程序和各种数据,并能在计算机运行过程中高速、自动地完成程序或数据的存取。存储器是具有“记忆”功能的设备,它采用具有两种稳定状态的物理器件来存储信息。这些器件也称为记忆元件。在计算机中采用只有两个数码“0”和“1”的二进制来表示数据。记忆元件的两种稳定状态分别表示为“0”和“1”。日常使用的十进制数必须转换成等值的二进制数才能存入存储器中。计算机中处理的各种字符,例如英文字母、运算符号等,也要转换成二进制代码才能存储和操作。 (4)输入设备
用于把原始数据和处理这些数据的程序输入到计算机中。是计算机与用户或其他设备通信的桥梁。输入设备是用户和计算机系统之间进行信息交换的主要装置之一。键盘,鼠标,摄像头,扫描仪,光笔,手写输入板,游戏杆,语音输入装置等都属于输入设备。输入设备(InputDevice)是人或外部与计算机进行交互的一种装置,用于把原始数据和处理这些数的程序输入到计算机中。计算机能够接收各种各样的数据,既可以是数值型的数据,也可以是各种非数值型的数据,如图形、图像、声音等都可以通过不同类型的输入设备输入到计算机中,进行存储、处理和输出。
6
(5)输出设备
用于数据的输出。是计算机的终端设备,用于接收计算机数据的输出显示、打印、声音、控制外围设备操作等。也是把各种计算结果数据或信息以数字、字符、图像、声音等形式表示出来。常见的有显示器、打印机、绘图仪、影像输出系统、语音输出系统、磁记录设备等。
2.4.2 采用门电路设计一个8位的全加器电路
图2.4.2.1 1位全加器
Ai 0 0 0 0 1 1 1 1 输入 Bi 0 0 1 1 0 0 1 1 输出 Ci-1 0 1 0 1 0 1 0 1 Si=Ai⊕Bi⊕Ci-1 Ci=AiBi+(Ai⊕Bi)Ci-1
Si 0 1 1 0 1 0 0 1 Ci 0 0 0 1 0 1 1 1 7
2.4.3 定点补码加减法装置逻辑框图
进行加减运算时,最少要有两个数据寄存器,存放加数和被加数。还要设置一个实现加法运算的全加器。运算结果通常放在被加数寄存器中,所以被加数寄存器又叫累加寄存器。
定点补码加减法装置的逻辑框图如图3-3所示,其中A寄存器为累加寄存器,用于存放被加数或被减数以及运算结果;B寄存器为接收数据寄存器,用于接收由主存读出的数据,存放加数或减数;Q为加法器,实现加法运算。加法器的数据输入端有两个,分别接收A寄存器和B寄存器的数据,加法过程中相邻各位间的进位关系在内部已逐位连好,图3-3中未表示出来。加法器最低位之进位Cn+1单独引出,以便实现变补运算时,末位加1的需要。
加法器的B数据输入端用于在加法运算时送入B的值,由B寄存器的触发器Q端输出;在做减法运算时,实际上送入加法器的数据是B的反码,加法器末位再加1,即实现送入(-B)补码的要求,B的反码由B寄存器触发器之反向端引出。加法器的B输入端实际上是两路输入,由二选一的与或门实现。
在做加法运算时,加法装置需要3个控制信号,全加器Q有2个输入端,A输入端需要控制器送来A→Q的信号,把A寄存器的内容送入Q,B输入端需要控制器送来B→Q的信号,把B寄存器内容送入Q,加法结果存入A寄存器还需要Q→A的控制信号,才能完成加法运算。当然,这里假定A寄存器已经放入被加数,B寄存器已经放入加数。
2.5 模型机综合实验
2.5.1 实验数据:01H
图2.5.1 移位/取反实验源程序
2.5.2 转移实验
实验数据:01H
8