天天看点

计算机组成原理实验5:运算器实验

实验内容

一、实验原理

实验中所用的运算器数据通路如下图所示。ALU运算器由CPLD描述。运算器的输出经过2片74LS245三态门与数据总线相连,2个运算寄存器AX、BX的数据输入端分别由4个74LS374锁存器锁存,锁存器的输入端与数据总线相连。准双向I/O输入输出端口用来给出参与运算的数据,经2片74LS245三态门与数据总线相连。

计算机组成原理实验5:运算器实验

在上图中,AXW、BXW在“搭接态”由实验连接对应的二进制开关控制,“0”有效,通过【单拍】按钮产生的负脉冲把总线上的数据打入,实现AXW、BXW写入操作。

二、运算器功能编码

ALU运算器编码表

计算机组成原理实验5:运算器实验

三、实验连线

K23~K0置“1”,灭M23~M0控位显示灯。然后按下表要求“搭接”部件控制电路。

计算机组成原理实验5:运算器实验

实验1:算术运算

1. 字算术运算

(1) 字写操作

通过I/O单元“S15~S0”开关向累加器AX和暂存器BX置数,操作步骤如下:

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

(2) 字读操作

关闭AX、BX写使能,令K18=K17=“1”,按下流程分别读AX、BX。Dbus:1122h;3344h

计算机组成原理实验5:运算器实验

(3) 字加法与减法运算

令M S2 S1 S0(K15 K13~K11=0100),FUN及总线单元显示AX+BX的结果。4466

令M S2 S1 S0(K15 K13~K11=0101),FUN及总线单元显示AX-BX的结果。ddde

2. 字节算术运算

(1) 偶字节写(置数操作)k23-k0=1

通过I/O单元“S15~S0”开关向累加器AL(L:low低位)和暂存器BL置数,具体操作步骤如下:置0022h和0044h ax和bx显示

计算机组成原理实验5:运算器实验

(2) 偶字节读操作(运算寄存器AL和BL内容送总线)

关闭AL、BL写使能,令K18=K17=1,按下流程分别读AL、BL。

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

(3) 字节减法算术运算(不带进位加)

令M S2 S1 S0(K15 K13~K11=0100),FUN单元显示AL+BL的结果。0066

令M S2 S1 S0(K15 K13~K11=0101),FUN单元显示AL-BL的结果。

实验2:逻辑运算

1. 字逻辑运算

(1) 字写操作(置数操作)

通过I/O单元“S15~S0”开关向累加器AX和暂存器BX置数,操作步骤如下:1122,3344

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

(2) 字读操作(运算寄存器AX和BX内容送总线)

关闭AX、BX写使能,令K18=K17=“1”,按下流程分别读AX、BX。1122,3344

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

(3) 字逻辑运算

令M S2 S1 S0(K15 K13~K11=1101),为逻辑与,FUN及总线显示AX逻辑与BX的结果1100。

令M S2 S1 S0(K15 K13~K11=1100),为逻辑或,FUN及总线显示AX逻辑或BX的结果3366。

实验3:移位运算

移位运算时把累加器A视为移位的源寄存器,也就是说移位是通过累加器A实现的。

1. 移位控制编码

计算机组成原理实验5:运算器实验

2. 移位执行过程

① 循环左移 ② 循环右移
计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验
③ 带进位循环左移 ④ 带进位循环右移
计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

◆不带进位循环左移:各位按位左移,最高位移入最低位。

◆不带进位循环右移:各位按位右移,最低位移入最高位。

◆带进位循环左移:各位按位左移,最高位移入CY中,CY中内容移入最低位。

◆带进位循环右移:各位按位右移,最低位移入CY中,CY中内容移入最高位。

◆循环移位一般用于实现循环式控制、高低字节的互换,还可以用于实现多倍字长数据的算术移位或逻辑移位。

3. 字移位运算k23-k0全置1

(1) 向AX寄存器置数

拨动“I/O输入输出单元”开关向移位源寄存器AX置数,具体操作步骤如下:

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

(2) AX寄存器移位

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

令M=0 S1=1参照表2.3.2改变S2、S0的状态,再按动【单拍】按钮,观察AX移位变化。

0080-0040-0020-0010-0008-0004-0002-0001-8000-4000-2000-1000-0800-0400-0200-0100-0080

4. 字节移位运算

(1) AL寄存器置数

拨动“I/O输入输出单元”开关向移位源寄存器AL置数,具体操作步骤如下:

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

(2) AL寄存器移位

计算机组成原理实验5:运算器实验

令M=0 S1=1参照表2.3.2改变S2、S0的状态,再按动【单拍】按钮,观察AL移位变化。

实验题

1、 将0008H写入AH寄存器,然后完成AH寄存器移位运算

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

2、在给定AX=6655h、BX=AA77h的情况下,改变运算器的功能设置,观察运算器的输出,填入下页表格中,并和理论分析进行比较、验证。

计算机组成原理实验5:运算器实验

实验4:进位控制与零标志

1. 标志控制原理

计算机组成原理实验5:运算器实验

(1) 进位标志CY

运算标志CY是带复位可预置的进位标志,在运算时由M信号控制,当M=0时,按【单拍】按钮,在DRCK上升沿把当前运算溢出位(进位或借位)打入CY的锁存输出端Q2。在M=1时,由CN位控制CY的“位操作”。当CN=0时,按【单拍】按钮,在DRCK上升沿执行CY的置“1”、清零、取反操作;遇M=1、CN=1时,CY保持原始状态。CY的复位端由CPU直接控制管理。

(2) 零标志Z

零标志Z是带复位端的运算结果判零标志,取源于运算器输出FUN。当FUN=00h时,zd为“1”,反之为“0”。;零标志由M信号控制,当M=0时,按【单拍】按钮,在DRCK上升沿把当前zd打入Z(零标志)的锁存输出端Q1。遇M=1,零标志Z保持原始状态。

(3) 标志位的初始化

标志位的清零端由系统掌控与控位无关,在手动实验中需要清标志时,通过按动【返回】键来实现标志位的初始化。

系统提供CY与Z的状态灯,其显示特征为:进位标志CY=1时,灯“亮”,反之灯“灭”;零标志Z=1时,灯“亮”,反之灯“灭”。

2. 实验连线

计算机组成原理实验5:运算器实验

(3) 进位标志CY实验

(1) CY标志控制实验

① 进位控制流程

计算机组成原理实验5:运算器实验

② 按上流程建立控制状态,参照下表改变方式控制,按【单拍】观察CY灯的变化

计算机组成原理实验5:运算器实验

(2) 进位运算实验

① 按【返回】键,通过I/O单元向AX、BX分别置数,操作如下:

计算机组成原理实验5:运算器实验

② 带进位加减法运算流程(加:0001,减:FFEB)

计算机组成原理实验5:运算器实验

(3) 零标志实验(字识别)

① 向寄存器AX和BX置数

通过“I/O输入输出单元”向AX、BX均置数0001h,操作步骤如下:

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

② 验证零标志锁存功能

按【返回】键清Z标志,按下流程建立零标志运算控制状态。K11=1时减法运算FUN=0000,按【单拍】钮Z标志灯亮(Z=1);K11=0时加法运算FUN=0002按【单拍】钮Z标志灯灭(Z=0)。

计算机组成原理实验5:运算器实验

实验报告

学院、系: 计算机学院
专业名称: 软件工程
学生姓名: 小何学长
指导教师: 刘亚松

一、实验题目

十六位机运算器

二、实验目的与要求

实验目的

掌握十六位机字与字节运算的数据传输格式,验证运算功能发生器及进位控制的组合功能。

实验要求

完成算术、逻辑、移位运算实验,熟悉ALU运算控制位的运用。

三、实验步骤(阐述主要步骤)

1.字算术运算

(1)字写操作

计算机组成原理实验5:运算器实验

(2)字读操作

关闭AX、BX写使能,令K18=K17=“1”,按下流程分别读AX、BX。Dbus:1122h ;3344h

计算机组成原理实验5:运算器实验

实验结果:

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

2.字节逻辑运算

(1)奇字节写操作(置数操作) k23-k0=1

通过I/O单元“S15~S0”开关向累加器AH(H:high高位)和暂存器BH置数,具体操作步骤如下:

计算机组成原理实验5:运算器实验

(2)奇字节读操作(运算寄存器AH和BH内容送数据总线)

关闭AH、BH写使能,令K18=K17=1,按下流程分别读AH、BH。

计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验
计算机组成原理实验5:运算器实验

4.字节移位运算

(1)AL寄存器置数

计算机组成原理实验5:运算器实验

(2)AL寄存器移位

计算机组成原理实验5:运算器实验

四、心得体会

文档获取