一、实验目的

1、熟悉8位寄存器的读写操作

2、熟悉简单运算器的数据传送通路

3、验证运算器74LS181的算术逻辑功能

4、按给定数据,完成指定的算术、逻辑运算

二、实验内容

1、绘制仿真图。

2、输入A=0xaa,B=0x55,启动仿真前令ALU_EN=1。启动仿真后,#SW_BUS = 0,手动拨码开关向缓存器DRA和DRB分别写入两个8位二进制数A=0xAA和B=0x55;参照74LS181真值表设置ALU的控制信号组合(S3,S2,S1,S0,M,CN),进行算术运算(例如:“A加B”、“A减B”等)和逻辑运算(例如“A·B”、“ A+B”等)。再令#SW_BUS = 1, #ALU_OE =0,观察并且记录运算器ALU的输出端F和标志位CF、SF、ZF。(至少完成6种运算)。

3、输入A=0x12,B=0x67,进行算术运算和逻辑运算,观察并且记录运算器ALU的输出端F和标志位CF、SF、ZF。(至少完成6种运算)。

三、实验原理

1、参考电路图

2、74LS181的算术逻辑功能表

ALU(算术逻辑单元)能进行多种算术运算和逻辑运算。一个4位的ALU—74LS181运算功能发生器能进行16种算术运算和逻辑运算。

四、实验结果截图及说明

1、输入A=0xaa,B=0x55,选择实验材料P4474LS181真值表中共6个运算(3个算术运算,3个逻辑运算)进行实验,并截图说明;

(1)完成“算术运算F=A+B”实验,设置M=0,S3S2S1S0=0001,CN=1

运算结果截图:

(2)完成“算术运算F=(A+B)+1”实验,设置M=0,S3S2S1S0=0001,CN=0

运算结果截图:

(3)完成“逻辑运算F=/(A+B)”实验,设置M=1,S3S2S1S0=0011,CN=1

运算结果截图:

(4)完成“逻辑运算F=0”实验,设置M=1,S3S2S1S0=0011,CN=0

运算结果截图:

(5)完成“逻辑运算F=/(AB)”实验,设置M=1,S3S2S1S0=0100,CN=0

运算结果截图:

(6)完成“算术运算F=A+A/B+1”实验,设置M=0,S3S2S1S0=0100,CN=0

运算结果截图:

2、输入A=0x12,B=0x67,选择实验材料P4474LS181真值表中共6个运算(3个算术运算,3个逻辑运算)进行实验,并截图说明;

(1)完成“算术运算F=A+B”实验,设置M=0,S3S2S1S0=0001,CN=1

运算结果截图:

(2)完成“算术运算F=(A+B)+1”实验,设置M=0,S3S2S1S0=0001,CN=0

运算结果截图:

(3)完成“逻辑运算F=/(A+B)”实验,设置M=0,S3S2S1S0=0011,CN=1

运算结果截图:

(4)完成“逻辑运算F=/(AB)”实验,设置M=1,S3S2S1S0=0100,CN=0

运算结果截图:

(5)完成“算术运算F=A+A/B+1”实验,设置M=0,S3S2S1S0=0100,CN=0

运算结果截图:

(6)完成“逻辑运算F=A/B”实验,设置M=1,S3S2S1S0=0111,CN=0

运算结果截图:

四、实验过程中产生的问题及采取的措施

把遇到的问题解决的方法写出来。

问题:启动仿真前未使ALU_EN=1。

方法:请教老师,和同学一起讨论。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐