运算器实验报告--孔锐-16281132-1
运算器实验报告
运算器实验报告实验背景运算器是计算机中一种重要的基本逻辑电路,用于进行算术和逻辑运算。
本次实验旨在设计一个基于逻辑门的4位二进制加法器,以实现两个4位二进制数的加法运算。
实验设备与材料1. 逻辑门:AND门、OR门、XOR门、NOT门2. 电路连接线3. 电压源4. 实验板5. 4个开关、8个LED灯实验原理在二进制数的加法中,我们需要对每一位进行逐个相加,并考虑进位的情况。
对于两个4位二进制数的加法,我们可以将其划分为4个单独的位加法运算,再结合进位的情况进行计算。
实验步骤1. 连接电路:根据逻辑门的真值表和逻辑方程,使用电路连接线将逻辑门按照设计要求连接在一起。
2. 设计输入:使用4个开关分别表示两个4位二进制数的每一位输入。
3. 设计输出:使用8个LED灯分别表示两个4位二进制数的每一位输出和进位。
4. 进行实验:按照设计的输入情况,观察LED灯的亮灭情况,验证加法器的正确性。
5. 记录结果:将实验结果记录在实验报告中。
实验结果与分析实验中,我们设计的4位二进制加法器成功实现了两个4位二进制数的加法运算。
通过观察LED灯的亮灭情况,我们可以判断出加法器的计算是否正确。
在实验过程中,我们发现在某些情况下,LED灯的亮灭可能存在短暂的闪烁现象,这是因为逻辑门的切换速度限制导致的,不会影响加法器的正常运算结果。
实验总结通过本次实验,我们深入理解了运算器的工作原理,并成功设计并实现了一个基于逻辑门的4位二进制加法器。
在实验中,我们熟悉了逻辑门的连接方法,并通过观察LED灯的亮灭情况验证了加法器的正确性。
此外,在实验中我们也发现了逻辑门的切换速度限制会导致LED 灯的闪烁现象。
在实际应用中,我们需要根据逻辑门的性能要求选择适当的门延迟时间,以保证运算器的稳定工作。
总体而言,本次实验对于我们理解运算器的工作原理,掌握逻辑门的应用具有重要意义。
我们相信通过进一步的学习和实践,我们能够设计出更加复杂和高效的运算器,为计算机的发展做出更大的贡献。
《计算机组成原理》运算器实验报告
一. 实验目的及要求(1) 了解运算器的组成结构。
(2) 掌握运算器的工作原理。
二. 实验模块及实验原理本实验的原理如图1-1-1所示。
运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器A 和暂存器B ,三个部件同时接受来自 A 和B 的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如ARM),各部件对操作数进行何种运算由控制信号 S3…S0和CN来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为 ALU的输出。
如果是影响进位的运算,还将置进位标志 FC,在运算结果输出前,置 ALU零标志。
ALU中所有模块集成在一片CPLD 中。
逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不再赘述。
移位运算采用的是桶形移位器,一般采用交叉开关矩阵来实现,交叉开关的原理如图1-1-2所示。
图中显示的是一个 4X4 的矩阵(系统中是一个 8X8 的矩阵)。
每一个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可实现移位功能,即:(1) 对于逻辑左移或逻辑右移功能,将一条对角线的开关导通,这将所有的输入位与所使用的输出分别相连, 而没有同任何输入相连的则输出连接0 。
(2) 对于循环右移功能,右移对角线同互补的左移对角线一起激活。
例如,在4 位矩阵中使用‘右1 ’和‘左 3 ’对角线来实现右循环 1 位。
(3) 对于未连接的输出位,移位时使用符号扩展或是 0 填充,具体由相应的指令控制。
使用另外的逻辑进行移位总量译码和符号判别。
运算器部件由一片CPLD 实现。
ALU的输入和输出通过三态门74LS245 连到CPU 内总线上,另外还有指示灯标明进位标志FC和零标志FZ。
请注意:实验箱上凡丝印标注有马蹄形标记‘’,表示这两根排针之间是连通的。
图中除 T4和CLR ,其余信号均来自于 ALU单元的排线座,实验箱中所有单元的T1、T2、T3、T4都连接至控制总线单元的 T1、T2、T3、T4,CLR 都连接至 CON单元的CLR 按钮。
运算器实验实验报告
运算器实验实验报告一、实验目的运算器是计算机中进行算术和逻辑运算的部件,本次实验的目的在于深入理解运算器的工作原理,掌握其基本结构和功能,并通过实际操作和测试,提高对计算机硬件系统的认识和实践能力。
二、实验设备本次实验所使用的设备包括:计算机、数字逻辑实验箱、导线若干等。
三、实验原理运算器主要由算术逻辑单元(ALU)、寄存器、数据通路和控制逻辑等组成。
ALU 是运算器的核心部件,能够执行加法、减法、乘法、除法等算术运算以及与、或、非等逻辑运算。
寄存器用于存储参与运算的数据和运算结果,数据通路负责在各部件之间传输数据,控制逻辑则根据指令控制运算器的操作。
在本次实验中,我们采用数字逻辑电路来构建运算器的基本功能单元,并通过连线和设置控制信号来实现不同的运算操作。
四、实验内容1、算术运算实验(1)加法运算首先,将两个 8 位二进制数分别输入到两个寄存器中,然后通过控制信号使 ALU 执行加法运算,将结果存储在另一个寄存器中,并通过数码管显示出来。
通过改变输入的数值,多次进行加法运算,观察结果是否正确。
(2)减法运算与加法运算类似,将两个 8 位二进制数输入到寄存器中,使 ALU 执行减法运算,观察结果的正确性。
2、逻辑运算实验(1)与运算输入两个 8 位二进制数,控制 ALU 进行与运算,查看结果。
(2)或运算同样输入两个 8 位二进制数,进行或运算并验证结果。
(3)非运算对一个 8 位二进制数进行非运算,观察输出结果。
3、移位运算实验(1)逻辑左移将一个 8 位二进制数进行逻辑左移操作,观察移位后的结果。
(2)逻辑右移执行逻辑右移操作,对比移位前后的数据。
五、实验步骤1、连接实验设备按照实验箱的说明书,将计算机与数字逻辑实验箱正确连接,并接通电源。
2、构建电路根据实验要求,使用导线将数字逻辑芯片连接起来,构建运算器的电路结构。
3、输入数据通过实验箱上的开关或按键,将待运算的数据输入到相应的寄存器中。
运算器实验实验报告(计算机组成原理)
运算器实验实验报告(计算机组成原理)西安财经学院信息学院《计算机组成原理》实验报告实验名称运算器实验实验室实验楼 418实验日期第一部分8 位算术逻辑运算实验一、实验目的 1、掌握算术逻辑运算器单元 ALU(74LS181)的工作原理。
2、掌握简单运算器的数据传送通路组成原理。
3、验证算术逻辑运算功能发生器 74LSl8l 的组合功能。
4、按给定数据,完成实验指导书中的算术/逻辑运算。
二、实验内容 1 、实验原理实验中所用的运算器数据通路如图 1-1 所示。
其中运算器由两片 74LS181以并/串形成 8 位字长的 ALU 构成。
运算器的输出经过一个三态门 74LS245(U33)到内部数据总线 BUSD0~D7 插座 BUS1~2 中的任一个(跳线器JA3 为高阻时为不接通),内部数据总线通过 LZD0~LZD7 显示灯显示;运算器的两个数据输入端分别由二个锁存器 74LS273(U29、U30)锁存,两个锁存器的输入并联后连至内部总线BUS,实验时通过 8 芯排线连至外部数据总线 E_D0~D7 插座E_J1~E_J3 中的任一个;参与运算的数据来自于 8 位数据开并KD0~KD7,并经过一三态门 74LS245(U51)直接连至外部数据总线 E_D0~E_D7,通过数据开关输入的数据由 LD0~LD7 显示。
图 1-1 中算术逻辑运算功能发生器 74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M 并行相连后连至 6 位功能开关,以手动方式用二进制开关 S3、S2、S1、S0、CN、M 来模拟74LS181(U31、U32)的功能控制信号S3、S2、S1、S0、CN、M;其它电平控制信号 LDDR1、LDDR2、ALUB`、SWB`以手动方式用二进制开关 LDDR1、LDDR2、ALUB、SWB 来模拟,这几个信号姓名学号班级年级指导教师李芳有自动和手动两种方式产生,通过跳线器切换,其中ALUB`、SWB`为低电平有效,LDDR1、LDDR2 为高电平有效。
运算器 实验报告汇总
计算机科学与技术系实验报告专业名称计算机科学与技术课程名称计算机组成与结构项目名称基本运算器实验班级学号姓名同组人员无实验日期 2015-11-1一、实验目的1.了解运算器的组成结构;2.掌握运算器的工作原理。
二、实验逻辑原理图与分析2.1 实验逻辑原理图及分析运算器内部含有三个独立运算部件,分别是算术、逻辑和移位运算部件,要处理的数据存于暂存器A和暂存器B,三部件同时接受来自A和B的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如ARM),各部件对操作数进行何种运算由控制信号S3…S0和CN来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为ALU的输出。
如果是影响进位的运算,还将置进位标志FC,在运算结果输出前,置ALU零标志。
ALU中所有模块集成在一片CPLD中。
逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不在赘述。
移位运算采用的是桶形移位器,一般采用交叉开关矩形来实现。
每一个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可以实现移位功能,即:⑴对于逻辑左移或者逻辑右移功能,将一条对角线的开关导通,这将所有的输入位与所使用的输出分别相连。
而没有同任何输入相连的则输出连接0.⑵对于循环右移功能,右移对角线同互补的左移对角线一起激活。
⑶对于未连接的输出位,移位时使用符号扩展或者是0填充,具体由相应的指令控制,使用另外的逻辑进位移位总量译码和符号判别,运算器部件由一片CPLD实现。
ALU的输入和输出通过三态门74LS245连到CPU内总线上,另外还有指示灯表明进位标志FC。
图中除T4和CLR,其余信号均来自于ALU单元的排线座,实验箱中所有单元的T1、T2、T3、T4都连接至控制总线单元的T1、T2、T3、T4,CLR都连接至CON单元的CLR按钮。
T4由时序单元的TS4提供,其余控制线号均由CON单元的二进制数据开关模拟给出。
组成原理运算器实验报告
甘肃政法学院本科学生实验报告(一)姓名孙健峰学院计算机科学学院专业计算机科学与技术班级12级专升本班实验课程名称计算机组成原理试验时间2012 年9 月12 日指导教师及职称武光利实验成绩开课时间2012-2013 学年第一学期甘肃政法学院实验管理中心印制实验题目运算器实验小组合作是⊙否○`学号201281210122 姓名孙健峰班级12级专升本班一、实验目的:1、掌握简单运算器的数据传送通路;2、验证运算功能发生器(74LS181)的组合功能;3、验证移位控制的组合功能。
二、实验环境:CCT—IV计算机组成原理教学试验系统一台,排线若干。
三、实验原理与步骤:实验原理:实验中所用的运算器数据通路下图所示。
其中运算器由两片74LS181以并/串形式构成8位字长的ALU。
运算器的输出经过一个三态门(74LS245)和数据总线相连,运算器的两个数据输入端分别由两个锁存器(74LS373)锁存,锁存器的输入连至数据总线,数据开关(“INPUT DEVICE”)用来给出参与运算的数据,并经过一三态门(74LS245)和数据总线相连,数据显示灯(“BUS UNIT”)已必数据总线相连,用来显示数据总线内容。
图中已将用户需要连接的控制信号与圆圈标明(其他实验相同,不在说明),其中T4为脉冲信号,其他均为电平信号。
由于电路中的时序信号均已连至“W/R UNIT”的相应时序信号引出端,因此,在进行实验时,只需将“W/R UNIT”的T4接至“STATE UNIT”的微动开关KK2的输出端,按动微动开关,即可获得实验所需的单脉冲,而S3、S2、S1、S0、M、LDDR1、LDDR2、ALU-B、SW-B各电平控制信号用“SWITCH UNIT”中的二进制数据开关来模拟,其中Cn、ALU-B、SW-B 为低电平有效,LDDR1、LDDR2为高电平有效。
实验步骤:1、实验原理图连接线路,仔细查线无误后,接通电源。
2、用二进制数码开关向DR1和DR2寄存器置数。
计算机组成原理运算器的实验报告
一.实验目的及要求(1) 了解运算器的组成结构。
(2) 掌握运算器的工作原理。
二.实验模块及实验原理本实验的原理如图1-1-1所示。
运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器A 和暂存器B ,三个部件同时接受来自 A 和B 的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如ARM),各部件对操作数进行何种运算由控制信号 S3…S0和CN来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为 ALU的输出。
如果是影响进位的运算,还将置进位标志 FC,在运算结果输出前,置 ALU零标志。
ALU中所有模块集成在一片CPLD 中。
逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不再赘述。
移位运算采用的是桶形移位器,一般采用交叉开关矩阵来实现,交叉开关的原理如图1-1-2所示。
图中显示的是一个 4X4 的矩阵(系统中是一个 8X8 的矩阵)。
每一个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可实现移位功能,即:(1) 对于逻辑左移或逻辑右移功能,将一条对角线的开关导通,这将所有的输入位与所使用的输出分别相连, 而没有同任何输入相连的则输出连接0 。
(2) 对于循环右移功能,右移对角线同互补的左移对角线一起激活。
例如,在4 位矩阵中使用‘右1 ’和‘左 3 ’对角线来实现右循环 1 位。
(3) 对于未连接的输出位,移位时使用符号扩展或是 0 填充,具体由相应的指令控制。
使用另外的逻辑进行移位总量译码和符号判别。
运算器部件由一片CPLD 实现。
ALU的输入和输出通过三态门74LS245 连到CPU 内总线上,另外还有指示灯标明进位标志FC和零标志FZ。
请注意:实验箱上凡丝印标注有马蹄形标记‘’,表示这两根排针之间是连通的。
图中除 T4和CLR ,其余信号均来自于 ALU单元的排线座,实验箱中所有单元的T1、T2、T3、T4都连接至控制总线单元的 T1、T2、T3、T4,CLR 都连接至 CON单元的CLR 按钮。
运算器实验报告
运算器实验报告计算机学科实验基地实验报告评分: 学分:实验类型:必修 ? 选修实验日期:05 年 06 月28 日实验名称:运算器逻辑设计实验地点:实验基地学生姓名: 指导教师:班级: 评阅教师:同组学生:计算机科学与工程学院制实验报告内容:一、实验目的理解运算器结构及功能,理解各选择器、算逻部件、移位器的端口及实现逻辑和各部件之间的接口关系,并学会如何利用VHDL对硬件实体逻辑进行描述并进行模块级、系统级仿真,从而模拟完整的ALU结构和功能。
具体目的如下:1)掌握用硬件描述语言设计逻辑部件的方法。
2)了解运算器的设计过程。
3)掌握74181芯片的连接方法和分级同时进位技术。
4)验证运算器的功能。
二、实验方案与计划(对硬件和项目设计)模块编号:U_ALU_16功能:在微命令的控制下对输入A、B进行算术逻辑运算。
基本运算有:A+B、A-B、A、B、A+1、A-1、A与B、A或B、A(B)反COM、A(B)补NEG、左移、右移输入:R0、R1、R2、R3、C、D、PC、SP /*选择器A的输入(16位)R0、R1、R2、R3、C、D、PSW、MBR /*选择器B的输入(16位)SELA3 /*选择器A的选择控制(3位)SELB3 /*选择器B的选择控制(3位)CON_ALU6 /*ALU的功能控制(6位)SHIFT_REG2 /*移位器的控制(2位)—左移、右移、直传(DM) 输出:IN_BUS_16 /*内部数据总线(16位)—运算结果内部框图:IN_BUS_16SHIFT_REG2移位寄存器CON_ALU6 ALU_OUTALUSELA3 ALU_INA ALU_INB SELB3选择器A 选择器BR0、R1、R2、R3、R0、R1、R2、R3、C、C、D、PC、SP D、PSW、MBR1、选择器A (U_SEL_A)1) 输入:R0、R1、R2、R3、C、D、PC、SP、SELA3输出:ALU_INA2) 功能:SELA ALU_INA0 0 0 R00 0 1 R10 1 0 R20 1 1 R31 0 0 C1 0 1 D1 1 0 PC1 1 1 SP 2、选择器B (U_SEL_B)1)输入:R0、R1、R2、R3、C、D、PSW、MBR、SELB3 输出:ALU_INB2) 功能:SELB ALU_INB0 0 0 R00 0 1 R10 1 0 R20 1 1 R31 0 0 C1 0 1 D1 1 0 PSW1 1 1 MBR 3、移位寄存器 (U_SHIFT_REG)1) 输入:ALU_OUT、SHIFT_REG22) 输出:IN_BUS_163) 功能:SHIFT_REG2 IN_BUS_16 备注0 0 ALU_OUT DM(直传)0 1 ALU_OUT(14 DOWNTO 0)&’0’ LS(左移)1 0 ’0’ &ALU_OUT(15 DOWNTO 1) RS(右移)X X Z 高阻 4、ALU (U_ALU_4)1) 输入:ALU_INA 、ALU_INB、CON_ALU62) 输出:ALU_OUT3) 内部框图:SN74182P4 G4 C3 P3 G3 C2 P2 G2 C1 P1 G115—12 11—8 7—4 3—0 ALU_OUTSN74181 SN74181 SN74181 SN74181 CON_ALU6(0)5—1 5—1 5—1 5—1CON_ALU6 15—12 11—8 7—4 3—0ALU_INA 15—12 11—8 7—4 3—0ALU_INB5、SN74181 (U_SN74181) 小组内并行进位(4位)注意Pi、Gi的产生逻辑; 1)输入:A_IN /*四位输入B_IN /*四位输入CON_ALU6 /*六位输入 S3S2S1S0MC0C /*进位2) 输出: F_OUT /*四位输出P_OUT /*A_IN 异或B_ING_OUT /*A_IN 与 B_IN3) 功能:工作方式选择输出 F_OUT (OP_SEL) S3S2S1S0M=1 逻辑运算 M=0 算术运算 0000 A非 A减1 0001 (AB)非 AB减1 0010 A非+B AB非减1 0011 逻辑1 全1 0100 (A+B)非 A加(A+B非) 0101 B非 AB加(A+B非) 0110 (A异或B)非 A加B非 0111 A+B非 A+B非 1000 A非B A加(A+B) 1001 A异或B A加B 1010 B AB非加(A+B) 1011 A+B A+B 1100 逻辑0 0 1101 AB 非 AB加A 1110 AB AB非加A 1111 A A6、SN74182 (U_SN74182) 组间并行进位;1) 输入: C0、P1、G1、P2、G2、P3、G3、P4、G42) 输出: C1、C2、C33) 功能: C1=G1+P1C0C2=G2+P2G1+P2P1C0C3=G3+P3G2+P3P2G1+P3P2P1C0三、实验过程理解与描述, 经过整理的数据及表格1、选择器A功能表SELA ALU_INA 0 0 0 R0 0 0 1 R1 0 1 0 R2 0 1 1 R3 1 0 0 C 1 0 1 D 1 1 0 PC 1 1 1 SP2、选择器B功能表SELB ALU_INB 0 0 0 R0 0 0 1 R1 0 1 0 R2 0 1 1 R3 1 0 0 C 1 0 1 D 1 1 0 PSW 1 1 1 MBR3、移位寄存器功能表SHIFT_REG2 IN_BUS_16 备注 0 0 ALU_OUT DM(直传)0 1 ALU_OUT(14 DOWNTO 0)&’0’ LS(左移)1 0 ’0’ &ALU_OUT(15 DOWNTO 1) RS(右移)X X Z 高阻4、ALU控制信号功能表工作方式选择输出 F_OUT (OP_SEL) S3S2S1S0M=1 逻辑运算 M=0 算术运算 0000 A非 A减1 0001 (AB)非 AB减1 0010 A非+B AB非减1 0011 逻辑1 全1 0100 (A+B)非 A加(A+B非) 0101 B非 AB加(A+B非) 0110 (A异或B)非 A加B非 0111 A+B非 A+B非 1000 A非B A加(A+B) 1001 A异或B A加B 1010 B AB非加(A+B) 1011 A+B A+B 1100 逻辑0 0 1101 AB 非 AB加A 1110 AB AB非加A 1111 A A, 实验记录的分析、讨论与结论ALU_SN74181仿真波形 i.ii. m_74182仿真波形ALU_SELECT仿真波形 iii.iv. M_shift_reg仿真波形v. CPU_ALU仿真波形结论:通过功能仿真可以看出,各部件功能正确,集成后可以满足运算器的功能。
运算器实验报告
运算器实验报告
实验目的
本次实验的主要目的是研究计算机运算器的工作原理,并通过实验模拟计算器的加减乘除运算,以达到对运算器工作原理的理解与掌握的目的。
实验器材
该实验所需的器材主要有:
1.计算机运算器实验板
2.示波器
3.数字信号发生器
4.电缆线
5.万用表
6.电子元器件
实验步骤
1.根据实验板说明书进行组装,接通电源,检查实验板是否能够正常工作。
2.使用数字信号发生器提供输入信号,将输入信号通过运算器
进行运算,从而得到相应的输出信号。
3.使用示波器观测输入信号和输出信号的波形,以评估运算器
的各项性能指标。
4.通过电缆线将运算器连接到计算机,将运算器的输出信号保
存至计算机硬盘,以方便后续处理和分析。
实验结果
通过对实验板的组装和调试,我们成功地实现了模拟计算器的
加减乘除运算。
同时,我们还使用示波器观测到了输入信号和输
出信号的波形,并通过电缆线将运算器连接到计算机,将运算器
的输出信号保存到了计算机硬盘中。
实验总结
本次实验结束后,我们深刻地认识到了计算机运算器的重要性。
在计算机系统中,运算器扮演着极为关键的角色,通过对各种数
字信号进行加减乘除等运算,完成了计算机的复杂计算任务。
因此,对运算器的研究和掌握显得十分必要,尤其是在计算机科学
与技术领域,更是必不可少的一部分。
最后,我们要感谢老师对我们的指导和支持,在这个实验中,我们更加深入地了解了计算机的原理与工作机制。
希望在未来的学习中能够发扬这种学习精神,更好地掌握计算机科学与技术的核心内容,为我们的学习和研究提供有力的支撑。
运算器移位运算实验报告
运算器移位运算实验报告大家好,今天我们来聊聊运算器移位运算。
移位运算,听起来是不是有点高深,其实它就是把二进制数里的位数往左或者往右移动。
就好比你把手里的糖果往一边推,推得越远,糖果就越少,推的方向不同,糖果的分布也会变。
想象一下,如果你有一个二进制数“1011”,往左移一位,就变成“0110”,简单吧?这就像把一块蛋糕切成两半,左右两边都有不同的口感。
移位运算有两种主要方式,分别是逻辑移位和算术移位。
逻辑移位就像是清理桌面,把不需要的东西往边上推,留出更多空间。
比如说,把“0001”逻辑右移一位,结果是“0000”,因为我们把那个“1”给推掉了。
而算术移位就更像是做数学题,保持符号位不变。
比如把“1111”右移一位,结果变成“1111”,这边的“1”继续留在那儿,就像是有个坚强的队友,没让他离开。
移位运算的意义是什么呢?这可是大有来头!在计算机里,运算器用移位运算来做乘法和除法。
这种方式效率高得惊人。
想象一下,你要把10乘以2,普通方法得一笔一划地加,耗时又费力;可如果用移位运算,你只需把“10”左移一位,就直接变成了“100”,这可是速度与激情的完美结合。
简直是搬家时一挥而就,省时省力。
移位运算也有一些小技巧和注意事项。
比如说,左移一位相当于乘以2,而右移一位则相当于除以2。
这时候,很多小伙伴可能会想,哎,这不是太简单了吗?简单的背后往往有深意。
比如在处理负数时,算术右移就很有必要了,得考虑符号位,不然就像走路没看路,容易摔跤。
聪明的小伙伴们可别忘了这一点哦。
在实验过程中,我们用了一些工具来帮助我们实现这些操作。
比如说,运算器和一些编程软件,这些工具就像是我们实验室里的“小助手”。
每次移位运算之后,看到结果在屏幕上瞬间出现,心里那种满足感简直不要太好。
就像把新买的零食打开,一口下去,幸福感爆棚!我们还做了些小实验,看看不同的移位运算会有什么不同的结果。
有时我们故意用一些边界值,比如说全是“1”的数,结果每次操作都能引发“哇”的一声惊叹。
运算器实验报告--孔锐-16281132-1
运算器实验报告--孔锐-16281132-1脱机运算器实验报告理论课教师姓名:高金山实验指导教师:坐位号:54 姓名:孔锐学号:16281132实验目的:1、深入了解AM2901运算器的功能与具体用法;2、深化运算器部件的组成、设计、控制与使用等知识实验内容:运算器实验(2)实验步骤将教学机左下方的5个拨动开关置为1XX00(单步、16位、脱机);先按一下“RESET”按键,再按一下“START”按键,进行初始化。
接下来,按下表所列的操作在机器上进行运算器脱机实验,将结果填入表中:实验结果分析:在做实验分析之前,先把与该实验相关的有关总结性内容展示如下:1、脱机运算器实验,是指让运算器从数学计算机整机中脱离出来,此时,他的全部控制与操作均需通过两个12位的卫星开关来完成,这就谈不上执行指令,只能通过开关,案件控制数学机的运算器完成指定的运算功能,并通过指示灯观察运算器结果。
(1)12位的微型开关的具体控制功能分配如下:A口,B口地址送给AM2901器件用于选择源与目的操作数的寄存器编号:I8-I0:选择操作数来源,运算操作数功能,选择操作数处理结果和运算器输出内容的3组3位的控制码:SCI、SSH和SST:用于确定运算器最低位的进位输入,移位信号的入\出和怎样处理AM2901产生的状态标志位的结果。
(2)开关位置说明:(3)做脱机运算器实验时,要用到提供24位控制信号的微动开关和提供16位数据的拨动开关,微动开关有三个一个可以提供12位的控制信号三个开关分别标有SW1-micro-switch、SW2-micro-switch和SW3-micro-switch。
他们所对应的控制信号见下表;数据开关是黑色的,左边的标有SWH的是高8位;右边的标有SWL的是低8位(4)开关检测红色微动开关是该实验系统中使用寿命最短的器件,开关好坏的检测方法比较简单,用户将五个控制机器工作方式的开关置于“1XX00”。
运算器实验报告汇总
井合肥禽院HEFEI UNIVERSITY计算机科学与技术系实验报告专业名称 _____ 计算机科学与技术___________课程名称计算机组成与结构_____________项目名称基本运算器实验______________班级 __________________________________学号 __________________________________姓名 __________________________________同组人员 ____________ 无____________________实验日期2015-11-1 __________________一、实验目的1. 了解运算器的组成结构;2. 掌握运算器的工作原理。
二、实验逻辑原理图与分析2.1 实验逻辑原理图及分析运算器内部含有三个独立运算部件,分别是算术、逻辑和移位运算部件,要处理的数据存于暂存器A和暂存器B,三部件同时接受来自A和B的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如ARM,)各部件对操作数进行何种运算由控制信号S3--S0和CN来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为ALU的输出。
如果是影响进位的运算,还将置进位标志FC,在运算结果输出前,置ALU零标志。
ALU中所有模块集成在一片CPLD中。
逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不在赘述。
移位运算采用的是桶形移位器,一般采用交叉开关矩形来实现。
每一个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可以实现移位功能,即:⑴ 对于逻辑左移或者逻辑右移功能,将一条对角线的开关导通,这将所有的输入位与所使用的输出分别相连。
而没有同任何输入相连的则输出连接0.⑵ 对于循环右移功能,右移对角线同互补的左移对角线一起激活。
⑶ 对于未连接的输出位,移位时使用符号扩展或者是0填充,具体由相应的指令控制,使用另外的逻辑进位移位总量译码和符号判别,运算器部件由一片CPLD实现。
实验二运算器实验报告
实验二运算器实验报告
实验二是运算器实验,旨在让我们了解计算机运算器的结构和工作原理。
在本次实验中,我们通过搭建运算器电路并进行验证,深入理解了运算器的运作过程,为我们今后学习和应用计算机原理打下了基础。
一、实验原理
运算器是计算机中重要的组成部分,用于实现各种算术和逻辑运算。
在本次实验中,我们首先学习了运算器的基本原理和功能,并了解了运算器中常用的逻辑门电路,如与门、或门、非门等。
接着,我们根据原理和逻辑门电路的特点,搭建了一个16位的运算器电路,并测试了电路的逻辑功能和运算准确性。
二、实验步骤
1. 搭建16位运算器电路,包括与门、或门、非门等逻辑电路。
2. 对搭建的运算器电路进行测试,如测试与门、或门、非门电路的逻辑输出是否正确。
3. 实现加法和减法运算功能,测试运算器的运算准确性。
4. 对搭建的运算器电路进行进一步优化,提高电路工作效率和运算速度。
三、实验结果
经过实验测试,我们成功搭建了一个16位的运算器电路,并对电路进行了多项测试和验证。
在逻辑输出方面,与门、或门、非门电路均能够正确输出逻辑值,验证了运算器电路的逻辑功能。
在加法和减法运算方面,运算器电路能够正确实现运算功能,并输出正确的运算结果,这表明运算器电路的运算准确性良好。
四、实验总结
通过本次实验,我们深入理解了计算机中运算器的工作原理和结构,掌握了运算器电路的搭建和运作方法,并初步掌握了在运算器上实现加法和减法运算的原理和方法。
此外,我们还了解了运算器电路的优化方法和技巧,提高了电路工作效率和运算速度。
这些知识和技能对我们今后学习和应用计算机原理具有重要的指导意义。
运算器原理实验报告
运算器原理实验报告摘要本实验利用运算器实现了加法和乘法运算,并通过编程控制了运算过程。
实验结果表明,该运算器能够正确地进行加法和乘法运算,并输出正确的结果。
同时,通过在程序中添加适当的控制语句,可以实现不同运算的选择。
1.引言运算器是计算机中非常重要的一部分,用于进行数值计算和逻辑运算。
在本实验中,我们设计了一个简单的运算器,通过编程控制实现加法和乘法运算。
2.实验设备和原理2.1 实验设备本实验主要使用了一台电脑,并在其上运行了相应的编程软件。
同时,还需要连接显示屏和输入设备(如键盘)以方便数据的输入和输出。
2.2 实验原理本实验采用的运算器是基于二进制数的加法和乘法运算,其原理如下:(1)加法运算:将两个二进制数按位相加,超出位数则向高位进位。
(2)乘法运算:利用加法和位移操作实现。
对于A、B两个数的乘法,依次将A的每一位与B相乘,然后将结果相加得到最终的乘积。
3.实验步骤3.1 编写程序根据实验原理,编写相应的程序代码,包括加法和乘法的实现以及相应的控制语句。
3.2 运行程序将程序上传至运算器设备,并打开相应的输入输出设备。
根据需要输入相应的操作数和运算符,然后运行程序,观察输出结果。
4.实验结果与分析经过实验,我们发现该运算器能够正确地进行加法和乘法运算,并输出正确的结果。
通过在程序中添加控制语句,可以实现不同运算的选择,提高了运算器的灵活性。
5.结论通过本次实验,我们成功设计并实现了一个基于二进制数的运算器,可以进行加法和乘法运算,并输出正确的结果。
该运算器具有一定的灵活性,可以通过编程控制实现不同运算的选择。
计算机组成运算器实验报告
计算机组成运算器实验报告《计算机组成运算器实验报告》摘要:本实验旨在通过实验操作,深入理解计算机组成原理中的运算器部分。
通过对运算器的组成结构和工作原理进行研究和实验,加深对计算机内部运算过程的理解。
一、实验目的1. 了解运算器的基本组成结构和工作原理;2. 掌握运算器的逻辑运算和算术运算的实现方法;3. 通过实验操作,加深对计算机组成原理中运算器部分的理解。
二、实验设备1. 计算机组成原理实验箱;2. 逻辑门、加法器、寄存器等实验器件;3. 万用表、示波器等实验仪器。
三、实验内容1. 运算器的基本组成结构及功能分析;2. 运算器的逻辑运算和算术运算实验操作;3. 运算器的工作原理分析及实验验证。
四、实验结果与分析通过实验操作,成功实现了运算器的逻辑运算和算术运算,并对其工作原理进行了深入分析。
实验结果表明,运算器的逻辑运算和算术运算均能够按照设计要求进行,符合计算机组成原理中的相关理论知识。
五、实验结论通过本实验,加深了对计算机组成原理中运算器部分的理解,掌握了运算器的基本组成结构和工作原理,并成功实现了相关实验操作。
这对于进一步深入学习计算机组成原理和计算机系统结构具有重要意义。
六、实验感想本实验让我对计算机组成原理中的运算器部分有了更深入的理解,也增强了我对计算机内部运算过程的认识。
通过实际操作,我对计算机组成原理的相关知识有了更加直观的认识,对于今后深入学习计算机相关课程和进行科研工作具有积极的促进作用。
通过本次实验,我对计算机组成原理中的运算器部分有了更深入的理解,也增强了我对计算机内部运算过程的认识。
通过实际操作,我对计算机组成原理的相关知识有了更加直观的认识,对于今后深入学习计算机相关课程和进行科研工作具有积极的促进作用。
运算器实验实验报告
八位运算器实验分析1,运算器是计算机中的数据处理部件,其组成部件总体来说是:算术逻辑运算单元ALU、多路选通器、累加器ACC、通用寄存器和专用寄存器。
运算器可读取内存单元的数据,对其进行运算,并将结果写入内存单元;还可向内存发出访问内存的有效地址。
在完成八位运算器实验时,利用VHDL语言将八位运算器的所有计算功能编写入一个程序,使其可以完成逻辑和算术运算的各种功能。
2,八位运算器的实验原理框图3,VHDL代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity exp_r_alu isport( clk: in std_logic;sw_bus,r4_bus,r5_bus,alu_bus:in std_logic;lddr1,lddr2,ldr4,ldr5: in std_logic;m,cn: in std_logic;s: in std_logic_vector(3 downto 0);k: in std_logic_vector(7 downto 0);d: inout std_logic_vector(7 downto 0));end exp_r_alu ;architecture rtl of exp_r_alu issignal dr1,dr2,r4,r5,aluout,bus_reg:std_logic_vector(7 downto 0);signal sel:std_logic_vector(5 downto 0);beginldreg:process(clk,lddr1,lddr2,ldr4,ldr5,bus_reg)beginif clk'event and clk='1' thenif lddr1='1' then dr1<=bus_reg;elsif lddr2='1'then dr2<=bus_reg;elsif ldr4='1' then r4<=bus_reg;elsif ldr5='1' then r5<=bus_reg;end if;end if;end process;alu:process(m,cn,dr1,dr2,sel,aluout)beginsel<=m&cn&s;case sel iswhen "000000"=>aluout<=dr1+1;when "010000"=>aluout<=dr1;when "100000"=>aluout<=not dr1;when "000001"=>aluout<=(dr1 or dr2)+1;when "010001"=>aluout<=dr1 or dr2;when "100001"=>aluout<=not(dr1 or dr2);when "000010"=>aluout<=( dr1 or (not dr2))+1;when "010010"=>aluout<=dr1 or (not dr2);when "100010"=>aluout<=(not dr1) and dr2;when "000011"=>aluout<=x"00";when "010011"=>aluout<=aluout-1;when "100011"=>aluout<=x"00";when "000100"=>aluout<=dr1+(dr1 and(not dr2))+1;when "010100"=>aluout<=dr1+(dr1 and(not dr2));when "100100"=>aluout<=not(dr1 and dr2);when "000101"=>aluout<=(dr1 or dr2)or(dr1 and dr2)or x"01";when "010101"=>aluout<=(dr1 or dr2)+(dr1 and(not dr2));when "100101"=>aluout<=not dr2;when "000110"=>aluout<=dr1- dr2;when "010110"=>aluout<=dr1-dr2-1;when "100110"=>aluout<=dr1 xor dr2;when "000111"=>aluout<=dr1 and(not dr2);when "010111"=>aluout<=(dr1 and(not dr2))-1;when "100111"=>aluout<=dr1 and(not dr2);when "001000"=>aluout<=dr1+(dr1 and dr2)+1;when "011000"=>aluout<=dr1+(dr1 and dr2);when "101000"=>aluout<=(not dr1)or dr2;when "001001"=>aluout<=dr1+dr2+1;when "011001"=>aluout<=dr1 + dr2;when "101001"=>aluout<=dr1 xnor dr2;when "001010"=>aluout<=(dr1 or(not dr2))+(dr1 and dr2)+1;when "011010"=>aluout<=(dr1 or(not dr2))+(dr1 and dr2);when "101010"=>aluout<=dr2;when "001011"=>aluout<=dr1 and dr2;when "011011"=>aluout<=(dr1 and dr2)-1;when "101011"=>aluout<=dr1 and dr2;when "001100"=>aluout<=dr1 +dr1+1;when "011100"=>aluout<=dr1 or dr1;when "101100"=>aluout<=x"01";when "001101"=>aluout<=(dr1 or dr2)+dr1+1;when "011101"=>aluout<=(dr1 or dr2)+dr1;when "101101"=>aluout<=dr1 or(not dr2);when "001110"=>aluout<=(dr1 or(not dr2))+dr1+1;when "011110"=>aluout<=(dr1 or(not dr2))+dr1;when "101110"=>aluout<=dr1 or dr2;when "001111"=>aluout<=dr1;when "011111"=>aluout<=dr1-1;when "101111"=>aluout<=dr1;when others =>aluout<=x"ff";end case;end process;bus_reg<=k when(sw_bus='0' and r4_bus='1' and r5_bus='1' and alu_bus='1')else r4 when(sw_bus='1' and r4_bus='0' and r5_bus='1' and alu_bus='1')elser5 when(sw_bus='1' and r4_bus='1' and r5_bus='0' and alu_bus='1')elsealuout when(sw_bus='1' and r4_bus='1' and r5_bus='1' and alu_bus='0')elsed;d<=bus_reg when (sw_bus='0' or r4_bus='0' or r5_bus='0' or alu_bus='0')else(others=>'Z');end rtl;4,实验波形其中end time 是1微秒,grid size是10纳秒5,波形分析k为输入端,操作员可将值输入到运算器。
运算器组成实验报告
运算器组成实验报告实验名称:运算器组成实验实验目的:通过使用逻辑门,了解运算器的构成和工作原理,并验证其正确性。
实验原理:运算器是一种电子电路,用于执行算术和逻辑运算。
它由一个或多个逻辑门组成,而逻辑门则是用于执行基本逻辑操作的元器件。
在运算器中,通常使用与门、或门、非门、异或门、全加器等逻辑门来实现各种算术和逻辑运算。
在本次实验中,我们通过使用与门、或门、非门和全加器来设计一个4位全加器,并通过信号的输入和输出来验证其正确性。
实验步骤:1.根据所需的输入和输出,设计运算器的逻辑电路图。
2.根据逻辑电路图,使用实验箱中提供的逻辑门和导线来搭建运算器的电路。
3.连接示波器和信号发生器,以便观察和验证信号的输入和输出。
4.依次输入各种输入信号,记录信号的输出结果,并与预期结果进行比较。
5.通过调整电路中的元器件和接线位置,调整电路的输入输出特性,直至符合设计要求。
实验结果:通过搭建运算器电路并输入不同的信号,实验结果如下:输入:A=0 B=0 C=0 D=0输出:S=0 C_out=0输入:A=1 B=1 C=1 D=1输出:S=0 C_out=1输入:A=1 B=0 C=1 D=0输出:S=1 C_out=0输入:A=0 B=1 C=0 D=1输出:S=1 C_out=0根据输出结果,可以发现运算器的电路已经实现了预期的功能,能够正确地执行不同的算术和逻辑运算。
实验结论:通过本次实验,我们了解和验证了运算器的构成和工作原理,并成功搭建出一个4位全加器电路,实现了各种算术和逻辑运算。
实验结果表明,运算器是一种非常重要的电子电路,广泛应用于计算机、通信系统等各个领域。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
脱机运算器实验报告
理论课教师姓名:高金山实验指导教师:
坐位号:54 姓名:孔锐学号:16281132
实验目的:
1、深入了解AM2901运算器的功能与具体用法;
2、深化运算器部件的组成、设计、控制与使用等知识
实验内容:
运算器实验(2)
实验步骤
将教学机左下方的5个拨动开关置为1XX00(单步、16位、脱机);先按一下“RESET”按键,再按一下“START”按键,进行初始化。
接下来,按下表所列的操作在机器上进行运算器脱机实验,将结果填入表中:
实验结果分析:
在做实验分析之前,先把与该实验相关的有关总结性内容展示如下:
1、脱机运算器实验,是指让运算器从数学计算机整机中脱离出来,此时,他的全部控制与操作均需通过两个12位的卫星开关来完成,这就谈不上执行指令,只能通过开关,案件控制数学机的运算器完成指定的运算功能,并通过指示灯观察运算器结果。
(1)12位的微型开关的具体控制功能分配如下:
A口,B口地址送给AM2901器件用于选择源与目的操作数的寄存器编号:
I8-I0:选择操作数来源,运算操作数功能,选择操作数处理结果和运算器输出内容的3组3位的控制码:
SCI、SSH和SST:用于确定运算器最低位的进位输入,移位信号的入\出和怎样处理AM2901产生的状态标志位的结果。
(2)开关位置说明:
(3)做脱机运算器实验时,要用到提供24位控制信号的微动开关和提供16位数据的拨动开关,微动开关有三个一个可以提供12位的控制信号三个开关分别标有SW1-micro-switch、SW2-micro-switch和SW3-micro-switch。
他们所对应的控制信号见下表;数据开关是黑色的,左边的标有SWH的是高8位;右边的标有SWL的是低8位
(4)开关检测
红色微动开关是该实验系统中使用寿命最短的器件,开关好坏的检测方法比较简单,用户将五个控制机器工作方式的开关置于“1XX00”。
二、结果分析,先给出各个表:
由上表可知,所做的实验则是对数据的存放,自加,移位,不同存储器之间的相加相减等,实验中,各个数据的均为16进制显示,有4个4位LED灯显示信号,
分析:此指令要完成的目的是将FFFF赋给R0.
B口对应R0,且地址为0000;只有R0一个值,所以A口不用。
数据来源为D,I2-I0为:111;I3-I5取加法即加0:000;最后的值存储到B口对应的地址并输出,所以I8-I6所选值为011;接受ALU的标志位输出的值,所以SST选001;SSH SCI相当加法,所选值为000.
因为将FFFF赋值给R0,输出为FFFF。
分析:和第一步一样,只不过B口对应的地址发生改变为0001
B口对应R1,且地址为0001,A口对应R0,且地址为0000.
数据来源为A和B,I2-I0为:001,运算是R+S,I3-I5为:000,最后的值存储到B 口对应的地址并输出,所以I8-I6所选值为011;该式接受ALU的标志位输出的值,所以SST所选值为001;该式执行的加(SUB),所以SSH SCI所选值为001.
分析:与第一步一样,D为FFFF
B口对应R0,且地址为0000,A口对应R2,且地址为0010.
数据来源为A和B,I2-I0为:001,运算是R-S,I3-I5为:001,最后的值存储到B 口对应的地址并输出,所以I8-I6所选值为011;该式接受ALU的标志位输出的值,所以SST所选值为001;该式执行的加(SUB),所以SSH SCI所选值为001.
分析:和第5步一样,B口地址为0011,D为0001
B口对应R3,且地址为0011;只有R3一个值,故A口不用
数据来源为B,I2-I0为:011;I3-I5取加法即加1:000;最后的值存储到B口对应的值并输出,所以I8-I6所选值为011;接受ALU的标志位输出的值,所以SST选001;SSH和SCI自加1(INC),所以SSH SCI所选值为001.
R5的地址是0101对应的是A口和B口。
数据来源是B,所以I2-I0为:011;I3-I5取加法即加1:000;最后的值存储到B口对应的值并输出A口的值,所以I8-I6所选值为010;接受ALU的标志位输出的值,所以SST选001;SSH和SCI自加1(INC),所以SSH SCI所选值为001.
分析:与第9步类似
分析:此指令是要进行R9的逻辑右移,并存入R9,仅有一个值,故A口不用
数据来源是B,数据来源是B,所以I2-I0为:011;I3-I5取加法即加0:000;最后的值进行向右移位1位后存到B口,故I8-I6:101;移出位送给C,故SSH SST选择C循环移位指令为:101;SST将C置为“1”,故SST为:100.
分析:此指令要完成的是将R8赋给Q寄存器。
数据来源为B口,所以I2-I0为:011;I3-I5取加法即加0:000;最后的值放入Q 寄存器并输出,所以I8-I6为:000;接受ALU的标志位输出的值,所以SST选001;SSH SCI相当加法,所选值为000.
数据来源为B口,所以I2-I0为:011;I3-I5取加法即加0:000;最后的值进行向右移位1位后存到B口和Q寄存器,故I8-I6:100;进行联合右移,所以SST为:111;进行右移操作,故SSH SCI为:110.。