文档库 最新最全的文档下载
当前位置:文档库 › 实验八 移位操作实验

实验八 移位操作实验

实验八  移位操作实验
实验八  移位操作实验

实验八移位操作实验

一、实验要求和目的

1.了解汇编语言移位操作指令;

2.熟悉汇编语言逻辑移位指令的使用方法;

3.掌握利用汇编语言逻辑移位运算指令实现程序设计的方法。

二、软硬件环境

1.硬件环境:微机CPU 486以上,500MB以上硬盘,32M以上内存;

2.软件环境:装有MASM 5.0、DEBUG、LINK和EDIT等应用程序。

三、实验涉及的主要知识单元

移位指令主要包括算术移位、逻辑移位、循环移位,以下分三类介绍。其中统一的语句格式为:

操作符OPD,1

操作符OPD,CL

功能为将目的操作数的所有位按操作符规定的方式移动1位或按寄存器CL规定的次数(0~255)移动,结果送入目的地址。

1、算术移位

(1)算术左移指令SAL

格式:SAL OPD 1或CL

描述:

将(OPD)向左移动CL指定的次数,最低位补入相应的0,CF的内容为最后移入位的值。如图8-1所示,受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。

图8-1 SAL

(2)算术右移指令SAR

格式:SAR OPD 1或CL

描述:

将(OPD)向右移动CL指定的次数且最高位保持不变;CF的内容为最后移入位的值。如图8-2所示,受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。

图8-2 SAR

2、逻辑移位

(1)逻辑左移

格式:SHL OPD 1或CL

描述:

把目的操作数的低位向高位移CL规定的次数,空出的低位补0,CF的内容为最后移入位的值。与算术左移相同,如图8-1所示,受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。

(2)逻辑右移

格式:SHR OPD 1或CL

描述:

把目的操作数的高位向低位移CL规定的次数,空出的高位补0,CF的内容为最后移入位的值。如图8-3所示,受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。

图8-3 SHR

3、循环移位

循环移位包括不带进位的循环移位指令ROL、ROR和带进位的循环移位指令RCL、RCR。

(1)不带进位循环左移指令ROL

格式:ROL OPD 1或CL

描述:

把目的操作数的低位向高位移CL规定的次数,移出的位不仅要进入CF,而且还要填补空出的位,CF的内容为最后移入位的值。如图8-4所示,受影响的标志位:CF、OF。

图8-4 ROL

(2)不带进位循环右移指令ROR

格式:ROR OPD 1或CL

描述:

把目的操作数的高位向低位移CL规定的次数,移出的位不仅要进入CF,而且还要填补空出的位,CF的内容为最后移入位的值。如图8-5所示,受影响的标志位:CF、OF。

图8-5 ROR

(3)带进位循环左移指令RCL

格式:RCL OPD 1或CL

描述:

把目的操作数的低位向高位移CL规定的次数,用原CF的值填补空出的位,移出的位进入CF。如图8-6所示,受影响的标志位:CF、OF。

图8-6 RCL

(4)带进位循环右移指令RCR

格式:RCR OPD 1或CL

描述:

把目的操作数的高位向低位移CL规定的次数,,移出的位不仅要进入CF,而且还要填补空出的位,如图8-7所示,受影响的标志位:CF、OF。

图8-7 RCR

四、实验内容与步骤

1、实验内容

(1)用A命令写程序片段,在寄存器AX中存入一个数,要求对其用移位命令进行乘8,除4的操作。

(2)编写程序片段,实现如下的计算A=10*B,要求用到移位命令,不用乘法计算。

(3)编写指令序列把由DX和AX组成的32位二进制数进行算术左移。

2、实验步骤

(1)预习移位命令的基本知识,熟悉这些命令的基本操作,根据实验内容,整理编程思路;

(2)利用在DEBUG调试中的A命令输入对应程序片段;

(3)对写好的程序片段,利用DEBUG的T、P命令或G命令查看数据区,核对实验结果。

五、思考与练习

1.执行以下命令,观察AX是否有变化:(1)SAL AX, 1

SAR AX, 1

(2)SAR AX, 1

SAL AX, 1

2.移位指令如何影响标志位CF、OF?

寄存器实验报告

寄存器实验报告

一、实验目的 1. 了解寄存器的分类方法,掌握各种寄存器的工作原理; 2. 学习使用V erilog HDL 语言设计两种类型的寄存器。 二、实验设备 PC 微机一台,TD-EDA 实验箱一台,SOPC 开发板一块。 三、实验内容 寄存器中二进制数的位可以用两种方式移入或移出寄存器。第一种方法是以串行的方式将数据每次移动一位,这种方法称之为串行移位(Serial Shifting),线路较少,但耗费时间较多。第二种方法是以并行的方式将数据同时移动,这种方法称之为并行移位(Parallel Shifting),线路较为复杂,但是数据传送的速度较快。因此,按照数据进出移位寄存器的方式,可以将移位寄存器分为四种类型:串行输入串行输出移位寄存器(Serial In- Serial Out)、串行输入并行输出移位寄存器(Serial In- Parallel Out)、并行输入串行输出移位寄存器(Parallel In- Serial Out)、并行输入并行输出移位寄存器(Parallel In-Parallel Out)。 本实验使用V erilog HDL 语言设计一个八位并行输入串行输出右移移位寄存器(Parallel In- Serial Out)和一个八位串行输入并行输出寄存器(Serial In- Parallel Out),分别进行仿真、引脚分配并下载到电路板进行功能验证。 四、实验步骤 1.并行输入串行输出移位寄存器实验步骤 1). 运行Quartus II 软件,选择File New Project Wizard 菜单,工程名称及顶层文件名称为SHIFT8R,器件设置对话框中选择Cyclone 系列EP1C6Q240C8 芯片,建立新工程。 2.) 选择File New 菜单,创建V erilog HDL 描述语言设计文件,打开文本编辑器界面。 3.) 在文本编辑器界面中编写V erilog HDL 程序,源程序如下: module SHFIT8R(din,r_st,clk,load,dout); input [7:0]din; input clk,r_st,load; output dout; reg dout; reg [7:0]tmp; always @(posedge clk) if(!r_st) begin dout<=0; end else begin if(load) begin tmp=din; end else

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

实验二算术逻辑运算及移位操作 一、实验目的 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. 输入并运行表中的程序段,把结果填入表右边的空格中,并分析结果,说明本程序段的功能是什么。

实验五 带移位模型机设计与实现(优.选)

计算机学院计算机科学与技术专业班_____组、学号310 姓名协作者___________ 教师评定_____________ 实验题目带移位运算模型机的设计与实现___________ 1.实验目的与要求: (1)熟悉由微程序控制器控制模型机的数据通道。 (2)掌握机器指令的使用和编程。 (3)学习设计与调试计算机的基本步骤及方法。 (4)记录程序运行过程的数据和结果,按记录填写答题框,完成练习操作题,观察程序的 执行过程并记录运行结果。 2.实验方案: 一、实验连线 在实验仪上接好线后,仔细检查无误后可接通电源。 二、实验程序 结合基本模型机所学的五条指令和本实验介绍的移位指令,编写的实验程序已存在磁 盘里,文件名为EX2,该程序包括机器指令程序和微指令程序,在程序中地址和内容都是 十六进制,机器指令的前4位操作码。 三、实验步骤 与PC机联机将上面的实验程序(EX2)下载到实验仪里,该程序包括机器指令程序 和微指令程序,机器指令程序装入6116存储器里,微指令程序装入E2PROM2816控制存储 器里。 (1)实验程序下载操作步骤: 1、开机后,启动Windows系统,双击桌面上的“组成原理实验”快捷图标,即可进入DVCC 组成原理实验系统主画面。 2、单击该系统第三行的打开图标,即可出现文件框,选择文件名EX2并打开之。 3、此时左边的编辑窗口“新文件”变为“EX2”,在该窗口里显示EX2的源文件,它包括机器指令程序和微指令程序的微代码,$P开头是机器指令程序,$M开头是微指令程序的微代码。 4、单击“调试”图标,把打开的源文件下载到实验仪里,在下载过程中屏幕下方出现“正在传送文件”的提示,当文件传送完毕,提示消失。 5、文件传送完毕,要检查源文件是否正确传送到实验仪RAM和ROM里,首先检查实验仪RAM的内容,单击“程序RAM”打开该窗口,查看此时显示的地址和内容与实验程序中机器指令的地址和内容是否一致,若不一致,重复4的操作,若一致,就单击菜单栏中“调试”菜单,然后选择并单击“刷新数据”或按“F5”热键对“程序RAM”窗口显示的程序

数字信号处理实验一

实验一 离散时间信号分析 班级 信息131班 学号 201312030103 姓名 陈娇 日期 一、实验目的 掌握两个序列的相加、相乘、移位、反褶、卷积等基本运算。 二、实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列)}({n x 来表示,其中)(n x 代表序列的第n 个数字,n 代表时间的序列,n 的取值范围为+∞<<∞-n 的整数,n 取其它值)(n x 没有意义。离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号)(t x a 进行等间隔采样,采样间隔为T ,得到)}({nT x a 一个有序的数字序列就是离散时间信号,简称序列。 2.常用序列 常用序列有:单位脉冲序列(单位抽样)) (n δ、单位阶跃序列)(n u 、矩形序列)(n R N 、实指数序列、复指数序列、正弦型序列等。 3.序列的基本运算 序列的运算包括移位、反褶、和、积、标乘、累加、差分运算等。 4.序列的卷积运算 ∑∞ -∞==-= m n h n x m n h m x n y )(*)()()()( 上式的运算关系称为卷积运算,式中代表两个序列卷积运算。两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。其计算的过程包括以下4个步骤。 (1)反褶:先将)(n x 和)(n h 的变量n 换成m ,变成)(m x 和)(m h ,再将)(m h 以纵轴为对称轴反褶成)(m h -。

(2)移位:将)(m h -移位n ,得)(m n h -。当n 为正数时,右移n 位;当n 为负数时,左移n 位。 (3)相乘:将)(m n h -和)(m x 的对应点值相乘。 (4)求和:将以上所有对应点的乘积累加起来,即得)(n y 。 三、主要实验仪器及材料 微型计算机、Matlab6.5 教学版、TC 编程环境。 四、实验内容 (1)用Matlab 或C 语言编制两个序列的相加、相乘、移位、反褶、卷积等的程序; (2)画出两个序列运算以后的图形; (3)对结果进行分析; (4)完成实验报告。 五、实验结果 六、实验总结

计数器和移位寄存器设计仿真实验报告.

实验四典型时序电路的功能测试与综合仿真报告 15291204张智博一.74LS290构成的24位计数器 方法:第一片74290的Q3与第二片的INB相连,R01,R02相连,INA,R91,R92悬空构成24位计数器。50Hz,5v方波电压源提供时钟信号,用白炽灯显示输出信号。 实验电路: 实验现象:

输出由000000变为000001,000010,000011,000100,001000,001001,001010,001011,001100,010001,010000,010010,010011,010100,011000,011001,011010,011011,011100,100000,100001,100010,100011,100100,最终又回到000000,实现一次进位。 二.74LS161构成的24位计数器 方法:运用多次置零法 用两片74LS161构成了24位计数器,两片计数器的时钟信号都由方波电压源提供,第一片芯片的Q3和第二片芯片的Q0通过与非门,构成两个74LS161的LOAD信号,第一片的CO接第二片的ENT,其他ENT和ENP接Vcc(5v)。输出接白炽灯。 电路图: 实验现象:以下为1—24的计数过程

三.74LS194构成的8位双向移位寄存器 方法:通过两片194级联,控制MA,MB的值,来控制左右移动 实验电路由两片74LS194芯片构成。两个Ma接在一起,两个Mb接在一起,第一片的Dr,第二片的Dl,分别通过开关接到Vcc(5v)上。第一片的Q3接到第二片的Dr,第二片的Q0接到第一片的Dl。8个输出端分别接白炽灯。 实验电路:

实验四 移位运算器实验

实验四移位运算器实验 一、实验目的 验证移位控制器的组合功能 二、实验内容 1、实验原理 移位运算实验原理如图3-4所示,使用了一片74L S299(U34)作为移位发生器,其八位输入/输出端通过74L S245引到总线,总线控制方式见图1—6,J A4接通时输出到总线。299B`信号由开关299B提供,控制其使能端,T4为其时钟脉冲,手动方式实验时将T4与手动脉发生器输出端S D相连,即J23跳线器上T4连S D。由信号S0、S1、M控制其功能状态,详细见下表3—3。 2、实验接线 1、J20,J21,J22,接上短路片, 2、J24,J25,J26接左边; 3、J27,J28 右边; 4、J23 置右边T4选“SD” 5、JA5 置“接通”; 6、JA6 置“手动”; 7、JA3,JA4 置“接通”; 8、JA1,JA2,置“高阻”; 9、JA8 置上面“微地址” 10、EXJ1接BUS3 11、CE、ALU_B 置“1”, 12、299B 置“0”

3、实验步骤 ⑴ 连接实验线 路,仔细查线无误后接通电源。 ⑵ 置数,具体步骤如下: ⑶ 移位,参照上表改变S 0、 S 1、 M 、 299B 的状态,按动手动脉冲开关以产生时钟脉冲T 4,观察移位结果。 四、实验数据 Q08I/O07I/O113I/O26I/O314I/O45I/O515I/O64I/O716Q7 17 OE12OE13S01S119CLK 12CLR 9DS011DS7 18 U34 74LS299 299B`S0S1VCC GND AQ0 AQ7T4 UN1A 74LS08 UN1B 74LS08 UN2A 74LS32 UN2B 74LS32UN2C 74LS32 UN3A 74LS04 M QCY 3 2 1 654 3 2 1 218109 6 54 R4910K VCC CLK 11 D 12S D 10 C D 13 Q 9 Q 8UN5B 74LS74 UN4B UN4C 299B` UN1D 74LS08UN1A 74LS08UN1B 74LS08 UN1C 74LS08 AQ7AQ0 UN3B 74LS32 UN4D UN4E AR T4M S0S1CN4QCY UN2C 74LS08CY UN2A 74LS08UN3B UN3A 74LS3274LS32 CY 56123 312 431234 5 6 45 910 8111011 1213 8910 4 5 6 LZD 0-LZD 7 图3-4 BU SD0--D 7

数据传送指令及算术逻辑运算和移位指令的使用

实验报告 1.数据传送指令的使用 一,实验目的; 把数据、地址或立即数传送到寄存器、存储单元以及I/O端口,或从内存单元、I/O端口中读取数据。 1. 通用传送指令:MOV,PUSH,POP,XCHG,XLAT 2. 输入输出指令指令: IN,OUT 3. 目的地址传送指令: LEA,LDS,LES 4. 标志位传送指令: LAHF,SAHF,PUSHF,POPF 二,实验步骤; 1. 传送指令 1)用A命令在内存100H处键入下列内容: MOV AX,1234 MOV BX,5678 XCHG AX,BX MOV AH,35 MOV AL,48 MOV DX,75AB XCHG AX,DX 2)用U命令检查键入的程序并记录,特别注意左边的机器码。 3)用T命令逐条运行这些指令,每运行一行检查并记录有关寄存器及IP的变化情况。并注意标志位有无变化。

2. 改变标志寄存器psw中tf标志的状态(0——1或1——0),其余位保持不变。 3. 设DS=当前段地址,BX=0300H,SI=0002H,请用DEBUG的命令将存储器偏移地址300H~304H连续单元顺序装入0AH,0BH,0CH,0DH,0EH。在DEBUG状态下使用A 命令送入下面程序,并用单步T命令执行的方法,分析每条指令源地址的形成过程?当数据传送每完成一次,试分析AX寄存器中的内容是什么? 程序清单如下: MOV AX,BX MOV AX,0304H MOV AX,[0304H] MOV AX,[BX] MOV AX,0001[BX] MOV AX,[BX][SI] HLT

4. 使用标志位传送指令,编程序段将标志位寄存器的低八位的值存入内存单元DS:1000H 中或堆栈中,然后将标志位寄存器的低八位置位为10101010。 2.算术逻辑运算和移位指令的使用 一,实验目的; 使用算术逻辑运算和移位指令,可以实现对二进制数据的加、减、乘、除等四则运算,与、或、非、异或等逻辑运算,以及移位运算和代码转换运算 1,算术运算:加法指令、减法指令,乘法指令、除法指令以及转换指令; 2. 逻辑运算指令:AND,TEST,OR,XOR,NOT 3. 移位指令: 移位运算可以分为算术逻辑移位和循环移位两类。 (1)算术逻辑移位指令:SHL,SHR,SAL,SAR (2)循环移位指令:ROL,ROR,RCL,RCR 二,实验步骤; 1. 已知程序段定义如下: MOV AX,1234 MOV CL,4 SHL AX,CL INC AX DEC CL ROR AX,CL MOV BX,4 MUL BX

运算器 实验报告汇总

计算机科学与技术系 实验报告 专业名称计算机科学与技术 课程名称计算机组成与结构 项目名称基本运算器实验 班级 学号 姓名 同组人员无 实验日期 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单元的二进制数据开关模拟给出。控制信号中除T4为脉冲信号外,其余均为电平信号,其中ALU_B为低有效,其余为高有效。

实验八 移位操作实验

实验八移位操作实验 一、实验要求和目的 1.了解汇编语言移位操作指令; 2.熟悉汇编语言逻辑移位指令的使用方法; 3.掌握利用汇编语言逻辑移位运算指令实现程序设计的方法。 二、软硬件环境 1.硬件环境:微机CPU 486以上,500MB以上硬盘,32M以上内存; 2.软件环境:装有MASM 5.0、DEBUG、LINK和EDIT等应用程序。 三、实验涉及的主要知识单元 移位指令主要包括算术移位、逻辑移位、循环移位,以下分三类介绍。其中统一的语句格式为: 操作符OPD,1 操作符OPD,CL 功能为将目的操作数的所有位按操作符规定的方式移动1位或按寄存器CL规定的次数(0~255)移动,结果送入目的地址。 1、算术移位 (1)算术左移指令SAL 格式:SAL OPD 1或CL 描述: 将(OPD)向左移动CL指定的次数,最低位补入相应的0,CF的内容为最后移入位的值。如图8-1所示,受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。 图8-1 SAL (2)算术右移指令SAR 格式:SAR OPD 1或CL 描述: 将(OPD)向右移动CL指定的次数且最高位保持不变;CF的内容为最后移入位的值。如图8-2所示,受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。 图8-2 SAR 2、逻辑移位

(1)逻辑左移 格式:SHL OPD 1或CL 描述: 把目的操作数的低位向高位移CL规定的次数,空出的低位补0,CF的内容为最后移入位的值。与算术左移相同,如图8-1所示,受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。 (2)逻辑右移 格式:SHR OPD 1或CL 描述: 把目的操作数的高位向低位移CL规定的次数,空出的高位补0,CF的内容为最后移入位的值。如图8-3所示,受影响的标志位:CF、OF、PF、SF和ZF(AF无定义)。 图8-3 SHR 3、循环移位 循环移位包括不带进位的循环移位指令ROL、ROR和带进位的循环移位指令RCL、RCR。 (1)不带进位循环左移指令ROL 格式:ROL OPD 1或CL 描述: 把目的操作数的低位向高位移CL规定的次数,移出的位不仅要进入CF,而且还要填补空出的位,CF的内容为最后移入位的值。如图8-4所示,受影响的标志位:CF、OF。 图8-4 ROL (2)不带进位循环右移指令ROR 格式:ROR OPD 1或CL 描述: 把目的操作数的高位向低位移CL规定的次数,移出的位不仅要进入CF,而且还要填补空出的位,CF的内容为最后移入位的值。如图8-5所示,受影响的标志位:CF、OF。 图8-5 ROR (3)带进位循环左移指令RCL

实验六移位寄存器的设计

实验六移位寄存器的设计 一、实验目的 1、掌握中规模4位双向移位寄存器逻辑功能及使用方法。 2、熟悉移位寄存器的应用—实现数据的串行、并行转换和构成环形计数器。 二、实验预习要求 1、复习有关寄存器及串行、并行转换器有关内容。 2、查阅CC40194、CC4011及CC4068 逻辑线路。熟悉其逻辑功能及引脚排列。 3、在对CC40194进行送数后,若要使输出端改成另外的数码,是否一定要使寄存器清零? 4、使寄存器清零,除采用R C输入低电平外,可否采用右移或左移的方法?可否使用并行送数法?若可行,如何进行操作? 5、若进行循环左移,图6-4接线应如何改接? 6、画出用两片CC40194构成的七位左移串 /并行转换器线路。 7、画出用两片CC40194构成的七位左移并 /串行转换器线路。 三、实验设备及器件 1、+5V直流电源 2、单次脉冲源 3、逻辑电平开关 4、逻辑电平显示器 5、CC40194×2(74LS194)CC4011(74LS00) CC4068(74LS30) 四、设计方法与参考资料 1、移位寄存器是一个具有移位功能的寄存器,是指寄存器中所存的代码能够在移位脉冲的作用下依次左移或右移。既能左移又能右移的称为双向移位寄存器,只需要改变左、右移的控制信号便可实现双向移位要求。根据移位寄存器存取信息的方式不同分为:串入串出、串入并出、并入串出、并入并出四种形式。 本实验选用的4位双向通用移位寄存器,型号为CC40194或74LS194,两者功能相同,可互换使用,其逻辑符号及引脚排列如图6-1所示。 其中D0、D1、D2、D3为并行输入端;Q0、Q1、Q2、Q3为并行输出端;S R为右移串行输 C为直接无条件清零端; 入端,S L为左移串行输入端;S1、S0为操作模式控制端;R

最新实验6-移位寄存器功能测试及应用-(实验报告要求)

实验六 移位寄存器功能测试及应用 --实验报告要求 一. 实验目的(0.5分) 1. 熟悉寄存器、移位寄存器的电路结构和工作原理。 2. 掌握中规模4位双向移位寄存器逻辑功能及使用方法。 3. 熟悉移位寄存器的应用。 二. 实验电路 D0、D1 、D2 、D3为并行输入端;Q0、Q1、Q2、Q3为并行输出端;SR 为右移串行输入端,SL 为左移串行输入端;S1、S0 为操作模式控制端;R C 为直接无条件清零端;CP 为时钟脉冲输入端。 三 图2 CC40194/74LS194 逻辑功能测试 图1 CC40194/74LS194的逻辑符号及引脚功能 图3 环形计数器

四. 实验原理(0.5分) 1.移位寄存器是一个具有移位功能的寄存器,是指寄存器中所存的代码能够在移位脉冲的作用下依次左移或右移。既能左移又能右移的称为双向移位寄存器,只需要改变左、右移的控制信号便可实现双向移位要求。根据移位寄存器存取信息的方式不同分为:串入串出、串入并出、并入串出、并入并出四种形式。 本实验选用的4位双向通用移位寄存器,型号为CC40194或74LS194,两者功能相同,可互换使用。 74LS194有5种不同操作模式:即并行送数寄存,右移(方向由Q0-->Q3),左移(方向由Q3→Q0),保持及清零。 2.移位寄存器应用很广,可构成移位寄存器型计数器:顺序脉冲发生器;串行累加器;可用数据转换,即把串行数据转换为并行数据,或把并行数据转换为串行数据等。本实验研究移位寄存器用作环形计数器和数据的串、并行转换。 (1)环行计数器 把移位寄存器的输出反馈到它的串行输入端,就可以进行循环移位。 (2)实现数据、并行转换器 a)串行∕并行转换器 串行∕并行转换器是指串行输入的数码,经转换电路之后变换成并行输出。 b)并行∕串行转换器 并行∕串行转换器是指并行输入的数码经转换电路之后,换成串行输出。 五. 实验内容与步骤(共1分) 1. 2.测试74LS194的逻辑功能(0.5分) (1)在实验箱上选取一个16P插座,按定位标记插好74LS194集成块。 (2)将实验挂箱上+5V直流电源接40194的16脚,地接8脚。S1、S0、SL、SR、D0、D1、D2、D3分别接至逻辑电平开关的输出插口;Q0、Q1、Q2、Q3接至发光二极管。CP端接单次脉冲源。 (3)改变不同的输入状态,逐个送入单次脉冲,观察寄存器输出状态,记录之。 a)清除:令=0,其它输入均为任意态,这时寄存器输出Q0、 Q1、 Q2 、Q3应均为0。清除后,至=1。 b)送数:令=S1=S0=1 ,送入任意4位二进制数,如D0、D1、D2、D3=1010,加CP脉冲,观察CP=0、CP由1→0、CP=1三种情况下寄存器输出状态的变化,观察寄存输出状态变化是否发生在CP脉冲的上升沿。 (c)右移:清零后,令=1, S1=0 S0=1,由右移输入端S R送入二进制数码如0100,由CP端连续加4个脉冲,观察输出情况,记录之。 (d)左移:先清零或予至,再令=1 S1=1,S0=0,由左移输入端S L送入二进制数码

基本模型机的设计与实现和带移位运算的模型机的设计及实现

一、基本模型机的设计与实现 (一)实验目的: 1、清晰地建立计算机的整机概念,在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本模型计算机。 2、为其定义五条机器指令:IN、ADD、STA、OUT、JMP,并编写相应的微程序,具体上机调试掌握整机概念。 3、学习设计和调试计算机的基本步骤和方法,提高使用软件仿真工具和集成电路的基本技能。 (二)、实验设备 TDN-CM+计算机组成原理教学实验系统一台。 (三)、实验原理 本实验定义五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JMP(无条件转移),其指令格式如下: 助记符机器指令码说明 IN 0000 0000 “I NPUT DEVICE”→R0 ADD addr 0001 0000 ××××××××R0+[addr] →R0 STA addr 0010 0000 ××××××××R0→ [addr] OUT addr 0011 0000 ××××××××[addr] →BUS JMP addr 0100 0000 ××××××××addr→PC 其中IN为单字长(8位),其余为双字长指令,××××××××为addr对应的二进制地址码。 为了向RAM写入、读出机器指令,并能启动程序执行,还须设计三个控制台操作微程序。 存储器读(KRD):拨动总清开关CLR后,控制台开关SWB、SWA为“0 0”时,按START微动开关,可对RAM连续手动读操作。 存储器写(KWE):拨动总清开关CLR后,控制台开关SWB、SWA为“0 1”时,按START微动开关,可对RAM连续手动写操作。 启动程序(RP):拨动总清开关CLR后,控制台开关SWB、SWA为“11”时,按START微动开关,即可转入到第01号“取址”微指令,启动程序运-

计算机组成原理移位寄存实验报告

计算机组成原理实验二 移位寄存实验 一、实验目的: 1、了解移位寄存器的硬件电路,验证移位控制与寄存的组合功能。 2、利用寄存器进行数据传输。 二、实验要求: 实现寄存器移位操作,了解通用寄存器的运用。 三、实验原理: 移位运算实验原理图 移位运算实验原理如图所示,使用了一片74LS299作为移位发生

器,其八输入/输出端以排针方式和总线单元连接。299—B信号控制其使能端,T4时序为其时钟脉冲,实验时将“W/R UNIT”中的T4接至“STATE UNIT”中的KK2单脉冲发生器,由S0、S1、M控制信号控制其功能状态,其列表如下: 299—B S 1 S 0 M 功能 0 0 0 任意保持 0 1 0 0 循环右移 0 1 0 1 带进位循环右移 0 0 1 0 循环左移 0 0 1 1 带进位循环左移 任意 1 1 任意装数 四、实验连接: 1.运算器控制信号连接: S0,S1,M,LDCZY,LDR0,/SW-B,/SR-B,/R0-B 2.完成连接并检查无误后接通电源。 五、实验仪器状态设定: 在闪动的“P.”状态下按动“增址”命令键,使LED显示器自左向右第一位显示提示符“H”,表示本装置已进入手动单元实验状态。 五、实验项目: (一)移位寄存器置数 首先置CBA=000,然后按下面流程操作: 数据开关(01101011)三态门置数 (01101011) 三态门

[CBA=001] [S0=1,S1=1] [CBA=111] [ “按STEP” ] (二)寄存器移位 置CBA=001并输入数据,然后置CBA=111,参照实验原理中的移位寄存器控制特性表改变S0、S1、M,按动“单步”命令键,实验发现数据移位正确。 (三)移位结果寄存 我们选取R0,把移位寄存器移位后的内容寄存到通用寄存器。 在移位操作后保持CBA=111,S0=0,S1=0,然后令LDR0=1,再按动“单步”命令键,完成移位结果保存。 (四)移位结果读出 置CBA=100,总线指示灯显示R0内容,与上步中存的数一致。 六、实验总结: 通过本次实验的数据和理论分析进行比较、验证,我们验证了移位控制与寄存的组合功能,并熟悉了移位寄存器的数据传输方式。

计算机组成原理实验

计算机组成原理上机实验指导

一、实验准备和实验注意事项 1.本课程实验使用专门的TDN-CM++计算机组成原理教学实验设备,使用前后均应仔细检查主机板,防止导线、元件等物品落入装置内导致线路短路、元件损坏。 2.完成本实验的方法是先找到实验板上相应的丝印字及其对应的引出排针,将排针用电缆线连接起来,连接时要注意电缆线的方向,不能反向连接;如果实验装置中引出排针上已表明两针相连,表明两根引出线内部已经连接起来,此时可以只使用一根线连接。 3.为了弄清计算机各部件的工作原理,前面几个实验的控制信号由开关单元“SWITCH UNIT”模拟输入;只有在模型机实验中才真正由控制器对指令译码产生控制信号。在每个实验开始时需将所有的开关置为初始状态“1”。 4.本实验装置的发光二极管的指示灯亮时表示信号为“0”,灯灭时表示信号为“1”。 5.实验接线图中带有圆圈的连线为实验中要接的线。 6.电源关闭后,不能立即重新开启,关闭与重启之间至少应有30秒间隔。 7.电源线应放置在机内专用线盒中。 8.保证设备的整洁。

二、实验设备的数据通路结构 利用本实验装置构造的模型机的数据通路结构框图如下图。其中各单元内部已经连接好,单元之间可能已经连接好,其它一些单元之间的连线需要根据实验目的用排线连接。 图0-2 模型机数据通路结构框图

实验一运算器实验:算术逻辑运算实验 一.实验目的 1.了解运算器的组成结构; 2.掌握运算器的工作原理; 3.掌握简单运算器的数据传送通路。 4.验证运算功能发生器(74LSl81)的组合功能。 二.实验设备 TDN-CM++计算机组成原理教学实验系统一台,排线若干。 三.实验原理 实验中所用的运算器数据通路如图1-l所示。其中两片74LSl81以串行方式构成8位字长的ALU,ALU的输出经过一个三态门(74LS245)和数据总线相连。三态门由ALU-B控制,控制运算器运算的结果能否送往总线,低电平有效。 为实现双操作数的运算,ALU的两个数据输入端分别由二个锁存器DR1、DR2(由74LS273实现)锁存数据。要将数据总线上的数据锁存到DR1、DR2中,锁存器的控制端LDDR1和LDDR2必须为高电平,同时由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、LDDR1、LDDR2、ALU-B、SW-B均由“SWITCH UNIT”中的二进制数据开关来模拟,其中Cn、ALU-B、SW-B为低电平有效,LDDRl、LDDR2为高电平有效。 对单总线数据通路,需要分时共享总线,每一时刻只能由一组数据送往总线。

单片机 移位操作 软件实验2

实验五 移位操作 一、实验目的: 掌握移位操作的方法,并理解左移或右移与乘除法运算的关系。 二、实验内容: 1.双字节二进制数左移一位 将两个内部RAM 31H 和30H 单元中的内容组成的双字节数通过C y 左移一位。 功能示意图 程序清单 赋初值:(30H)=A7H (31H)=9CH 命令行 区域变化 备注 PC 指针 CLR C 给C 累加器清零 C:0x0000 MOV A ,30H C:0x0001 RLC A 首位1给C 累加器 C:0x0003 MOV 30H, A C:0x0004 MOV A,31H C:0x0006 RLC A C 累加器中1给其末位,其首位1再给C 累加器 C:0x0008 MOV 31H, A C:0x0009 SJMP $ C:0x000B 最终结果 (30H)=4EH (31H)=39H 2.多字节二进制数右移一位 将三个内部RAM 32H 、31H 和30H 单元中的内容组成的三字节数通过C y 右移一位。 功能示意图 C y 31H 30H 32H 31H C y 30H

程序清单 赋初值(32H)=9CH (31H)=A7H (30H)=4EH 命令行区域变化备注PC指针CLR C 给C累加器清零C:0x0000 MOV A,32H C:0x0001 RRC A 末位0给C累加器C:0x0003 MOV 32H,A C:0x0004 MOV A,31H C:0x0006 RRC A C累加器中0给其末 C:0x0008 位,其首位1再给C累 加器 MOV 31H,A C:0x0009 MOV A,30H C:0x000B C:0x000D RRC A C累加器中1给其末 位,其首位0再给C累 加器 MOV 30H,A C:0x000E SJMP $ C:0x0010 最终结果(30H)=A7H (31H)=53H (32H)=4EH 三、思考题 1、多于三个字节的移位操作如何进行? 答:同理,通过C累加器,运用RRC或RLC命令实现移位操作。若字节过多,可以加入循环。详见实验七第一个程序段 2、如果不通过C y如何移位?实现的功能有何不同? 答:将RLC、RRC命令更改为RL、RR命令,这样就在不引起Cy变化的情况下进行移位操作了。

3_11实验二移位运算实验(王伟)

新疆师范大学计算机科学技术学院实验报告 专业:软件工程课程名称:计算机组成原理班级: 14-3班 姓名:王伟学号: 20141602141011 实验地址:数理楼2楼 实验时间:2016.11.10 指导教师签字:成绩: 实验二算术移位运算实验 1.实验目的和要求 (1)掌握移位控制的功能及工作原理。 (2)了解移位寄存器的功能。 2.主要仪器设备 EL-JY-II型计算机组成原理试验系统一套,排线若干。 3.实验原理 移位运算实验电路结构如图 2-1 所示: 图 2-1 移位运算器电路结构 移位寄存器由 EP1K10 实现 T4 为移位时钟,M、S0、S1 为功能选择(见实验二),G_299 为输出控制,低电平时将寄存器的值送上数据总线。CY 为进位单元,对应于 Z 指示灯。DATAL、DATAH 接至数据总线。

4.操作方法与实验步骤 实验连线图如图 2-3 所示。 一、开关控制操作方式实验 (1)将控制开关电路的所有开关拨到输出高电平“1”状态,所对应的指示灯亮。 (2)拨动清零开关CLR,使其指示灯灭。再拨动 CLR,使其指示灯亮。 (3)置数: 置 C-G=1,299-G=0,通过数据输入电路输入要移位的数据,置 D15---D0= “0000000000000001”,然后置 C-G=0,数据总线显示灯显示“0000000000000001”,置 S0=1,S1=1,M=1 ,此时为置数状态,按脉冲源及时序电路上的【单步】按钮,置 C-G=1,完成置数的过程,进位指示灯亮表示进位“Z”已置位。 (4)不带进位移位: 置 299-G=0,S0=1,S1=0,M=0,此时为循环左移状态,数据总线显示灯显示“0000000000000001”,按【单步】,数据总线显示灯显示“0000000000000010”,

开放式CPU 运算器部件实验 移位器

运算器部件实验 移位器 一、实验目的 1、理解寄存器、移位器的原理。 2、掌握5种移位器及其用途。 二、实验原理 1、算术左移SAL (shift arithmetical left )、算术右移SAR(shift arithmetical right) 把操作数看成带符号数,对寄存器操作数进行移位,左移时空出的位补0,右移时空出的位补与最高位相同的1或0,如下图 2、逻辑左移SLL (shift logical left )、逻辑右移SLR (shift logical right ) 把操作数看成无符号数,对寄存器操作数进行移位。左移时空出的位补0,右移时空出的位补0,如下图 3、循环左移ROF (rotation left )、循环右移ROR (rotation right ) 循环左右移其实是一样的,比如说8位的操作数,左移n (0≤n ≤8)位和右移n-8位结果是一样的。左移时,移出的最高位移回到最低位;右移时,移出的最低位移回到最高位,如下图 三、实验步骤 循环右移 循环左移 算术右移 ‘0 0’ 逻辑左移 0’

1、打开QuartusⅡ,安装ByteBlaster Ⅱ。 2、将子板上的JTAG端口和PC机的并行口用下载电缆连接。打开试验台电源。 3、执行Tools—Programmer 命令,将shifter.sof下载到FPGA中。 4、在实验台上通过模式开关选择FPGA-CPU独立调试模式010。 四、输入输出规则 1、将开关CLKSEL拨到1,将短路子DZ3短接且短路子DZ4断开,使FPGA-CPU 所需要的时钟使用正单脉冲时钟。 2、输入的8位操作数D7~D0对应开关SD15~SD8。 3、移动的位数n(3位数)对应开关SD7~SD5。 4、方向dir(左移还是右移)对应开关SD4,0代表左移,1代表右移。 5、移位类型kind(2位)对应开关SD3~SD2,00代表算数移,01代表逻辑移,10代表循环移。 6、在按下实验台上的单脉冲按钮后,对操作数移位的结果在灯A7~A0上体现。 五、实验结果 1.对8位数10110100进行移位操作,结果如下表1。 表1 第一组数据:10110110 2.对8位数01001101进行移位操作,结果如下表2。 表2 第二组数据:01001101

计算机实验

实验一十六位机运算器实验 专业:计算机科学与技术班级:学号:************ 姓名:张三丰实验地点:工A408 实验时间:指导教师: 一、实验目的 掌握十六位机字与字节运算的数据传输格式,验证运算功能发生器及进位控制的组合功能。 二、实验要求 完成算术、逻辑、移位运算实验,熟悉ALU运算控制位的运用。 三、实验原理 实验中所用的运算器数据通路如图2-3-1所示。ALU运算器由CPLD描述。运算器的输出经过2片74LS245三态门与数据总线相连,2个运算寄存器AX、BX的数据输入端分别由4个74LS574锁存器锁存,锁存器的输入端与数据总线相连,准双向I/O输入输出端口用来给出参与运算的数据,经2片74LS245三态门与数据总线相连。 图2-3-1运算器数据通路 图2-3-1中,AXW、BXW在“搭接态”由实验连接对应的二进制开关控制,“0”有效,通过【单拍】按钮产生的负脉冲把总线上的数据打入,实现AXW、BXW写入操作。

四、运算器功能编码 表2.3.1 ALU运算器编码表 算术运算逻辑运算 五、实验连线 K23~K0置“1”,灭M23~M0控位显示灯。然后按下表要求“搭接”部件控制电路。

六、算术运算实验 1.字算术运算 (1)字写操作 按【单拍】按钮按【单拍】按钮 (2)字读操作 (3)字加法与减法运算 令M S2 S1 S0(K15 K13~K11=0100),FUN及总线单元显示AX+BX的结果。 令M S2 S1 S0(K15 K13~K11=0101),FUN及总线单元显示AX-BX的结果。 2.字节算术运算 (1)偶字节写(置数操作) 通过I/O单元“S15~S0”开关向累加器AL和暂存器BL置数,具体操作步骤如下: 按【单拍】按钮按【单拍】按钮 (2)偶字节读操作(运算寄存器AL和BL内容送总线) 关闭AL、BL写使能,令K18=K17=1,按下流程分别读AL、BL。 K18~K17=11 K13~K11=000 (3)字节减法算术运算(不带进位加) 令M S2 S1 S0(K15 K13~K11=0100),FUN及总线单元显示AL+BL的结果。 令M S2 S1 S0(K15 K13~K11=0101),FUN及总线单元显示AL-BL的结果。

移位寄存器实验报告

移位寄存器实验报告 姓名:陈素学号:3120100621 专业:软件工程课程名称:逻辑与计算机设计基础实验同组学生姓名:张闻 实验时间:y yyy-mm-dd 实验地点:紫金港东4-509 指导老师:一、实验目的和要求 掌握移位寄存器的工作原理及设计方法 掌握串、并数据转换的概念与方法 了解序列信号在CPU控制器设计中的应用 二、实验内容和原理 2.1 实验原理 带并行置入的移位寄存器 移位寄存器:每来一个时钟脉冲,寄存器中的数据按顺序向左或向右移动一位必须采用主从触发器或边沿触发器 不能采用电平触发器 数据移动方式:左移、右移 数据输入输出方式 串行输入,串行输出 串行输入,并行输出 并行输入,串行输出 串行输入的移位寄存器 使用D触发器,可构成串行输入的移位寄存器 2.2 标题 <正文>

带并行输入的右移移位寄存器 数据输入移位寄存器的方式:串行输入、并行输入 带并行输入的8位右移移位寄存器 module shift_reg(clk, S, s_in, p_in, Q); input wire clk, S, s_in; input wire [7:0] p_in; output wire [7:0] Q; wire [7:0] D; wire nS; FD FDQ0(.C(clk), .D(D[0]), .Q(Q[0])), FDQ1(.C(clk), .D(D[1]), .Q(Q[1])), FDQ2(.C(clk), .D(D[2]), .Q(Q[2])), FDQ3(.C(clk), .D(D[3]), .Q(Q[3])), FDQ4(.C(clk), .D(D[4]), .Q(Q[4])), FDQ5(.C(clk), .D(D[5]), .Q(Q[5])), FDQ6(.C(clk), .D(D[6]), .Q(Q[6])), FDQ7(.C(clk), .D(D[7]), .Q(Q[7])); OR2 D0_L(.I0(L_0), .I1(R_0), .O(D[0])), D1_L(.I0(L_1), .I1(R_1), .O(D[1])), D2_L(.I0(L_2), .I1(R_2), .O(D[2])), D3_L(.I0(L_3), .I1(R_3), .O(D[3])), D4_L(.I0(L_4), .I1(R_4), .O(D[4])), 串行输入 S

相关文档
相关文档 最新文档