一、实验目的
- 了解在模型机中算术、逻辑运算单元的控制方法。
- 学习机器语言程序的运行过程。
- 通过人工译码,加深对译码器基本工作原理的理解。
二、实验原理
根据实验指导书的相关内容,本次实验所要用的CP226实验仪在手动方式下,运算功能通过S1、S2、S3选择可实现下列功能:
S2 S1 S0 | 功能 |
---|---|
0 0 0 | A+W 加 |
0 0 1 | A-W 减 |
0 1 0 | A|W 或 |
0 1 1 | A&W 与 |
1 0 0 | A+W+C 带进位加 |
1 0 1 | A-W-C 带进位减 |
1 1 0 | ~A A取反 |
1 1 1 | A 输出A |
三、实验内容
实验任务一:计算07H+6AH后左移一位的值送OUT输出
(1) 实验步骤
- 关闭电源,用8位扁平线把J2和J1连接。而后用导线将K8、K7、K6分别和X2、X1、X0连接,K9和OUT连接。
- 注释仪器,打开电源,手不要远离电源开关,随时准备关闭电源,注意各数码管、发光管的稳定性,静待10秒,确信仪器稳定、无焦糊味。
- 设置实验箱进入手动模式。
- 设置K8K7K6(X2X1X0)= 000,K23~K16=0000 0100;用导线将K4和AEN连接,并设置K4 = 0,按下STEP键将数据07H送入寄存器A中。
- 保持K8K7K6(X2X1X0)= 000,设置K23~K16 = 0110 1010;用导线将K4和WEN连接,并设置K4 = 0,按下STEP键将数据6AH送入寄存器W中。
- 将K4(WEN)置1,而后用导线将K15、K14、K13分别和S2、S1、S0连接,并设置 K15K14K13(S2S1S0)= 000,实现A + W。
- 设置K8K7K6(X2X1X0)= 110,使结果左移一位后OUT输出。
(2) 实验现象
OUT屏幕显示E2
(3) 实验结论
通过一系列正确的操作,我们成功地将数据07H和6AH的和左移一位后通过OUT输出。
实验任务二:把39H取反后同64H相或的值送入R2寄存器
(1) 实验步骤
- 保持实验一的接线不变,按RST键复位。
- 设置K8K7K6(X2X1X0)= 000,K23~K16 = 0011 1001;用导线将K2和AEN连接,并设置K2 = 0,按下STEP键将数据39H送入寄存器A中。
- 保持K8K7K6(X2X1X0)= 000,设置K23~K16 = 0110 0100;用导线将K1和WEN连接,并设置K1 = 0,按下STEP键将数据64H送入寄存器W中。
- 分别将K1和K2置1,而后设置K15K14K13(S2S1S0)= 110,K8K7K6(X2X1X0)= 100,此时直通门D上显示的是39H的取反结果C6H。
- 将K2置0,按下STEP键将取反的结果送回A寄存器中。
- 将K2置1,设置K15K14K13(S2S1S0)= 010,得到39H取反后64H相或的结果。
- 用导线将K12、K11和SA和SB连接,K10、K9和PRD、PWR连接,设置K12K11 = 01,K10K9 = 10,按下STEP键将结果送入R2寄存器。
(2) 实验现象
A寄存器显示C,W寄存器显示64,R2寄存器显示E6。
(3) 实验结论
通过一系列正确的操作,我们成功地39H取反后同64H相或的值送入R2寄存器中。
四、建议
- 在进行实验之前,建议想想好要使用哪些寄存器、运算指令和逻辑运算来完成任务。
- 在每次按下STEP键前,脑海中应有一个明确的预期目标,这有助于在实验过程中验证结果的正确性。
五、体会
通过此次实验,加深了我对计算机体系结构中的指令集和寄存器的理解,除此之外,还让我能将理论知识应用到实际情景中,既巩固了知识点,也为进行下一次实验打下了扎实基础。
六、思考题
如何将R2中的数据送至A寄存器中?
先将R2中的数据送至D门,再将D门中的数据送入A寄存器中。