您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 计算机组成原理--实验二 算术逻辑运算实验
实验二算术逻辑运算实验一、实验目的(1)了解运算器芯片(74LS181)的逻辑功能。(2)掌握运算器数据的载入、读取方法,掌握运算器工作模式的设置。(3)观察在不同工作模式下数据运算的规则。二、实验原理1.运算器芯片(74LS181)的逻辑功能74LS181是一种数据宽度为4个二进制位的多功能运算器芯片,封装在壳中,封装形式如图2-3所示。74LS181123456789101112242322212019181716151413BOA0S3S2S1S0CnMF0F1F2GND5VA1B1A2B2A3B3Cn4F3图2-374LS181封装图主要引脚有:(1)A0—A3:第一组操作数据输入端。(2)B0—B3:第二组操作数据输入端。(3)F0—F3:操作结果数据输入端。(4)F0—F3:操作功能控制端。(5)𝐶𝑛̅̅̅̅:低端进位接收端。(6)𝐶𝑛4:高端进位输出端。(7)M:算数/逻辑功能控制端。芯片的逻辑功能见表2-1.从表中可以看到当控制端S0—S3为1001、M为0、𝐶𝑛̅̅̅̅为1时,操作结果数据输出端F0—F3上的数据等于第一组操作数据输入端A0—A3上的数据加第二组操作数据输入端B0—B3上的数据。当S0—S3、M、𝐶𝑛̅̅̅̅上控制信号电平不同时,74LS181芯片完成不同功能的逻辑运算操作或算数运算操作。在加法运算操作时,𝐶𝑛̅̅̅̅、𝐶𝑛4进位信号低电平有效;减法运算操作时,𝐶𝑛̅̅̅̅、𝐶𝑛4借位信号高电平有效;而逻辑运算操作时,𝐶𝑛̅̅̅̅、𝐶𝑛4进位信号无意义。2.运算器实验逻辑电路试验台运算器实验逻辑电路中,两片74LS181芯片构成一个长度为8位的运算器,两片74LS181分别作为第一操作数据寄存器和第二操作数据寄存器,一片74LS254作为操作结果数据输出缓冲器,逻辑结构如图2-4所示。途中算术运算操作时的进位Cy判别进位指示电路;判零Zi和零标志电路指示电路,将在实验三中使用。第一操作数据由B-DA1(BUSTODATA1)负脉冲控制信号送入名为DA1的第一操作数据寄存器,第二操作数据由B-DA2(BUSTODATA2)负脉冲控制信号送入名为DA2的第二操作数据寄存器。74LS181的运算结果数据由ALU−B̅̅̅̅̅̅̅̅̅̅̅(ALUTOBUS)低电平控制信号送总线。S0—S3、M芯片模式控制信号同时与两片74LS181的S0—S3、M端相连,保证二者以同一工作模式工作。实验电路的低端进位接收端Ci与低4位74LS181的𝐶𝑛̅̅̅̅相连,用于接收外部进位信号。低4为74LS181的𝐶𝑛̅̅̅̅与高4位74LS181的𝐶𝑛̅̅̅̅上相连,实现高、低4位之间进位信号的传递。高4位之间进位信号的传递。高4位74LS181的𝐶𝑛4送进位Cy判别和进位指示电路。表2-174LS181芯片逻辑功能表功能选择输入、输出关系S3S2S1S0M=H逻辑运算M=L算术运算Cn=HCn=L0000F=AF=AF=A加1三、实验过程1.连线参照实验逻辑原理图进行连线,实验台上数据线用总线连接器连接好后一般不动,控制信号线需手工连接,本实验要连接的控制线如下。(1)把输入、输出单元(INPUT/OUTPUTUNIT)的IO−R̅̅̅̅̅̅̅̅̅、IO−W̅̅̅̅̅̅̅̅̅与手动控制开关单元(MANUALUNIT)的IO−R̅̅̅̅̅̅̅̅̅、IO−W̅̅̅̅̅̅̅̅̅相连接。(INPUT/OUTPUTUNIT)的Ai接地。0001F=A+BF=A+BF=(A+B)加10010F=A•BF=A+BF=(A+B)加10011F=0F=0-1F=00100F=A•BF=A加(A+B)F=A加(A+B)加10101F=BF=(A+B)加(A+B)F=(A+B)加(A+B)加10110F=A⊕BF=A减B减1F–A减B0111F=A•BF=(A•B)减1F=A•B1000F=A+BF=A加(A•B)F=A加(A•B)加11001F=A⊕BF=A加BF=A加B加11010F=BF=(A+B)加(A•B)F=(A+B)加(A•B)加11011F=A•BF=(A•B)减1F=A•B1100F=1F=A加AF=A加A加11101F=A+BF=(A+B)加AF=(A+B)加A加11110F=A+BF=(A+B)加AF=(A+B)加A加11111F=AF=A减1F=A控制电平说明:“L”或“0”表示低电平,“H”或“1”表示高电平逻辑操作符说明:“—”表示非操作,“+”表示“或”操作,“•”表示“与”操作,“⊕”表示“异或”算术操作符说明:“加”表示加法操作,“减”表示减法操作把算术逻辑部件(ALUUNIT)的S3—S0、M、Ci与手动控制开关单元(MANUALUNIT)的S3-S0、M、Ci相连接。把算术逻辑部件(ALUUNIT)的B-DA1、B-DA2、ALU−B̅̅̅̅̅̅̅̅̅̅̅与手动控制开关单元(MANUALUNIT)的B-DA1、B-DA2、ALU−B̅̅̅̅̅̅̅̅̅̅̅相连接。判零电路B7B6B5B4B3B2B1B074LS245A7A6A5A4A3A2A1A0Q7Q6Q5Q4Q3Q2Q1Q074LS273D7D6D5D4D3D2D1D0Q7Q6Q5Q4Q3Q2Q1Q074LS273D7D6D5D4D3D2D1D0F3F2F1F0S3S2S1S0MCn474lS181CnA3A2A1A0B3B2B1B0算数运算时进位判别MS3S2S1S0进位标志CY显示零标志ZI显示F3F2F1F0S3S2S1S0MCn474lS181CnA3A2A1A0B3B2B1B0CLRT4ALU-BS3-S0MCyNCnCyCnCiB-DA1B-DA2ALUTOBUSD7D4D7D4D7D4D7D4D7D4D7D4D7D0D7D0D7D0D7D0D3D0D3D0图2-4算数逻辑运算部件原理图2.数据输入过程(1)把开关IO−R̅̅̅̅̅̅̅̅̅、IO−W̅̅̅̅̅̅̅̅̅、B-DAI、B-DAI2、ALU−B̅̅̅̅̅̅̅̅̅̅̅拔上,确保为高电平,使这些信号处于无效状态。(2)在输入数据的开关上拨好数据代码,例如“00010001”,即16进制数11H(以后再许多情况下要使用16进制表达方式)。(3)把输入控制信号IO−R̅̅̅̅̅̅̅̅̅开关拔下成低电平。这时总线上显示的状态应该与输入数据一致。(4)把第一组数据输入控制信号B-DAI的开关拨动一次,即实现“1-0-1”,产生一个负脉冲,作用是把数据“11H”送第一数据寄存器DAI中。3.数据输出过程(1)为了检验数据送入的正确性,现把DAI中的内容送到总线上。(2)把输入数据的开关上的输入数据代码拨成00H,与刚才送第一数据寄存器DAI的数据区分开。(3)把输入控制信号IO−R̅̅̅̅̅̅̅̅̅开关拨上成高电平无效,这是总线上的状态应该与输入数据无关,显示为FFH。(4)把74LS181功能控制端S3—S0设置为1111,M为1,参照表2—174LS181逻辑功能表,其输出数据F等于第一组数据输入端A,既DA1上的数据。(5)把ALU−B̅̅̅̅̅̅̅̅̅̅̅控制信号拨成低电平,可以看到第一数据寄存器DA1中的数据“11H”经74LS181的A输入端传送到输出口F,再传送到总线BUS。(6)使用类似的方法把“00100001”(即16进制数21H)用第二数据寄存器输入控制信号B-DA2,将其送到第二数据寄存器DA2,再把第二数据寄存器DA2中的数据送总线。74LS181的功能控制端S3-S0为“1010”,M为1的功能是把第二组数据输入端B的数据送输出端F。同样把——ALU-B控制信号拨成低电平,把数据传送到总线BUS。4.数据运算过程(1)在完成数据输入、输出的基础上进行数据运算操作。(2)从LS181逻辑功能表上查得“A加B,不考虑低端进位”操作的功能控制码为S3—S0=1001、M=0、Ci=1,把这些控制码拨好。(3)把ALU−B̅̅̅̅̅̅̅̅̅̅̅控制信号拨下呈低电平,这时运算结果(正常的运算结果应为“00110010”,即16进制数32H)送到总线,在总线指示灯上可观察到此数据。(4)把IO−W̅̅̅̅̅̅̅̅̅控制信号开关拨动一次,即实现“1—0—1”,产生一个负脉冲,这时总线上的数据就输出缓冲器,显示在LED指示灯L7—L0上。(5)Ci是低端位进位输入,Ci=1表示无进位,Ci=0表示有进位。在进行“A加B”操作时,Ci=1,操作结果是“00110010”,即16进制数32H;Ci=0,操作结果是“00110011”,即即16进制数32H,从而可以验证低端位进位输入的作用。(6)变换操作功能控制码S3—S0=1001、M=0,进行A-B操作,进行减法操作时,Ci=0表示无进位,用上面的数据做减法运算,结果为16进制数10H(21H减11H减借位=10H)。(7)变换不同的操作数据,观察不同的运算结果;变换不同的功能控制码S3—S0,M,进行不同的操作过程,观察不同的结果。四、结果与总结(1)在实验过程中把实验步骤用时序图的形式表示出来。(2)变换不同的操作数据和不同的运算模式,把观察到的数据填入算术逻辑运算表2-2中。表2-2实验记录DA1DA2S3-S0M=1(算术运算)M=0(逻辑运算)Ci=1Ci=065H0A7H0000F=(01100101)F=(01100110)F=(10011010)65H0A7H0001F=(11100111)F=(11101000)F=(00011000)65H0A7H0010F=(01111101)F=(01111110)F=(10000010)65H0A7H0011F=(11111111)F=(00000000)F=(00000000)65H0A7H0100F=(10100101)F=(10100110)F=(11011010)65H0A7H0101F=(00100101)F=(00101000)F=(01011000)65H0A7H0110F=(10111101)F=(10111110)F=(11000010)65H0A7H0111F=(00111111)F=(01000000)F=(01000000)65H0A7H1000F=(10001010)F=(10001011)F=(10111111)65H0A7H1001F=(00001100)F=(00001101)F=(00111101)65H0A7H1010F=(10100010)F=(10100011)F=(10100111)65H0A7H1011F=(00100100)F=(00100101)F=(00100111)65H0A7H1100F=(11001010)F=(11001011)F=(11111111)65H0A7H1101F=(01001100)F=(01001101)F=(01111110)65H0A7H1110F=(11100010)F=(11100011)F=(11100111)65H0A8H1111F=(01100100)F=(01100101)F=(01100101)(3)分析试验中出现的问题,总结解决问题的方法和过程,结合上面两个问题,把观察到的现象和对课本上原理的理解写入实验报告。
本文标题:计算机组成原理--实验二 算术逻辑运算实验
链接地址:https://www.777doc.com/doc-4466962 .html