
实验题目
2.1寄存器实验
2.2运算器实验
2.3数据输出实验/移位门实验
综合实验:
任选两个操作数分别输入R0~R3寄存器中,要求完成这两个数的交换(若第一个数在R0寄存器中,第二个数在R1寄存器中,那么操作后第二个数应该在R0寄存器中,第一个数在R1寄存器中,寄存器的编号任选)。
具体题目:
将34H写入R0寄存器、43H写入R1寄存器,完成这两个数的交换。
实验器材
CP-TH计算机组成原理实验系统
实验目的
了解模型机中各种寄存器结构、工作原理及其控制方法。
了解模型机中算术、逻辑运算单元的控制方法。
了解模型机中多寄存器接数据总线的实现原理。
了解运算器中移位功能的实现方法。
了解R0~R3寄存器的使用原理,并能实现寄存器内数的交换。
实验原理
初步设想:
(1)通过累加器A、工作寄存器W与直通门的关系,将R0寄存器内数据向数据总线输出,再存入R2寄存器。
(2)随后再R1寄存器内数据存入R0寄存器,最后将R2寄存器内数据存入R1寄存器。
(3)完成R0、R1寄存器间数据的交换。
完成
具体实现:
(1)34H、43H分别存入R0、R1寄存器。
此时R0、R1、R2、R3内数据分别为:43H、43H、FF、FF。
(2)将R0寄存器内数据(34H)写入累加器A(工作寄存器W内初始状态默认为0),用开关控制ALU做加运算得到运算结果(34H),并将结果输出到直通门D。
(3)通过直通门输出数据(34H),将数据写入R3,完成R0内数据(34H)写入R2。
此时R0、R1、R2、R3内数据分别为:34H、43H、34H、FF。
(4)重复上述操作,将R1内数据(43H)写入R0。
此时R0、R1、R2、R3内数据分别为:43H、43H、34H、FF。
(5)重复操作,将R2内数据(34H)写入R1。
(6)完成R0、R1寄存器内数据的交换。
此时R0、R1、R2、R3内数据分别为:43H、34H、34H、FF。
实验原理图:
SA、SB的选择决定寄存器的选择。
AEN、WEN决定累加器A、工作寄存器W的写入。
RRD、RWR的决定R0~R3寄存器进行读出/写入操作。
X2,X1,X0决定输出路径。
实验内容

(1)J1与J2相连。K14、K13与AEN、WEN相连,决定累加器A、工作寄存器W的写入是否有效(低电平有效);K7~K6与X2~X0相连,决定数据输出路线;K3、K2与SA、SB相连,决定R0~R3寄存器的选择;K1、K0与RRD、RWR相连,决定R0~R3寄存器进行读出/写入操作(低电平有效);K23~K16用于数据输入。
Tips:
AEN、WEN、RRD、RWR皆为低电平有效(0),控制台上默认初始状态为低电平(0),注意实验开始后先全部置为高电平(1),便于理解实验。
表一中RRD、RWD用于控制R0~R3寄存器的读出和写入,低电平有效(0),则RRD下拨(即置为0时),表示R0~R3寄存器的读出;RWR下拨(即置为0时),表示R0~R3寄存器的写入。
AEN、WEN同理。
(2)K23-K16开关置零,按[RST]钮,按[TV/ME]键三次,进入"Hand......"手动状态。
此时K23~K16皆为0;K14、K13置为11;K7~K6置为000;K3、K2置为00;K1、K2置为11;K1、K0置为11。
(3)K23~K16置00110100(34H),K3、K2置00(R0寄存器),K1、K0置10(RWR低电平有效),K7~K6置000(外部输入门),按STEP脉冲键,完成34H写入R0。
Tips:
K7~K6表X2~X0,决定数据输出路线,初始默认000,无需如AEN、WEN、RRD、RWR置为1,若置为111表没有输出。
(4)K23~K16置01000011(43H),K3、K2置01(R1寄存器),K1、K0置10(RWR低电平有效),K7~K6置000(外部输入门),按STEP脉冲键,完成43H写入R1。
(5)K23~K1置00000000,K14、K13置01(A累加器可写入),K1、K0置01(RRD低电平有效),K3、K2置00(R0寄存器),按STEP脉冲键,R0内数据读出并写入A累加器。
(6)此时直通门显示34H,K7~K6置100(直通门),K1、K0置10(RWR低电平有效),K3、K2置10(R2寄存器),按STEP脉冲键,直通门数据读出并写入R2。
此时R0、R1、R2、R3内数据分别为:34H、43H、34H、FF。
(7)K1、K0置01(RRD低电平有效),K3、K2置01(R1寄存器),按STEP脉冲键,R1内数据读出并写入A累加器。
(8)K1、K0置10(RWR低电平有效),K3、K2置00(R0寄存器),按STEP脉冲键,直通门数据读出并写入R0。
此时R0、R1、R2、R3内数据分别为:43H、43H、34H、FF。
(9)K1、K0置01(RRD低电平有效),K3、K2置10(R2寄存器),按STEP脉冲键,R2内数据读出并写入A累加器。
(10)K1、K0置10(RWR低电平有效),K3、K2置0(R1寄存器),按STEP脉冲键,直通门数据读出并写入R1。
(11)R0、R1内数据交换完成。
此时R0、R1、R2、R3内数据分别为:43H、34H、34H、FF。
实验结果与讨论
2.1实验一
数据是在放开STEP键后改变的;WEN,AEN为高时,即使CK有上升沿,寄存器的数据也不会改变。
2.1实验二
寄存器R0-R3的红色输出指示灯亮时,R0-R3寄存器的数据送上数据总线。
2.2
运算器在加上控制信号及数据(A,W)后,立刻给出结果,不须时钟。
2.3
移位与输出门是否打开无关,无论运算器结果如何,移位门都会给出移位结果。结果由X2X1X0输出选择决定。CN为0,不带进位移位,CN为1,带进位移位;CyIN为进位的值,为1或0。
综合实验:
AEN、WEN、RRD、RWR皆为低电平有效(0),控制台上默认初始状态为低电平(0),注意实验开始后先全部置为高电平(1),便于理解实验。
RRD、RWD用于控制R0~R3寄存器的读出和写入,低电平有效(0),则RRD下拨(即置为0时),表示R0~R3寄存器的读出;RWR下拨(即置为0时),表示R0~R3寄存器的写入。AEN、WEN同理。
但K7~K6表X2~X0,决定数据输出路线,初始默认000,无需如AEN、WEN、RRD、RWR一样置为1,若置为111表没有输出,后续输入无法进行。