当前位置:文档之家› 实验二 算术逻辑运算实验报告

实验二 算术逻辑运算实验报告

实验二 算术逻辑运算实验报告
实验二 算术逻辑运算实验报告

计算机组成原理实验报告

专业:计算机+自动化

姓名:

桑超强(201126100416)

陆黎明(201126100412)

实验二算术逻辑运算实验

一、实验目的:

·了解运算器的组成结构

·掌握运算器的工作原理

·掌握简单运算器的数据传输通路

·验证运算功能发生器74LS181的组合功能

二、实验设备

?TDN-CM++教学实验系统一套

三、实验原理

1、运算器芯片(74LS181)的逻辑功能

74LS181 是一种数据宽度为4个二进制的多功能运算器芯片,封装在24引脚的封装壳中,封装型式如图2.1所示。

图2.1 74LS181封装图

主要引脚有:

(1)A0-A3:第一组操作数据输入端。

(2)B0-B3:第二组操作数据输入端。

(3)F0-F3:操作结果数据输出端。 (4)S0-S3:操作功能控制端。 (5)Cn :低端进位接收端。 (6)4Cn :高端进位输出端。 (7)M :算术/逻辑功能控制端。

芯片的逻辑功能见表2.1。从表中可看到当控制端S0-S3为1001、M 为0、Cn 为1时,操作结果

数据输出端F0-F3上的数据等于第一组操作数据输入端A0-A3上的数据加第二组操作数据输入端B0-B3上的数据。当S0-S3、M 、Cn 上的控制信号电平不同时,74LS181芯片完成不同功能的逻辑运算操作或算术逻辑运算。在加法运算操作时,Cn 、4Cn 进位信号低电平有效;减法运算操作时,Cn 、4Cn 借位信号高电平有效;而逻辑运算操作时,Cn 、4Cn 进位信号无意义。

图2.1数据逻辑运算部件原理图

2、运算器实验逻辑电路

试验台运算器实验逻辑电路中,两片74LS181芯片构成一个长度为8位的运算器,两片74LS373

分别作为第一操作数据寄存器和第二操作数据寄存器,一片74LS245作为操作结果数据输出缓冲器,逻辑

结构如图2.2所示。图中算术逻辑操作时仅为Cy 判别进位只是电路;判零Zi 和零标志电路指示电路。

第一操作数据由B-DA1(BUS TO DATA1)负脉冲控制信号送入名DA1的第一操作数据寄存器,第二

操作数据由B-DA2(BUS TO DATA2)负脉冲控制信号送入名为DA2的第二操作数据寄存器。74LS181的运算结果数据由B ALU -(ALU TO BUS )低电平控制信号送总线。S0-S3、M 芯片模式控制信号同时与两片74LS181的S0-S3、M 端相连,保证二者以同一工作模式工作。实验电路的地端进位接收Ci 与低4位的74LS181的Cn 相连,用于接收外部进位信号。低4位74LS181的Cn 与高4位74LS181的Cn 上相连,实现高、低4位之间进位信号的传递。高4位74LS181的4Cn 送进位Cy 判别和进位指示电路。

四、实验内容

1、连线

图2.2 实验连线图

· 按照上图进行实验连线;

2、数据送入过程

(1)把开关R IO -、W IO -、B-DA1、B-DA2、B ALU -拨上,确保为高电平,使这些信号出

于无效状态。

(2)在输入数据的开关上拨号输入数据代码,如“00010001”,即16进制数11H

IO-开关拨下成低电平。这时总线上显示的状态与输入数据一致。

(3)把输入控制信号R

(4)把第一组数据输入控制信号B-DA1的开关拨动一次,即实现“0-1-0”,产生一个负脉冲,作用是把数据11H送第一数据寄存器DA1中。

3、数据输出过程

(1)为了检验数据送入的正确性,现把DA1中的内容送到总线上。

(2)把输入数据的开关上的输入数据代码拨成00H,与刚才送第一数据寄存器DA1的数据区分开。

IO-开关拨上成高电平无效,这时总线上的状态应该与输入数据无关,(3)把输入控制信号R

显示为FFH。

(4)把74LS181功能控制端S3-S0设置为1111,M为1,参照74LS181逻辑功能表,其输出数据F等于第一组数据输入端A,即DA1上的数据

ALU-控制信号拨成低电平,可以看到第四数据寄存器DA1中的数据“11H”经(5)把B

74LS181的A输入端传送到输出口F,再传送到总线BUS上

(6)使用类似的方法把数据“00100001”用第二数据寄存器输入控制信号B-DA2,将其送到第二数据寄存器DA2,再把第二寄存器DA2中的数据送总线。74LS181的功能控制端S3-S0为“1010”,M

ALU-控制信号拨成低电平,把数为1 的功能是把第二组数据输入端B的数据送到输出端F。同样把B

据传送到数据总线BUS。

4、数据运算过程

(1)在完成数据输入、输出的基础上进行数据运算操作

(2)从LS181逻辑功能表上差得“A加B,不考虑低端仅为”操作的功能控制码为S3-S0=1001、M=0,Ci=1,把这些控制码拨好。

ALU-控制信号拨下呈低电平,这时运算结果送到总线,在总线指示灯上可观察到此(3)把B

数据。

IO-控制信号开关波动一次,即实现“1-0-1”,产生一个负脉冲,这时总线上的数据(4)把W

就送到输出缓冲器,显示在LED指示灯L7-L0上。

(5)Ci是地位进位输入,Ci=1表示无进位,Ci=0表示有进位。在进行“A加B”操作时,Ci=1,操作结果是“00110010”,即16进制数32H;Ci=0,操作结果是“00110011”,即16进制数33H,从而可以验证低端位进位输入的作用。

(6)变换操作功能控制码S3-S0=0110,M=0,进行A减B操作,进行减发操作时,Ci表示无错位,用上面的数据做减法运算,结果应为16进制数10H;Ci=1表示有错位,运算结果应为16进制数0FH (7)变换不同的操作数据,观察不同的运算结果;变换不同的功能控制码S3-S0、M,进行不同的操作过程,观察不同的结果。

五、实验结果总结

表2.1实验结果记录

实验五存储器读写实验报告

一、目的与要求

·掌握存储器的工作特性

·熟悉静态存储器的操作过程验证存储器的读写方法

二、实验原理

存储器是计算机的主要部件,用来保存程序与数据。从工作方式上分类,存储器可以分为易失性和飞易失性存储器,易失性存储器中的数据在关电后就不复存在,非易失性存储器的数据在关电后不会丢失。易失性存储器又可以分为动态存储器和静态存储器,动态存储器保存信息的时间只有2ms,工作时需要不断更新,既不断刷新数据静态存储器只有不断电,信息是不会丢失的。为简单起见,计算机组成实验用的是容量为2k的静态存储器6116。

1.静态存储器芯片6116的逻辑功能

6116是一种数据宽度为8位8个二进制位容量为2048字节的静态存储器芯片封在24引脚的封装中封装型式如图2-7所示。6116芯片有8根双向三态数据线D7-D0所谓三态是指输入状态输出状态和高阻状态高阻状态数据线处于一种特殊的“断开”状态11根地址线A10-A0指示芯片内部2048个存储单元号3根控制线CS片选控制信号低电平时芯片可进行读写操作高电平时芯片保存信息不能进行读写WE为写入控制信号低电平时把数据线上的信息存入地址线A10-A0指示的存储单元中OE为输出使能控制信号低电平时把地址线A10-A0指示的存储单元中的数据读出送到数据线上。

表5.1、6116芯片控制信号逻辑功能表

2.存储器实验单元电路

因为在计算机组成原理实验中仅用了256个存储单元所以6116芯片的3根地址线A11-A8接地也没有多片联用问题片选信号CS接地使芯片总是处于被选中状态。芯片的WE和OE信号分别连接实验台的存储器写信号M-W和存储器读信号M-R。这种简化了控制过程的实验电路可方便实验进行。

表5.2、存储器实验单元电路逻辑控制信号逻辑功能表

3.存储器实验电路

存储器读写实验需三部分电路共同完成存储器单元MEM UNIT地址寄存器单元ADDRESS UNIT和输入输出单元INPUT/OUTPIT UNIT.存储器单元6116芯片为中心构成地址寄存器单元主要由一片

74LS273组成控制信号B-AR的作用是把总线上的数据送入地址寄存器向存储器单元电路提供地址信

息输入输出单元作用与以前相同

图5.2、存储器实验电路逻辑图

三.实验过程

1、连线

1、连接实验一输入、输出实验的全部连线。

2、按实验逻辑原理图连接M-W、M-R两根信号低电平有效信号线。

3、连接A7——A0 8根地址线。

4、连接B-AR正脉冲有效信号线。

2、顺序写入存储单元实验操作过程

1、把B-AR控制开关拨到0因此信号是正脉冲有效把其他控制开关全部拨到1使全部控制信号都处于无效状态。

2、在输入数据开关上拨一个地址数据如00000001即16进制数01H拨下IO-R开关把地址数据送

总线。

3、拨动一下B-AR开关实现“0-1-0”产生一个正脉冲把地址数据送地址寄存器AR保存。

4、在输入数据开关上拨一个实验数据如10000000即16进制数80H拨下IO-R控制开关把

实验数据送到总线。

5、拨动M-W控制开关即实现“1-0-1”产生一个负脉冲把实验数据存入存储器的01H号单元。

6、按表2-11所示的地址数据和实验数据重复上面1、2、3、44个步骤顺序在存储器单元中存放不同的A实验数据。

表5.3、实验数据

3、顺序读出存储器单元实验操作过程

1、在输入数据开关上拨一个地址数据如00000001即16进制数01H拨下IO-R开关把地址数据送

总线。

2、拨动一下B-AR开关即实现“0-1-0”产生一个正脉冲把地址数据送地址寄存器AR保存。

3、把IO-R开关拨上切断输入开关与总线的联系。

4、拨下M-R控制开关把实验数据从存储器的01H号单元读出送总线验证实验数据。

5、拨动IO-W开关即实现“1-0-1”产生一个负脉冲把从存储器读出的实验数据从总线送输出显示电路L7-L0。

6、拨上M-R控制开关使存储器处于保持状态。

7、重复上面的1—66个步骤按顺序从地址01H—05H的存储器单元中读出实验数据送输出显示电路L7—L0验证读出数据与表2—11中的内容是否相符。

4、随机读出存储器单元实验操作过程

重复上面1—66个步骤分别从地址36H25H03H3个不连续的存储器单元中读出数据验证实验数据是否与表2—11中的内容相符合注意地址25H这个存储单元中没有写入过实验数据读出的内容应是随机值。

四、结果与总结

1.参照上面的实验数据表,自己设计实验数据进行实验,,记录实验过程中的情况和原始数据。

2.如果不向总线传送任何数据,在总线悬空的情况下将实验数据写入某个存储单元,然后读出实

验数据,会产生什么结果,为什么?

3.把实验数据填入表中,总结解决问题的方法和过程,把观察到的现象和对书本原理的理解写入

实验报告。

表5.4、实验五结果记录

五、实验遇到的问题及解决方法

问题 1:

我们刚开始的时候步骤完全按书上的来但验证结果却不一样原因后来我们仔细看了一下发现原来是线的两端接反了。我们把输入输出中的M-WM-R和手动开关控制器中的M-WM-R接反了。

问题2:

在读出存储器单元时我们发现读完一个地址后读第二个地址时开关IO-R和M-R同时在下面这时实验仪器会叫原因我们实验时使用的仪器是单总线接口当M-W在下面时这时再拨下IO-W 会造成总线同时有两个数据输入所以发生了冲突。这时应该把M-W拨上即可。

解决方法

1、在连线的时候要仔细些切不能粗心大意这次只是实验结果做不出来以后可能会遇到更大的麻烦。

2、在做实验前要提前预习了解各个按键的功能以及相互间的联系。

六、实验猜想

输入一个地址后不在存储器中写入数据读出的实验数据可能有下面几种结果:

1、输出的可能是出产前预设定的数据。

2、输出的可能是上次实验输入的数据。

3、总线悬空时输出的是1111 1111 原因可能是当总线悬空时默认输入为1。

七、实验心得体会

这次实验其实还是蛮简单的主要考察的是我们的动手能力但是其过程也不是都是那么顺利的所以在今后的学习中要更加的注意学习方法。通过本次实验我们对存储器的工作原理有了更深一步的了解。经过一次次拨动开关的操作逐步熟悉了数据的写入与读出方式。与此同时对计算机的系统结构也有了进一步的认识了解了运算器、存储器、数据总线、地址总线等计算机部件的运作原理为以后的学习及实验打下了基础。

综合实验一机器指令设计实验-实验报告

一、实验目的与要求

(1)通过实验分析简单模型机结构,了解计算机工作原理。

(2)掌握计算机微程序控制器的控制方法,掌握计算机指令执行过程。

(3)简单模型计算机部件构架、微程序控制器中微程序代码功能实现、微程序流程、指令系统定义和简单模型计算机汇编语言程序进行验证。

(4)在简单模型计算机基础上设计新的技巧指令,在第二章实验八的基础上实施,使用的实验部件和接线不变,增加5条新机器指令,目的是提高学生对计算机机器指令的理解,锻炼学生自己动手设计模型计算机机器指令的能力。

二、实验原理

1.简单模型计算机构架

简单模型计算机逻辑结构如图1所示,构成简单模型计算机的实验部件以总线为基本连接通道,主要有以下7个:

(1)算术逻辑运算部件ALU UNIT进行算术逻辑运算操作。

(2)存储器部件MEM UNIT,存储模型计算机汇编语言程序和操作数据。

(3)地址寄存器部件ADDRESS UNIT,包含两部分电路,地址寄存器AR:接收存储器程序中的指令地址和指令中的数据地址;指令地址计数器PC:用于指示程序中的指令地址并通过地址缓冲器送往地址寄存器AR。

(4)指令寄存器部件INS UNIT,寄存器当前正在执行的机器指令,此指令的指令码通过指令译码器向微程序控制器指示相应的微程序入口地址;此指令的地址码指示的操作数地址,送往地址寄存器AR。

(5)输入/输出部件INPUT/OUTPUT,操作数据的输入与输出显示。

(7)通用寄存器部件REG UNIT,暂存运算的中间数据。

(7)微程序控制器部件MAIN CONTROL UNIT,控制各部件完成指令的功能。

2.简单模型计算机指令系统

此简单模型计算机的指令系统包括控制台指令与机器指令。共三条控制台指令,由手动控制单元(MANUAL UNIT)的KB,KA开关设定。控制台指令只能由手工操作一条条指令,不能编写在汇编程序中。实验八已经给出5条机器指令。分别是输入指令IN R0,PORTAR,算术加指令ADD R0,[ADDR],寄存器内容送存储器指令STA [ADDR],R0,输出指令OUT [PORTAR],[ADDR],转移指令JMP PORTAR。如表1所示。

另外根据微指令格式,可以设计出实验要求的5条指令。先进行微指令译码分析,然后详细说明如何设计。

(1)微指令译码分析:

图1-简单模型计算机逻辑结构图

JMP为跳转地址为直接地址,即将ADDR赋值给PC。

当模型机的一条指令执行时,由指令译码器确定一个与此指令对应的微程序入口地址,经地

址缓冲器送微控制存储器的地址通道,然后从微控制存储器相应单元中读出24位微指令代码,其中高17位送微指令控制代码段寄存器,由微指令译码器产生控制信号,低7位送微指令地址代码段寄存器(7位),指出微控制存储器中下一微指令的地址。

微指令代码共分7段:

(1)BTO:数据从总线送部件控制段,3位。

(2)OTB:数据从部件送总线控制端,3位。

(3)FUNC:地址转移、读写功能控制端,3位。

(4)FS:方式功能控制段:1位。

(5)S3,S2,S1,S0,M,Ci:模式功能控制段,6位。

(6)N:备分段,1位。

(7)NEXT:下一条微指令地址段,7位。

(2)微程序流程图

根据实验八的机器指令和控制台指令可以画出图2所示的流程图。

图2-模型计算机指令执行流程图

三、四条指令的微程序代码设计

根据实验要求的汇编程序,发现并不需要INC DR这条指令,所以也没有对其进行微代码的设计。另外显然PC->AR,PC+1->PC ; 01H->02H

RAM->IR ;02H->03H

J(1)散转;03H->(10H)

三条微指令动作为公操作。因此我们只需要考虑除此之外的其他微指令动作。下面对4条指令,逐条进行解释分析。

1. 无借位减:SUB DR, [ADDR]

a. 指令功能:(SR)-(DR)->DR,影响Cy,Zi标志位。当(SR)<(DR)时,Cy=1,当(SR)=DR 时,Zi=1。。

b. 指令格式:

c.指令流程:

2.带进位加:ADDC DR, [ADDR]

a.指令功能:(SR)+(DR)+Cy->DR,影响Cy,Zi标志位。当(SR)+(DR)+Cy>255时,Cy=1,

当(SR)+(DR)+Cy=256时,Zi=1。.这条指令可实现多字节的加法操作。

b.指令格式:

c. 指令流程:

3. C 条件转移:JMPC [ADDR]

a. 指令功能:若Cy=1,则[ADDR]->PC, 否则顺序执行下条指令。影响Cy ,Zi 标志位。

b. 指令格式:

c. 指令流程:

也JMP 不同。而将JMPC [ADDR],改成JMPC ADDR 也相当得容易。只要将微程序代码中微地址为37H 的微代码改成DC4042即可。也就是跳过RAM->AR 不执行。

4. 存储器内容送通用寄存器 LDA DR, [ADDR]

a. 指令功能:(ADDR )->DR,不影响Cy,Zi 标志位。

b. 指令格式:

c. 指令流程:

d. 微程序代码:

根据这四条指令微代码可以得到如图3所示流程图。

图3-新增指令逻辑结构图

四、汇编程序设计

1.程序功能

程序功能是对输入开关上的数据和存储器某一单元中的数据进行加法操作,结果累计在存储器某个单元中,当累计值大于256时转而进行减法操作,即把此存储器单元中的值减去输入开关上的数据,结果送同一存储器单元中,当操作结果小于0时再转而进行加法操作,使输出显示顶上出现数据连续加,然后连续减,减到0时候连续加。这样连续加、连续减直到拨动CLR结束程序运行为止。

2.程序流程图

实验二算术运算实验

实验二算术运算实验 一、实验目的 1、掌握MASM for Windows 环境下的汇编语言编程环境使用; 2、掌握汇编语言程序设计的基本流程及汇编语言中的二进制、十六进制、十进制、BCD 码的表示形式; 3、掌握汇编语言对多精度十六进制和十进制的编程方法及运算类指令对各状态标志 位的影响及测试方法; 4、掌握无符号数和有符号数运算区别及编程方法; 5、掌握BCD 码调整指令的使用方法 二、软硬件实验环境 1、硬件环境:惠普64 位一体化计算机及局域网; 2、软件环境:windows 8,红蜘蛛管理系统,MASM for Windows。 三、实验基本原理 算术运算实验需要对运行结果进行调试及查看状态字,其相关知识如下。 1) 标志位 在debug调试过程中,标志位用特殊符号表示的,其标志名和状态符号的对照表参照表1所示。 表1标志名和状态符号的对照表参照表 2) 加减法指令 ADD表示加法指令,ADC表示带进位加法指令,SUB表示减法指令,SBB表示带进位减法指令。 3) 乘除法指令 MUL表示无符号数乘法指令,IMUL表示带符号数乘法指令,DIV表示无符号数除法指令,IDIV

表示带符号数除法指令。 4) 符号位扩展指令 CBW表示从字节扩展到字的指令,CWD表示从字扩展到双字的指令。 5) BCD码的调整指令 在进行十进制加减运算时,需要将数据用BCD码表示,还要考虑到是组合BCD码还是非组合BCD码,组合BCD码是用一个字节表示两位十进制数,非组合BCD码是用一个字节表示一位十进制数,对于组合的BCD码加减法运算其结果存放在AL中。 组合的BCD码加法调整指令DAA; 组合的BCD码减法调整指令DAS; 非组合的BCD码加法调整指令AAA; 非组合的BCD码减法调整指令AAS; 乘法的非组合BCD码调整指令AAM; 除法的非组合BCD码调整指令AAD。 8088/8086指令系统提供了实现加、减、乘、除运算指令,可参照表2所示内容。 表2数据类型的数据运算表 四、实验步骤与内容 1) 对于表格中三组无符号数,试编程求这三组数的指定运算结果,并考虑计算结果对标志寄存器中状态标志位的影响: ①实验分析 本实验要求简单,仅对指定三组数进行基本运算。只需使用ADD、SUB、MUL、DIV四个运算命令,并以MOV命令作为数值转移的手段即可。运算结果和状态标志的情况可以通过debug调试中的T命令进行逐步查看。 需要注意的主要有以下几点:

计算机组成原理运算器实验—算术逻辑运算实验

实验报告 、实验名称 运算器实验—算术逻辑运算实验 、实验目的 1、了解运算器的组成原理。 2、掌握运算器的工作原理。 3、掌握简单运算器的数据传送通路。 4、验证运算功能发生器( 74LS181)的组合功能 三、实验设备 TDN-CM++ 计算机组成原理教学实验系统一套,导线若干四、实验原理 实验中所用的运算器数据通路如图1-1 所示。其中两片74LSl81以串行方式构成8 位字长的ALU,ALU 的输出经过一个三态门(74LS245)和数据总线相连。三态门由ALU-R 控制,控制运算器运算的结果能否送往总线,低电平有效。为实现双操作数的运算,ALU 的两个数据输入端分别由二个锁存器DR1、DR2 (由74LS273实现)锁存数据。要将数据总线上的数据锁存到DRl、DR2 中,锁存器的控制端LDDR1 和DDR2必须为高电平,同时由T4 脉冲到来。 数据开关“( INPUT DEVICE")用来给出参与运算的数据,经过三态 (74LS245) 后送入数据总线,三态门由SW—B控制,低电平有效。数据显示灯“( BUS UNIT") 已和数据总线相连,用来显示数据总线上的内容。 图中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说明),其中除T4 为脉冲信号外,其它均为电平信号。由于实验电路中的时序信号均已连至“W/R UNIT ”的相应时序信号引出端,因此,在进行实验时,只需将“W /R UNIT"的T4接至“ STATE UNIT ”的微动开关KK2 的输入端,按动微动开关,即可获得实验所需的单脉冲。 ALU 运算所需的电平控制信号S3、S2、S1、S0 、Cn、M、LDDRl、 LDDR2 、ALU-B 、SW-B均由“ SWITCH UNIT ”中的二进制数据开关来模拟,其中Cn、ALU —B、SW 一 B 为低电平有效LDDR1 、LDDR2 为高电平有效。 对单总线数据通路,需要分时共享总线,每一时刻只能由一组数据送往总线。

组成原理实验1 8位算术逻辑运算

淮海工学院计算机工程学院实验报告书 课程名:《计算机组成原理》 题目:实验一8位算术逻辑运算 实验 班级: 学号: 姓名:

1、目的与要求 1)掌握算术逻辑运算器单元ALU(74LS181)的工作原理。 2)掌握简单运算器的数据传送通路组成原理。 3)验证算术逻辑运算功能发生器74LSl8l的组合功能。 4)按给定数据,完成实验指导书中的算术/逻辑运算。 2、实验设备 ZYE1601B计算机组成原理教学实验箱一台,排线若干。 3、实验步骤与源程序 l) 按下列步骤连接实验线路,仔细检查无误后,接通电源。 ⑴ ALUBUS连EXJ3; ⑵ ALUO1连BUS1; ⑶ SJ2连UJ2; ⑷跳线器J23上T4连SD; ⑸ LDDR1、LDDR2、ALUB、SWB四个跳线器拨在左边(手动方式); ⑹ AR跳线器拨在左边,同时开关AR拨在“1”电平。 2) 用二进制数码开关KD0~KD7向DR1和DR2寄存器置数。方法:关闭ALU输出三态门(ALUB`=1),开启输入三态门(SWB`=0),输入脉冲T4按手动脉冲发生按钮产生。设置数据开关具体操作步骤图示如下: LDDR1=1 LDDR1=0 说明:LDDR1、LDDR2、ALUB`、SWB`四个信号电平由对应的开关LDDR1、LDDR2、ALUB、SWB 给出,拨在上面为“1”,拨在下面为“0”,电平值由对应的显示灯显示,T4由手动脉冲开关给出。 ⑶检验DR1和DR2中存入的数据是否正确,利用算术逻辑运算功能发生器 74LS181的逻辑功能,即M=1。具体操作为:关闭数据输入三态门SWB`=1,打开ALU输出三态门ALUB`=0,当置S3、S2、S1、S0、M为1 1 1 1 1时,总线指示灯显示DR1中的数,而置成1 0 1 0 1时总线指示灯显示DR2中的数。 ⑷验证74LS181的算术运算和逻辑运算功能(采用正逻辑) 在给定DR1=35、DR2=48的情况下,改变算术逻辑运算功能发生器的功能设置,观察运算器的输出,填入表2.1.1中,并和理论分析进行比较、验证。。 4、测试数据与实验结果 实验数据记录

实验二 算术运算类操作实验 (基础与设计)

实验二算术运算类操作实验 (基础与设计) 一、实验要求和目的 1、了解汇编语言中的二进制、十六进制、十进制、BCD 码的表示形式; 2、掌握各类运算类指令对各状态标志位的影响及测试方法; 3、熟悉汇编语言二进制多字节加减法基本指令的使用方法; 4、熟悉无符号数和有符号数乘法和除法指令的使用; 5、掌握符号位扩展指令的使用。 6、掌握BCD 码调整指令的使用方法 二、软硬件环境 1、硬件环境:计算机系统 windows; 2、软件环境:装有MASM、DEBUG、LINK、等应用程序。 三、实验涉及的主要知识 本实验主要进行算术运算程序设计和调试,涉及到的知识点包括: 1.加减法处理指令 主要有加法指令ADD,带进位加法ADC,减法指令SUB,带进位减法指令SBB。 2.乘除法指令和符号位扩展指令 主要有无符号数乘法指令MUL,带符号数乘法指令IMUL,无符号数除法指令DIV,带符号数除法指令IDIV,以及符号位从字节扩展到字的指令CBW 和从字扩展到双字的指令CWD。3.BCD 码的调整指令 主要有非压缩的BCD 码加法调整指令DAA,压缩的BCD 码减法调整指令DAS,非压缩的BCD 码加法调整指令AAA,非压缩的BCD 码减法调整指令AAS,乘法的非压缩BCD码调整指令AAM,除法的非压缩BCD 码调整指令AAD。 8088/8086 指令系统提供了实现加、减、乘、除运算的上述基本指令,可对下表所示的数据类型进行数据运算。 四、实验内容与步骤 1、对于两组无符号数,087H 和034H,0C2H 和5FH,试编程求这两组数的和差积商,并考虑计算结果对标志寄存器中状态标志位的影响。 设计流程:

《8位算术逻辑运算实验》

3.2 算术逻辑运算部件 1位全加器 n 位并行加法器 ALU 单元 乘、除 法器 运算器 3.2.1 加法单元 若:+1101,+1111 两数相加,且分别放入A 、B 两个寄存器。 0 0 1 1 0 1 (补码、双符号位表示) +) 0 0 1 1 1 1 0 1 1 1 0 0 第3位:输入量: Ai(1),Bi(1), C i-1(1) 本位进位 C i ∑i C i-1 A i B i 低位进位 本位操作数 输入、输出量之间的关系式: Σi =(A B i C i-1 (1) C i = A i B i A B i )C i-1 (2) 根据上式,得出一位全加器的逻辑电路图: 根据(1)式得: 如果三个输人中1的个数为奇数,则本位和为1,否则为0。 根据(2)式得: 当本位的两个输入A i 、B i 均为1时,不管低位有无进位C i-1传来,都必然产生进位C i ;若C i-1为1,只要A i 、B i 中有一个为1,也必然产生进位。 i-1 i-1 i i i i (a ) (b ) 进位链 选择逻 辑控制 移位器 寄存器组 选择器

3.3.1 2并行加法器与进位逻辑结构 一、串行加法器 1.定义:如果每步只求一位和,将n 位加分成n 步实现,这样的加法器称为串行 加法器。 2.组成: 1 个一位全加器 1个移位寄存器:从低到高串行提供操作数相加; 1个寄存器 1个触发器 3.特点:结构简单,速度极慢。 二、并行加法器 1.定义:如果用n 位全加器一步实现n 位相加,即n 位同步相加,这样的加法器称为并行加法器。 2.组成: n 位加法器 并行加法器 串行进位链 进位链 并行进位链 根据(指C i-1 )输入量提供时间的不同,将进位链分为带串行进位链的并行加法器,带并行进位链的并行加法器。 加法器的运算速度不仅与全加器的运算速度有关,更主要的因素是取决于进位传递速度。 3.进位信号的基本逻辑: C i = A i B i +(A i )C i-1 令Gi= A i B i 进位产生函数 Pi = A i ,进位传递函数 4.串行进位链 (1)定义:各级进位信号直接依赖于低一级的进位信号 (2)关系式: C 1 = G 1 + P 1C 0 C 2 = G 2 + P 2C 1 C 3 = G 3 + P 3C 2 。。。。。。。。。 C n = G n + P n C n-1 (3)结构图:

16位算术逻辑运算实验

16 位算术逻辑运算实验 一、实验内容 1、实验原理 实验中所用16位运算器数据通路如图3-3所示。其中运算器由四片74LS181以并/串形成16位字长的ALU构成。低8位运算器的输出经过一个三态门74LS245(U33)到ALUO1插座,实验时用8芯排线和内部数据总线BUSD0~D7插座BUS1~6中的任一个相连,低8位数据总线通过LZD0~LZD7显示灯显示;高8位运算器的输出经过一个三态门74LS245(U33`)到ALUO1`插座,实验时用8芯排线和高8位数据总线BUSD8~D15插座KBUS1或KBUS2相连,高8位数据总线通过LZD8~LZD15显示灯显示;参与运算的四个数据输入端分别由四个锁存器74LS273(U29、U30、U29`、U30、)锁存,实验时四个锁存器的输入并联后用8芯排线连至外部数据总线EXD0~D7插座EXJ1~EXJ3中的任一个;参与运算的数据源来自于8位数据开并KD0~KD7,并经过一三态门74LS245(U51)直接连至外部数据总线EXD0~EXD7,输入的数据通过LD0~LD7显示。

本实验用到6个主要模块:⑴低8位运算器模块,⑵数据输入并显示模块,⑶数据总线显示模块,⑷功能开关模块(借用微地址输入模块),⑸高8位运算器模块,⑹高8位(扩展)数据总线显示模块。根据实验原理详细接线如下(接线⑴~⑸同实验一): ⑴ALUBUS连EXJ3; ⑵ALUO1连BUS1; ⑶SJ2连UJ2; ⑷跳线器J23上T4连SD; ⑸LDDR1、LDDR2、ALUB、SWB四个跳线器拨在左边(手动方式); ⑹AR跳线器拨在左边,同时开关AR拨在"1"电平; ⑺ALUBUS`连EXJ2;

计算机组成原理实验报告材料

福建农林大学计算机与信息学院信息工程类实验报告系:计算机科学与技术专业:计算机科学与技术年级: 09级 姓名:张文绮学号: 091150022 实验课程:计算机组成原理 实验室号:___田405 实验设备号: 43 实验时间:2010.12.19 指导教师签字:成绩: 实验一算术逻辑运算实验 1.实验目的和要求 1. 熟悉简单运算器的数据传送通路; 2. 验证4位运算功能发生器功能(74LS181)的组合功能。 2.实验原理 实验中所用到的运算器数据通路如图1-1所示。其中运算器由两片74181

以并/串形式构成8位字长的ALU。运算器的输出经过一个三态门(74245)和数据总线相连,运算器的两个数据输入端分别由两个锁存器(74373)锁存,锁存器的输入连接至数据总线,数据开关INPUT DEVICE用来给出参与运算的数据,并经过一个三态门(74245)和数据总线相连,数据显示灯“BUS UNIT”已和数据总线相连,用来显示数据总线内容。 图1-2中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说明),其中除T4为脉冲信号,其它均为电平信号。由于实验电路中的时序信号均已连至W/R UNIT的相应时序信号引出端,因此,在进行实验时,只需将W/R UNIT 的T4接至STATE UNIT的微动开关KK2的输出端,按动微动开关,即可获得实验所需的单脉冲,而S3,S2,S1,S0,Cn,LDDR1,LDDR2,ALU-B,SW-B各电平控制信号用SWITCH UNIT中的二进制数据开关来模拟,其中Cn,ALU-B,SW-B为低电平控制有效,LDDR1,LDDR2为高电平有效。 3.主要仪器设备(实验用的软硬件环境) ZYE1603B计算机组成原理教学实验系统一台,排线若干。 4.操作方法与实验步骤

《计算机组成原理》实验报告---8位算术逻辑运算实验

. '. 计算机专业类课程 实验报告 课程名称:计算机组成原理 学 院:信息与软件工程学院 专 业:软件工程 学生姓名: 学 号: 指导教师: 日 期: 2012 年 12 月 15 日

电子科技大学 实验报告 一、实验名称:8位算术逻辑运算实验 二、实验学时:2 三、实验内容、目的和实验原理: 实验目的: 1.掌握算术逻辑运算器单元ALU(74LS181)的工作原理。 2.掌握模型机运算器的数据传送通路组成原理。 3.验证74LS181的组合功能。 4.按给定数据,完成实验指导书中的算术/逻辑运算。 实验内容: 使用模型机运算器,置入两个数据DR1=35,DR2=48,改变运算器的功能设定,观察运算器的输出,记录到实验表格中,将实验结果对比分析,得出结论。 实验原理: 1.运算器由两片74LS181以并/串形式构成8位字长的ALU。

. '. 2.运算器的输出经过一个三态门(74LS245)和数据总线相连。 3.运算器的两个数据输入端分别由两个锁存器(74LS273)锁存。 4.锁存器的输入连至数据总线,数据开关(INPUT DEVICE)用来给 出参与运算的数据,并经过一三态门(74LS245)和数据总线相连。 5.数据显示灯(BUS UNIT)已和数据总线相连,用来显示数据总线内 容。 实验器材(设备、元器件):模型机运算器 四、实验步骤: 1. 仔细查看试验箱,按以下步骤连线 1)ALUBUS连EXJ3 2) ALU01连BUS1 3) SJ2连UJ2 4) 跳线器J23上T4连SD 5) LDDR1,LDDR2,ALUB,SWB四个跳线器拨在左边 6) AR跳线器拨在左边,同时开关AR拨在“1”电平 2. 核对线路,核对正确后接通电源 3. 用二进制数据开关KD0-KD7向DR1和DR2寄存器置入8位运算数据。

计算机组成原理实验报告一 算术逻辑运算器

算术逻辑运算器 一.实验目的与要求 试验目的:1、掌握算术运算器单元ALU(74LS181)的工作原理。 2、掌握简单运算器的数据传送通道。 3、验算由74LS181等组合逻辑电路组成的运算功能发生器运算功能。 4、能够按给定数据,完成实验指定的算术/逻辑运算。 试验要求:按练习的要求输入数据和完成相应的操作,将实验结果填入表格二.实验方案 1、按实验连线图接好线,仔细检查正确与否,无误后才接通电源。 2、用二进制数据开关分别向DR1寄存器和DR2寄存器置数。 3、通过总线输出DR1寄存器和DR2寄存器的内容。 4、比较实验结果和理论值是否一致,如果不一致,就分析原因,然后重做。 三.实验结果 练习一表1.1.2 练习二表1.1.3

1.实验结果分析 ●实验结果和理论值一致,讲明实验操作过程正确,实验结果准确无误。 2.结论 ●要有理论基础才可以做好实验的每一步,所以,平时一定要学好理论知识。 3.问题与讨论 我们这个小组,在做第二个实验时就遇到了很多问题,就是我们我无论输入什么显示灯都不变,然后我们就互相讨论,但是还是没办法解决,后来问了老师才知道我们插错线。 4.实验总结 (1)以前没有做过这种实验,所以实验前我做了充分的预习。但预习毕竟不是实际操

作,经常会在想实际情况会是什么样,在实际操作过程中我遇到了不少的困难,例如我做第二个实验时就插错线,幸好在老师的帮助下还加上自己的思考,终于把问题解决掉了。我觉得,实验前老师应该做些示范给我们看,这样我们会学得更快。 (2)在做表1.1.4的实验时,不知道怎样查出S3、S2、S1、S0、M、Cn的值,问周围的同学,他们也不知道。因为这个很重要,直接影响到后面的实验,所以请教了老师。 经过老师的解释后,我顺利地完成了后面的实验。 5.思考题 1)写出本实验中的各控制端的作用。 答:S0 S1 S2 S3(它们共同决定运算器执行哪一种运算)M(决定是算术运算还是逻辑运算). CN(表示有无进位) SW-B(输入三态门控制“INPUT DEVICE”中的八位数据开关D7-D0的数据是否送到数据总线BUS上) ALU-B(输出三态门,控制运算器的运算结果是否送到数据总线BUS)LDDR1 LDDR2 (寄存器,寄存数据) 2)在实验中哪些控制端高电平有效,哪些低电平有效? 答:高电平有效(LDDR1 LDDR2)低电平有效(CN ALU-B SW-B) 3)在实验正常的输入和输出操作中,SW-B和ALU-B为什么不能同时为0的状态? 答:ALU-B SW-B都是低电平有效,如果同时为低电平,这将导致数据一边输入一边输出。 4)DR1置数完成后,为什么要关闭控制端LDDR1? 答:不关闭的话将导致第二次输入的数据存入DR1中,覆盖之前的数据 DR2置数完成后,为什么要关闭控制端LDDR2? 答:不关闭的话,下此操作后的数据将会存入DR2中,覆盖之前的数据 5)在练习三的表1.1.4中,要求每一次的运算结果都要存入DR2寄存器,解释该存入操作 中为什么不用SW-B置“0”和ALU-B置“1” 答:因为这时候的数据已经是存在控制器中,不必要再输入,所以不必那样做。 6)“A+B”和”A加B”这两种运算有什么不同,查找表1.1.1,分别写出这两种运算中S3、 S2、S1、S0、M、CN各控制端的状态。 答:A+B表示逻辑加11101* A加B表示算术加100101 7)CN是进位控制端,在逻辑运算和算术运算中,它与哪种运算有关? 答:算术运算 8)做减法操作DR1减DR2时,与进位CN是否有关?如有关CN是0还是1? 答:有关,因为这是算术减。与0有关 进位控制运算器 1.实验目的与要求 试验目的: 1)、验证带进位控制的算术运算发生器的功能。 2)、按给定的数据完成几种指定的算术运算。 二、实验要求: 按练习一和练习二的要求输入数据和完成相应的操作,将实验结果填入表1.2.2和1.2.3. 三. 实验方案

实验二算术逻辑运算及移位操作

实验二算术逻辑运算及移位操作 一、实验目的 1.熟悉算术逻辑运算指令和移位指令的功能。 2.了解标志寄存器各标志位的意义和指令执行对它的影响。 二、实验预习要求 1.复习8086指令系统中的算术逻辑类指令和移位指令。2.按照题目要求在实验前编写好实验中的程序段。 三、实验任务 1.实验程序段及结果表格如表: 表

2.用BX 寄存器作为地址指针,从BX 所指的内存单元(0010H)开始连续存入(10H 、04H 、30H),接着计算内存单元中的这三个数之和,和放在 单元中,再求出这三个数之积,积放0014单元中。写出完成此功能的程

3 后结果(AX)= (1) 传送15H 到AL 寄存器; (2) 再将AL 的内容乘以2 ; (3) 接着传送15H 到BL 寄存器; (4) 最后把AL 的内容乘以BL 的内容。 4商= (1) 传送数据2058H 到DS:1000H 单元中,数据12H 到DS:1002H 单元中; (2) 把 DS:1000H 单元中的数据传送到AX 寄存器; (3) 把AX 寄存器的内容算术右移二位; (4) 再把AX 寄存器的内容除以DS:1002H 字节单元中的数; (5) 最后把商存入字节单元DS:1003H 中。 5.下面的程序段用来清除数据段中从偏移地址0010H 开始的12元的内容(即将零送到这些存储单元中去)。 (1) 将第4条比较指令语句填写完整(划线处)。 MOV SI ,0010H NEXT: MOV WORD PTR[SI],0 ADD SI ,2 CMP SI ,答案 22H (或者20H ) JNE NEXT HLT (2) 假定要按高地址到低地址的顺序进行清除操作(高地址从0020H 开始),则上述程序段应如何修改 上机验证以上两个程序段并检查存储单元的内容是否按要求进行了改变。 6. 输入并运行表中的程序段,把结果填入表右边的空格中,并分析结果,说明本程序段的功能是什么。

计算机组成原理实验报告(运算器组成、存储器)

计算机组成原理实验报告 一、实验1 Quartus Ⅱ的使用 一.实验目的 掌握Quartus Ⅱ的基本使用方法。 了解74138(3:8)译码器、74244、74273的功能。 利用Quartus Ⅱ验证74138(3:8)译码器、74244、74273的功能。 二.实验任务 熟悉Quartus Ⅱ中的管理项目、输入原理图以及仿真的设计方法与流程。 新建项目,利用原理编辑方式输入74138、74244、74273的功能特性,依照其功能表分别进行仿真,验证这三种期间的功能。 三.74138、74244、74273的原理图与仿真图 1.74138的原理图与仿真图 74244的原理图与仿真图

1. 4.74273的原理图与仿真图、

实验2 运算器组成实验 一、实验目的 1.掌握算术逻辑运算单元(ALU)的工作原理。 2.熟悉简单运算器的数据传送通路。 3.验证4位运算器(74181)的组合功能。 4.按给定数据,完成几种指定的算术和逻辑运算。 二、实验电路 附录中的图示出了本实验所用的运算器数据通路图。8位字长的ALU由2片74181构成。2片74273构成两个操作数寄存器DR1和DR2,用来保存参与运算的数据。DR1接ALU的A数据输入端口,DR2接ALU的B数据输入端口,ALU的数据输出通过三态门74244发送到数据总线BUS7-BUS0上。参与运算的数据可通过一个三态门74244输入到数据总线上,并可送到DR1或DR2暂存。 图中尾巴上带粗短线标记的信号都是控制信号。除了T4是脉冲信号外,其他均为电位信号。nC0,nALU-BUS,nSW-BUS均为低电平有效。 三、实验任务 按所示实验电路,输入原理图,建立.bdf文件。 四.实验原理图及仿真图 给DR1存入01010101,给DR2存入10101010,然后利用ALU的直通功能,检查DR1、

计算机组成原理实验报告 算术逻辑运算单元实验

西华大学数学与计算机学院实验报告 课程名称:计算机组成原理年级:2011级实验成绩: 指导教师:祝昌宇姓名:蒋俊 实验名称:算术逻辑运算单元实验学号:312011*********实验日期:2013-12-15 一、目的 1. 掌握简单运算器的数据传输方式 2. 掌握74LS181的功能和应用 二、实验原理 (1)ALU单元实验构成 1、结构试验箱上的算术逻辑运算单元上的运算器是由运算器由2片74LS181构成8字长的ALU 单元。 2、2片74LS373作为2个数据锁存器(DR1、DR2),8芯插座ALU-OUT作为数据输入端,可通过短8芯扁平电缆,把数据输入端连接到数据总线上。 3、运算器的数据输出由一片74LS244(输出缓冲器)来控制,8芯插座ALU-OUT作为数据输出端,可通过短8芯扁平电缆把数据输出端连接到数据总线上。 (2)ALU单元的工作原理 数据输入锁存器DR1的EDR1为低电平,并且D1CK有上升沿时,把来自数据总线上的数据打入锁存器DR1。同样,使EDR2为低电平,并且D2CK有上升沿时,把来自数据总线上的数据打入锁存器DR2。 算术逻辑运算单元的核心是由2片74LS181构成,它可以进行2个8位二进制数的算术逻辑运算,74LS181的各种工作方式可通过设置其控制信号来实现(S0、S1、S2、S3、M、CN)。当实验者正确设置了74LS181的各个控制信号,74LS181会运算数据锁存器DR1、DR2内的数据。由于DR1、DR2已经把数据锁存,只要74LS181的控制信号不变,那么74LS181的输出数据也不会发生改变。 输出缓冲器采用74LS244,当控制信号ALU-O为低电平时,74LS244导通,把74LS181的运算结果输出到数据总线;ALU-O为高电平时,74LS244的输出为高阻。

计算机组成原理--实验二算术逻辑运算实验

实验二算术逻辑运算实验 一、实验目的 (1)了解运算器芯片(74LS181)的逻辑功能。 (2)掌握运算器数据的载入、读取方法,掌握运算器工作模式的设置。 (3)观察在不同工作模式下数据运算的规则。 二、实验原理 1.运算器芯片(74LS181)的逻辑功能 74LS181是一种数据宽度为4个二进制位的多功能运算器芯片,封装在壳中,封装形式如图2-3所示。 5V A1 B1 A2 B2 A3 B3 Cn4 F3 BO A0 S3 S2 S1 S0 Cn M F0 F1 F2 GND 图 2-3 74LS181封装图 主要引脚有: (1)A0—A3:第一组操作数据输入端。 (2)B0—B3:第二组操作数据输入端。 (3)F0—F3:操作结果数据输入端。 (4)F0—F3:操作功能控制端。 (5):低端进位接收端。

(6):高端进位输出端。 (7)M:算数/逻辑功能控制端。 芯片的逻辑功能见表2-1.从表中可以看到当控制端S0—S3为1001、M为0、 为1时,操作结果数据输出端F0—F3上的数据等于第一组操作数据输入端A0—A3上的数据加第二组操作数据输入端B0—B3上的数据。当S0—S3、M、 上控制信号电平不同时,74LS181芯片完成不同功能的逻辑运算操作或算数运算操作。在加法运算操作时,、进位信号低电平有效;减法运算操作时,、 借位信号高电平有效;而逻辑运算操作时,、进位信号无意义。 2.运算器实验逻辑电路 试验台运算器实验逻辑电路中,两片74LS181芯片构成一个长度为8位的运算器,两片74LS181分别作为第一操作数据寄存器和第二操作数据寄存器,一片74LS254作为操作结果数据输出缓冲器,逻辑结构如图2-4所示。途中算术运算操作时的进位Cy判别进位指示电路;判零Zi和零标志电路指示电路,将在实验三中使用。 第一操作数据由B-DA1(BUS TO DATA1)负脉冲控制信号送入名为DA1的第一操作数据寄存器,第二操作数据由B-DA2(BUS TO DATA2)负脉冲控制信号送入名为DA2的第二操作数据寄存器。74LS181的运算结果数据由(ALU TO BUS)低电平控制信号送总线。S0—S3、M芯片模式控制信号同时与两片74LS181的S0—S3、M端相连,保证二者以同一工作模式工作。实验电路的低端进位接收端Ci与低4位74LS181的相连,用于接收外部进位信号。低4为74LS181的与高4位74LS181的上相连,实现高、低4位之间进位信号的传递。高4位之间进位信号的传递。高4位74LS181的送进位Cy判别和进位指示电路。 表2-1 74LS181 芯片逻辑功能表

算术逻辑运算实验

实验报告 实验项目:算术逻辑运算实验(试验一) 课程名称:计算机组成原理 姓名:学号同组姓名:学号:实验位置(机号): 实验日期 实验1.掌握简单运算器的数据传送通路 目的2.验证运算器功能发生器(74LS181)的组合功能 3.验证带进为控制的算术运算器功能发生器(74LS181)的功能 4.按指定的数据完成几种制定的算术运算 5.验证移位控制的组合功能 实验YY-Z02计算机组成原理教学实验系统一台,排线若干。设备 实验 内容1.实验原理 (算 运算器实验原理图 法、 程 T4______ ALU-B 序、

_____ _____ 进位CyCn 步骤 299-B 判零_____ M 74LS2 电路CyNCn 和方 S0 99 ALU S1 法) (74LS181) S2 S3 _____I/O-RINPUT Ai =“0”B-DA1DA1 (74LS273)DA2

(74LS273)B-DA2 实验中所用的运算器数据通路图如图1-1所示,算术逻辑实验接线图如图1-2所示。图中所示的是由两片段74LS181芯片以并/串形式构成的8位字长的运算器。右方为低压4位运算芯片,左方为高4位运算芯片。低位芯片的进位输出端C(n+4)与高芯片的进位输入端CN相连,高位芯片的进位输出引至外部。两个芯片的控制端S0~S3和M各自相连。 2.实验步骤 1)算数逻辑运算 i.输入单元置数一 ii.设置I/O-R# = 0 iii.ALU-B# =1 iv.B-DA1 _| ̄|_将输入单元的输入数据存入DA1中 v.输入单元置数据二 vi.B-DA2 _| ̄|_将数据存入DA2中 vii.设置S 3 -------S 0、M、Cn根据要求按照定义操作设置完成运算viii. ix. x.I/O-R# = 1 ALU-B = 0运算结果送总线 IO-W ̄|_| ̄总线数据送显示单元显示 数据1.算数逻辑运算

计算机组成原理实验二算术逻辑运算实验

计算机组成原理实验二 算术逻辑运算实验 SANY标准化小组 #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#

实验二算术逻辑运算实验 一、实验目的 (1)了解运算器芯片(74LS181)的逻辑功能。 (2)掌握运算器数据的载入、读取方法,掌握运算器工作模式的设置。 (3)观察在不同工作模式下数据运算的规则。 二、实验原理 1.运算器芯片(74LS181)的逻辑功能 74LS181是一种数据宽度为4个二进制位的多功能运算器芯片,封装在壳中,封装形式如图2-3所示。 图2-3 74LS181封装图 主要引脚有: (1)A0—A3:第一组操作数据输入端。 (2)B0—B3:第二组操作数据输入端。 (3)F0—F3:操作结果数据输入端。 (4)F0—F3:操作功能控制端。 ??????:低端进位接收端。 (5)CC (6)CC4:高端进位输出端。 (7)M:算数/逻辑功能控制端。 芯片的逻辑功能见表2-1.从表中可以看到当控制端S0—S3为1001、M为??????为1时,操作结果数据输出端F0—F3上的数据等于第一组操作数据输0、CC 入端A0—A3上的数据加第二组操作数据输入端B0—B3上的数据。当S0—S3、??????上控制信号电平不同时,74LS181芯片完成不同功能的逻辑运算操作或M、CC ??????、CC4进位信号低电平有效;减法运算数运算操作。在加法运算操作时,CC ??????、 算操作时,CC ??????、CC4借位信号高电平有效;而逻辑运算操作时,CC CC4进位信号无意义。 2.运算器实验逻辑电路 试验台运算器实验逻辑电路中,两片74LS181芯片构成一个长度为8位的运算器,两片74LS181分别作为第一操作数据寄存器和第二操作数据寄存器,一片74LS254作为操作结果数据输出缓冲器,逻辑结构如图2-4所示。途中算

北理工-汇编-实验二-算术运算类操作实验

………………………………………………最新资料推荐……………………………………… 本科实验报告 实验名称:实验二算术运算类操作实验(基础与设计)课程名称:CPU与汇编实验实验时间: 任课教师:实验地点: 实验教师: 实验类型:□原理验证■综合设计□自主创新 学生姓名: 学号/班级:组号:无学院:信息与电子同组搭档:无专业:信息工程成绩:

一、实验要求和目的 1.了解汇编语言中的二进制、十六进制、十进制、BCD 码的表示形式; 2.掌握各类运算类指令对各状态标志位的影响及测试方法; 3.熟悉汇编语言二进制多字节加减法基本指令的使用方法; 4.熟悉无符号数和有符号数乘法和除法指令的使用; 5.掌握符号位扩展指令的使用; 6.掌握BCD 码调整指令的使用方法。 二、软硬件环境 1、硬件环境:计算机系统 windows; 2、软件环境:装有MASM、DEBUG、LINK、等应用程序。 三、实验涉及的主要知识 1.加减法处理指令 2.乘除法指令和符号位扩展指令 3.BCD 码的调整指令 四、实验内容 (一)对于两组无符号数,087H 和034H,0C2H 和5FH,试编程求这两组数的和差积商,并考虑计算结果对标志寄存器中状态标志位的影响:

1.流程图 2.程序代码: DA TAS SEGMENT DA TAS ENDS STACKS SEGMENT STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START : MOV AX,DATAS MOV DS,AX MOV AX,0C2H MOV BX,5FH ADD AX,BX ;add MOV AX,0C2H MOV BX,5FH SUB AX,BX ;sub MOV AX,0C2H MOV BX,5FH MUL BX ;mul MOV AX,0C2H MOV BX,5FH DIV BX ;div MOV AH,4CH INT 21H CODES ENDS ENDSTART (将数据改变得到另一组输出结果) 3.实验结果 以第一组数的加法为例 (已将截图以上输入-t 进行debug 的步骤省略) 此时右下角信息(NV UP ……)代表标志寄存器的值。 4.结果分析: 由资料可得: 开始 结束 将两组数据分别存入AX ,BX 中,将二者中的数据相加,存入AX 中 将两组数据分别存入AX ,BX 中,用AX 中数据减去BX 中数据,存入AX 中 将两组数据分别存入AX ,BX 中,将二者中的数据相乘,存入AX 中 将两组数据分别存入AX , BX 中,用AX 中数据除以 BX 中数据,存入AX 中

实验二带进位控制8位算术逻辑运算实验

实验二带进位控制8位算术逻辑运算实验 一、实验目的 1、验证带进位控制的算术逻辑运算发生器的功能。 2、按指定数据完成几种指定的算术运算。 二、实验内容 1、实验原理 带进位控制运算器的实验原理如图所示,在实验(1)的基础上增加进位控制部分,其中高位74LS181(U31)的进位CN4通过门UN4E、UN2C、UN3B 进入UN5B的输入端D,其写入脉冲由T4和AR信号控制,T4是脉冲信号,在手动方式下进行实验时,只需将跳线器J23上T4与手动脉冲发生开关的输出端SD相连,按动手动脉冲开关,即可获得实验所需的单脉冲。AR是电平控制信号(低电平有效),可用于实现带进位控制实验。从图中可以看出,AR必须为“0’’电平,D型触发器74LS74(UN5B)的时钟端CLK才有脉冲信号输入。才可以将本次运算的进位结果CY锁存到进位锁存器74LS74(UN5B)中。 2、实验接线 实验连线(1)~(5)同实验~,洋细如下: (1)ALUBUS~连ExJ3; (2)ALUO1连BUSl; (3)SJ2连UJ2; (4)跳线器J23上T4连SD; (5)LDDRl、LDDR2、ALUB、SWB四个跳线器拨在左边(手动方式);(6)AR、299B跳线器拨在左边,同时开关AR拨在“0’’电平,开关299B拨在“1”电平; (7)J25跳线器拨在右边。 3、实验步骤 (1)仔细查线无误后,接通电源。 (2)用二进制数码开关KDO~KD7向DRl和DR2 寄存器置数,方法:关闭ALU输出三态门ALUB=1,开启输入三态门SWB=0,输入脉冲T4按手动脉冲

发生按钮产生。如果选择参与操作的两个数据分别为55H 、AAH ,将这两个数存入DR1和DR2的具体操作步骤如下: (3)开关ALUB=0,开启输出三态门,开关SWB=1,关闭输入三态门,同时让 LDDR1=0,LDDR2=0。 (4)如果原来有进位,CY=1,进位灯亮,但需要清零进位标志时,具体操作方 法如下: ◆ S3、S2、S1、S0、M 的状态置为0 0 0 0 0,AR 信号置为“0”电平 (清零操作时DRl 寄存器中的数应不等于FF )。 ◆ 按动手动脉冲发生开关,CY=0,即清进位标志。 注:进位标志指示灯CY 亮时表示进位标志为“1”,有进位;进位标志指示灯CY 灭时,表示进位位为“0”,无进位。 (5)验证带进位运算及进位锁存功能 这里有两种情况: ● 进位标志已清零,即CY=0,进位灯灭。 ? 使开关CN=0,再来进行带进位算术运算。例如步骤(2)参与运算的两 个数为55H 和AAH ,当S3、S2、S1、S0状态为10010,此时输出数据总线显示灯上显示的数据为DRl 加DR2再加初始进位位“1” (因CN=0),相加的结果应为ALU=00,并且产生进位,此时按动手动脉冲开关,则进位标志灯亮,表示有进位。 ? 使开关CN=1,当S3、S2、S1、S0状态为10010,则相加的结累ALU=FF , 并且不产生进位。

实验一 运算器实验(1)

级班学号姓名 实验报告 实验一运算器实验 一、实验目的: 1、掌握简单运算器的数据传送通路; 2、验证运算功能发生器(74LS181)的组合功能; 3、验证带进位控制的算术运算功能发生器的功能; 4、按指定数据完成几种指定的算术运算。 二、实验设备 DVCC-C5JH计算机组成原理教学实验系统一台,排线若干。 三、实验原理 1、实验中所用的运算器数据通路图如附A图1-3所示。其中运算器由两片74LS181以并/串形式构成8位字长的ALU。运算器的输出经过一个三态门(74LS245)和数据总线相连,运算器的两个数据输入端分别由二个锁存器(74LS373)锁存,锁存器的输入连至数据总线,数据开关(“INPUT DEVICE”)用来给出参与运算的数据,并经过一三态门(74LS245)和数据总线相连,数据显示灯(“BUS UNIT”)已和数据总线相连,用来显示数据总线内容。 2、控制信号说明: T4:脉冲信号;实验时,将W/R UNIT的T4接至STATE UNIT的微动开关KK2的输出端,按动微动开关,即可获得实验所需的单脉冲。 S3~S0、M:运算器的功能控制信号;可参见74181芯片的功能表P64。 Cn:进位控制信号,低电平有效。 LDDR1、LDDR2:数据寄存器DR1和DR2的数据装载控制信号,高电平有效。ALU-B:该控制信号控制是否将ALU的结果送到总线上,低电平有效。

SW-B :三态门开关信号,控制是否打开三态门,低电平有效。 四、实验内容 1、算术逻辑运算实验: 实验步骤: ①按图1-2连接路线,仔细检查无误后,接通电源; ②用二进制数码开关向DR1和DR2寄存器置数。 A )数据开关置01100101; B )设置switch unit :ALU-B=1 SW-B=0 LDDR1=1 LDDR2=0 C )按动KK2给出一个单脉冲信号,即T4=┎┒ D )数据开关置10100111; E )设置switch unit :LDDR1=0 LDDR2=1 F )按动KK2给出一个单脉冲信号。 ③检验DR1和DR2中存的数是否正确: A )设置switch unit :SW-B=1 ALU-B=0 B )设置switch unit :当S 3S 2S 1S 0M=00000,总线显示灯显示DR1中的数,而 置为S 3S 2S 1S 0M=01010,总线显示灯显示DR2中的数。 ④验证74LS181的算术运算和逻辑运算功能:[给定A=(DR1)=65 H ,B=(DR2)=A7 H] A )改变运算器的功能设置,观察运算器的输出,填入下表: DR1 DR2 S 3S 2S 1S 0 M=1(算术运算) M=0(逻辑运算) Cn=1 (无进位) Cn=0 (有进位) 65 A7 0000 01100101 01100110 10011010 65 A7 0001 11100111 11101000 00011000 65 A7 0010 01111101 01111110 10000010 65 A7 0011 11111111 00000000 00000000 65 A7 0100 10100101 10100110 11011010 65 A7 0101 00100111 00101000 01011000

计算机组成实验报告汇总

计算机组成与体系结构 实验报告 班级:物联网工程1311 姓名:沈扬凯 学号: 2013198145 老师:项东升

实验项目一 一、实验目的 通过了解高级语言源程序和目标机器代码的不同表示及其相互转换,深刻理解高级语言和机器语言之间的关系,以及机器语言和不同体系结构之间的关系。 二、实验要求: 在VC6.0中创建下列源程序 #include void main() { int i=100; int j=-1; int k; k=i+j; printf("%d",k); } 然后对该程序进行编译、链接,最终生成可执行目标代码。 三、实验报告 1.给出做实验的过程. 关键代码如下:

2.给出源程序(文本文件)的内容(用十六进制形式表示)。 3.给出可执行目标文件(二进制文件)的内容(用十六进制形式表示)。

4.VC6.0调试环境:设置断点、单步运行、变量的值(十进制、十六进制)、变量的地址、变量的存储。 断点设置如下:

变量的值十进制: 变量的值十六进制: 变量的地址:

5.VC 6.0反汇编:查看源程序对应的汇编程序、可执行目标程序的二进制编码、了解如何给变量分配内存、系统函数程序段的调用。 6.分析或回答下列问题。 (1)分析同一个源程序在不同机器上生成的可执行目标代码是否相同。 不相同。因为不同的机器硬件的组成不同,因此同一个源程序在不同的机器上生成的目标文件不同。 (2)你能在可执行目标文件中找出函数printf()对应的机器代码段吗?能的话,请标示出来。 不能。因为源程序中的printf函数在可执行文件中已转换为机器语言。被翻译的机器语言中有printf函数,但是不知道是从哪一段开始翻译的。 (3)为什么源程序文件的内容和可执行目标文件的内容完全不

相关主题
文本预览
相关文档 最新文档