文档库 最新最全的文档下载
当前位置:文档库 › 计算机组成原理-进位控制,通用寄存器判零实验

计算机组成原理-进位控制,通用寄存器判零实验

计算机组成原理-进位控制,通用寄存器判零实验
计算机组成原理-进位控制,通用寄存器判零实验

实验报告

学院:计算机科学学院专业:计算机应用技术2013年11月23日

实验二通用寄存器单元实验

实验二通用寄存器单元实验 2014.4.29 班级12级物联网工程(1)班学号姓名 【实验目的】 1.了解通用寄存器的组成和硬件电路。 2.利用通用寄存器实现数据的置数、左移、右移等功能。 【实验要求】 1.按照实验步骤完成实验项目,实现通用寄存器移位操作。 2.了解通用寄存器单元的工作原理运用。 【实验过程】 实验2.1 数据输入通用寄存器 (1).把RA-IN(8芯的盒型插座)与CPT-B板上的二进制开关单元中J01插座相连(对应二进制开关H16~H23),把RA-OUT(8芯的盒型插座)与数据总线上的DJ6相连。 (2).把RACK连到脉冲单元的PLS1,把ERA、X0、X1、RA-O、M接入二进制拨动开关。(请按下表接线)。 (3).二进制开关H16~H23作为数据输入,置42H(对应开关如下表)。 置各控制信号如下: (4).按启停单元中的运行按钮,置平台为运行状态。 (5).按脉冲单元中的PLS1脉冲按键,在RACK上产生一个上升沿,把42H打入通用寄存器。 (6).此时数据总线上的指示灯IDB0~IDB7 应该显示为42H。由于通用寄存器内容不为0,所以LED(ZD)灯灭。

实验2.2 寄存器内容无进位位左移实验 (1)按照实验1数据输入的方法把数据42H打入通用寄存器中,数据总线上显示42H。 (2)实现左移功能,置各控制信号如下: (3)按启停单元中的运行按钮,置实验平台为运行状态。 (4)按脉冲单元中的PLS1脉冲按键,在RACK上产生一个上升沿,使通用寄存器中的值左移。 (5)此时数据总线上的LED指示灯IDB0~IDB7 应该显示为84H。由于通用寄存器内容不为0,所以ZD(LED)灯灭。 (6)按脉冲单元中的PLS1脉冲按键,使通用寄存器中的值左移,此时数据总线上的LED指示灯IDB0~IDB7应该显示为09H。若一直按PLS1,在总线上将看见数据循环左移的现象。 实验2.3 寄存器内容无进位位右移实验 (1)按照实验1数据输入的方法把数据42H打入通用寄存器中,数据总线上显示42H。 (2)实现右移功能,置各控制信号如下: (3)按启停单元中的运行按钮,置实验平台为运行状态。 (4)按脉冲单元中的PLS1脉冲按键,在RACK上产生一个上升沿,使通用寄存器中的值右移。 (5)此时数据总线上的LED指示灯IDB0~IDB7 应该显示为21H。由于通用寄存器内容不为0,所以ZD(LED)灯灭。 (6)按脉冲单元中的PLS1脉冲按键,使通用寄存器中的值右移,此时数据总线上的LED指示灯IDB0~IDB7应该显示为90H。若一直按PLS1,在总线上将看见数据循环左移的现象。 附:通用寄存器的逻辑 通用寄存器(8位并入并出移位寄存器) 【实验结果】

计算机组成原理寄存器实验

成绩:计算机原理实验室实验报告 课程:计算机组成原理 姓名:李文周 专业:计算机科学与技术 学号:132054237 日期:2015.12 太原工业学院 计算机工程系

实验二:寄存器实验 实验环境PC机+Win7+74LS373+proteus仿真器实验日期2015.12一.实验内容 (1)基本内容 1.理解CPU运算器中寄存器的作用 2.设计并验证4位算数逻辑单元的功能 (2)扩展要求 1.实现更多的寄存器(至少8个)

二.理论分析或算法分析 74ls373是常用的地址锁存器芯片,它实质是一个是带三态缓冲输出的8D 触发器,在单片机系统中为了扩展外部存储器,通常需要一块74ls373芯片。74ls373工作原理简述: (1).1脚是输出使能(OE),是低电平有效,当1脚是高电平时,不管输入3、4、7、8、13、14、17、18如何,也不管11脚(锁存控制端,G)如何,输出2(Q0)、5(Q1)、6(Q2)、9(Q3)、12(Q4)、15(Q5)、16(Q6)、19(Q7)全部呈现高阻状态(或者叫浮空状态); (2).当1脚是低电平时,只要11脚(锁存控制端,G)上出现一个下降沿,输出2(Q0)、5(Q1)、6(Q2)、9(Q3)、12(Q4)、15(Q5)、16(Q6)、19(Q7)立即呈现输入脚3、4、7、8、13、14、17、18的状态.锁存端LE由高变低时,输出端8位信息被锁存,直到LE 端再次有效。当三态门使能信号OE为低电平时,三态门导通,允许Q0~Q7输出,OE为高电平时,输出悬空。

L——低电平;H——高电平;X——不定态;Q0——建立稳态前Q的电平;G——输入端,与8031ALE连高电平:畅通无阻低电平:关门锁存。图中OE——使能端,接地。当G=“1”时,74LS373输出端1Q—8Q与输入端1D—8D相同;当G 为下降沿时,将输入数据锁存。 三.实现方法(含实现思路、程序流程图、实验电路图和源程序列表等)

计算机组成原理《进位控制实验》

进位控制实验一、实验目的 验证带进位控制的算术运算功能发生器的功能二、实验原理

进位控制运算器的实验原理如图1-3所示,在实验1、1的基础上增加进位控制部分,其中181的进位进入了一个锁存器,其写入是由T4和AR信号控制,T4是脉冲信号,实验时将T4连至信号单元的TS4上。AR是电平控制信号(低电平有效),可用于实现带进位控制实验,而T4脉冲是将本次运算的进位结果锁存到进位锁存器中。 三、实验步骤及注意事项 1、按图1-4连接实验线路,仔细检查无误后,接通电源。(图中箭头表示需要接线的地方,接线总线和控制信号时哟啊注意高低位一一对应,可用彩排线的颜色来区别)

2、进位标志清零。具体步骤如下: 实验板中开关单元中的CLR 开关为标志位CY 、ZI 的清零开关,他为0时(开关向上为1,向下为0)是清零状态,所以将此开关做1→0→1操作,即可使标志位CY 、ZI 清零(清零后CY 、ZI 指示灯亮)。 3、用输入单元的二进制数据开关向DR1存入11000001,向DR2存入01000011。具体步骤如下: 首先使各个控制电平的初始状态为:CLR=1,LDDR1=0,LDDR2=0, CLU_G=1,AR=1,SW_G=1,S3 S2 S1 S0 M CN=111111,并将控制台单元的开关SP05打在“NORM ”状态,SP06打在“RUN ”状态,SP03打在“STEP ”状态,SP04打在“RUN ”状态。然后按下图所示步骤进行。 上面方括号中的控制电平变化按照从上到下的顺序来进行,其中T4的正脉冲是通过按动一次控制台单元的触动开关START 来产生的。 4、验证带进位运算及进位锁存功能 进行带进位算术运算:前面的操作已经向DR1、DR2置数,然后关闭数据输入三态门(SW_G=1)并使LDDR2=0,打开ALU 输出三态门(ALU_G=0),使ALU 单元的输出结果进入总线,当S3 S2 S1 S0 M CN 的状态为100101时,数据总线指示灯显示的数据为DR1加DR2加当前进位标志的到的结果。这个结果是否产生进位,则要使AR=0,然后按动触动开关START ,若进位标

计算机组成原理实验报告

实验1 通用寄存器实验 一、实验目的 1.熟悉通用寄存器的数据通路。 2.了解通用寄存器的构成和运用。 二、实验要求 掌握通用寄存器R3~R0的读写操作。 三、实验原理 实验中所用的通用寄存器数据通路如下图所示。由四片8位字长的74LS574组成R1 R0(CX)、R3 R2(DX)通用寄存器组。图中X2 X1 X0定义输出选通使能,SI、XP控制位为源选通控制。RWR为寄存器数据写入使能,DI、OP为目的寄存器写选通。DRCK信号为寄存器组打入脉冲,上升沿有效。准双向I/O输入输出端口用于置数操作,经2片74LS245三态门与数据总线相连。 图2-3-3 通用寄存器数据通路

四、实验内容 1.实验连线 2.寄存器的读写操作 ①目的通路 当RWR=0时,由DI、OP编码产生目的寄存器地址,详见下表。 通用寄存器“手动/搭接”目的编码 ②通用寄存器的写入 通过“I/O输入输出单元”向R0、R1寄存器分别置数11h、22h,操作步骤如下: 通过“I/O输入输出单元”向R2、R3寄存器分别置数33h、44h,操作步骤如下: ③源通路 当X2~X0=001时,由SI、XP编码产生源寄存器,详见下表。 通用寄存器“手动/搭接”源编码

④通用寄存器的读出 五、实验心得 通过这个实验让我清晰的了解了通用寄存器的构成以及通用寄存器是如何运用的,并且熟悉了通用寄存器的数据通路,而且还深刻的掌握了通用寄存器R3~R0的读写操作。

实验2 运算器实验 一、实验目的 掌握八位运算器的数据传输格式,验证运算功能发生器及进位控制的组合功能。 二、实验要求 完成算术、逻辑、移位运算实验,熟悉ALU运算控制位的运用。 三、实验原理 实验中所用的运算器数据通路如图2-3-1所示。ALU运算器由CPLD描述。运算器的输出FUN经过74LS245三态门与数据总线相连,运算源寄存器A和暂存器B的数据输入端分别由2个74LS574锁存器锁存,锁存器的输入端与数据总线相连,准双向I/O输入输出端口用来给出参与运算的数据,经2片74LS245三态门与数据总线相连。 图2-3-1运算器数据通路 图中AWR、BWR在“搭接态”由实验连接对应的二进制开关控制,“0”有效,通过【单拍】按钮产生的脉冲把总线上的数据打入,实现运算源寄存器A、暂存器B的写入操作。 四、实验内容 1.运算器功能编码 表2.3.1 ALU运算器编码表 算术运算逻辑运算 K15 K13 K12 K11 功能K15 K13 K12 K11 功能 M S2 S1 S0 M S2 S1 S0 0 0 0 0 A+B+C 1 0 0 0 B 0 0 0 1 A—B—C 1 0 0 1 /A 0 0 1 0 RLC 1 0 1 0 A-1 0 0 1 1 RRC 1 0 1 1 A=0

微机实验报告(1)

《微机实验》报告 实验名称 KeilC的使用与汇编语言上机操作 指导教师刘小英 专业班级中法1201 姓名肖洋学号 U3 联系电话 一、任务要求 1.掌握KeilC环境的使用 1)字节拆分、合并:调试程序,观察相关寄存器和单元的内容。 2)数据块填充:调试程序,观察相关寄存器和单元的内容。 2. 编写两个十六位数的加法程序。 有两个十六位无符号数,分别存放在从20H和30H开始的数据区中,低八位先存,高八 位在后,和存于R3(高八位)和R4(低八位),进位位存于R2。 二、设计思路 1.字节拆分、合并程序:利用汇编语言中的 XCHD 和 SWAP 两个语句来实现将八位二进制 数拆分为两个四位二进制数并分别存储于不同的存储空间的功能,BCD 码与 30H 相或(加 上 30H)得到 ASCII 码。将两个 ASCII 码和 0FH 相与(高四位清零)得到 BCD 码,利 用 SWAP 语句将高位数放至高四位,将高位数和低位数相或可实现字节的合并。 2.数据块填充程序:将 R0 用作计数器,DPTR 用作片外数据指针,A 作为原始数据来源, 依顺序在片外的存储单元内容填充数据。利用循环语句来减少程序长度,并控制填充单 元个数为片外 100H 个。(通过 R0 的进位控制) 3.两个十六位数加法程序:把第一个十六位无符号数的地八位和高八位分别存于 20H 和 21H 中,把第二个十六位无符号数的地八位和高八位分别存于 30H 和 31H 中,对 20H 和 30H 中的两个低八位进行 ADD 加法操作,结果存于 R4 中;然后对 21H 和 31H 中的两 个高八位进行 ADDC 带进位的加法操作,结果存于 R3 中.然后将累加器 A 清零,并和#00H

寄存器简单理解

GPIOB_BASE是一个地址,这个地址是GPIOB一系列寄存器的首地址,后面地址依次是GPIOB 的寄存器,将这个地址转换为结构体形式,并将后面寄存器按顺序定义在结构体里面,这样访问寄存器就可以通过引用结构体的形式了而不必书写寄存器的地址来访问寄存器。 寄存器用途: 1.可将寄存器内的数据执行算术及逻辑运算; 2.存于寄存器内的地址可用来指向内存的某个位置,即寻址; 3.可以用来读写数据到电脑的周边设备。 AX 累加器,得名原因是最初常使用ADD AX,n这样的指令 CX 计数器,得名原因是最常使用CX的值作为重复操作的次数 BX 常用作地址寄存器,如MOV AX,[BX],把BX所指地址中的数取到AX中去 DX 通用寄存器 所讲的寄存器都是以x86为基础的,那么这种CPU内,寄存器可分为以下几种: 1.EAX、EBX、ECX、EDX等通用寄存器——从通用上来讲,它所存储的东西,只要它的容积所容许的话,什么都是可以存储的; 2.CS、SS、ES等段寄存器——它所存储的只能是地址,它的作用是从寻址上可以体现出来; 3.EIP,也称为指令指针 4.EFLAGS寄存器,俗称为标志寄存器——所存储的是与CPU的每一个执行的指令有关。是关系到CPU每一个指令的执行相关内容与特殊的关联,即CPU所执行的指令是否违规,它的指令是否有进位,它的指令是否有溢出,都是在标志寄存器中能表现与表达出来; 5.浮点单元,这里面之所以只浮点单元,是因为在它里面还有一些小的寄存分类,主要是数学上的浮点上的计算 6.MMX指令使用的8个64位寄存器 7.单指令、多数据操作(SIMD,single-instruction,multiple-data)使用的8个128位XMM寄存器

计算机组成原理实验报告 通用寄存器单元实验

西华大学数学与计算机学院实验报告 课程名称:计算机组成原理年级:2011级实验成绩: 指导教师:祝昌宇姓名:蒋俊 实验名称:通用寄存器单元实验学号:312011*********实验日期:2013-12-15 一、目的 1.了解通用寄存器的组成和硬件电路 2. 利用通用寄存器实现数据的置数、左移、右移等功能 二、实验原理 (1)寄存器实验构成 1、通用寄存器由2片GAL构成8位字长的寄存器单元。8芯插座RA-IN作为数据输入端,可通过端8芯扁平电缆,把数据数据输入端连接到数据总线上。 2、数据输出由一片74LS244(输出缓冲器)来控制。用8芯插座RA-OUT作为数据输出端,可通过端8芯扁平电缆,把数据数据输出端连接到数据总线上。 3、判零和进位电路由1片GAL、1片7474和一些常规芯片组成,用2个LED(ZD、CY)发光管分别显示其状态。 (2)通用寄存器单元的工作原理 通用寄存器的核心部件为2片GAL,它具有锁存、左移、右移、保存等功能。各个功能都由X1、X2信号和工作脉冲RACK来决定。当置ERA=0、X0=1、X1=1,RACK有上升沿时,把总线上的数据打入通用寄存器。可通过设置X1、X0来指定通用寄存器工作方式,通用寄存器的输出端Q0~Q7接入判零电路。LED(ZD)亮时,表示当前通用寄存器内数据为0。 输出缓冲器采用74LS244,当控制信号RA-O为低时,74LS244开通,把通用寄存器内容输出到总线;当控制信号RA-O为高时,74LS244的输出为高阻。 图1 通用寄存器原理图 三、使用环境 计算机组成原理实验箱 四、实验步骤

(一)数据输入通用寄存器 1.把RA-IN(8芯的盒型插座)与CPT-B板上二进制开关单元中的J1插座相连(对应二进制开关H16~H23),把RA-OUT(8芯的盒型插座)与数据总线上的DJ6相连。 2.把RACK连到脉冲单元的PLS1,把ERA、X0、X1、RA-0、M接入二进制拨动开关。请按下表接线。 信号定义接入开关位号 RACK PLS1孔 X0 H12孔 X1 H11孔 ERA H10孔 RA-O H9孔 M H4孔 3.二进制开关H16~H23作为数据输入,置42H(对应开关如下表) H23 H22 H21 H20 H19 H18 H17 H16 数据总线值 D7 D6 D5 D4 D3 D2 D1 D0 8位数据 0 1 0 0 0 0 1 0 42H 置各控制信号如下: H12 H11 H10 H9 H4 X0 X1 ERA RA-O M 1 1 0 0 1 4.按启停单元中的有效按钮,置实验机为运行状态。 5.按脉冲单元中的PLS1脉冲按键,在RACK上产生一个上升沿,把42H打入通用寄存器。 $ 此时数据总线上的指示灯IDB0~IDB7显示为42H。由于通用寄存器内容不为0,所以ZD (LED)灯灭。 (二)寄存器内容无进位位左移 1.把42H打入通用寄存器中,数据总线上显示42H。 2.实现左移功能,置各控制信号如下: H12 H11 H10 H9 H4 X0 X1 ERA RA-O M 1 1 0 0 1 3.按启停单元中的有效按钮,置实验机为运行状态。 4.按脉冲单元中的PLS1脉冲按键,在RACK上产生一个上升沿,使通用寄存器的值左移。 $ 此时数据总线上的LED指示灯IDB0~IDB7应该显示为84H。由于通用寄存器内容不为0,所以ZD (LED)灯灭。 5.按脉冲单元中的PLS1脉冲按键,使通用寄存器的值左移,此时数据总线上的LED指示灯IDB0~IDB7显示为09H。若一直按PLS1,在总线上看见数据循环左移的现象。

进位控制实验 计算机组成原理实验报告

《计算机组成与结构》课程实验报告 1计算机科学与信息工程系·2006年编制

·二、实验准备 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”,无进位。 数据开关置数 开输入三态门 数据存入寄存 ALUB=1 LDDR1= 0 LDDR2=1 KD0~KD7 数据开关置数 开输入三态门 数据存入寄存 ALUB=1 LDDR1=1 LDDR2=0 KD0~KD7 01010101

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,并且不产生进 位。 原来有进位,即CY=1,进位灯亮。此时不考虑CN的状态,再来进行带进位算术运算。同样步骤(2)参与运算的两个数为55H和AAH,当S3、S2、S1、S0、M状态为10010,此时输出数据总线显示灯上显示的数据为DRl加DR2再加当前进位标志CY,相加的结果同样为ALU=00,并且产生进位,此时按动手动脉冲开关,则进位标志灯亮,表示有进位。 3计算机科学与信息工程系·2006年编制

ARM寄存器详解

ARM 处理器有二十七个寄存器,其中一些是在一定条件下使用的,所以一次只能使用十六 个。 R0~R7:是通用寄存器并可以用做任何目的。 R8~R12:是通用寄存器,但是在切换到FIQ模式的时候,使用它们的影子(shadow)寄存器。 R13:被称为栈指针寄存器,常用来保存栈指针。 R14:链接寄存器,常用来保存函数返回地址 R15:是程序指针PC CPSR:(Current Program Status Register)当前程序状态寄存器,CPSR 寄存期保存当前程序运行的状态。 0 0 0 0 0 User26 模式 0 0 0 0 1 FIQ26 模式 0 0 0 1 0 IRQ26 模式 0 0 0 1 1 SVC26 模式 1 0 0 0 0 User 模式 1 0 0 0 1 FIQ 模式 1 0 0 1 0 IRQ 模式 1 0 0 1 1 SVC 模式 1 0 1 1 1 ABT 模式 1 1 0 1 1 UND 模式

ARM寻址方式 1.立即数寻址 ARM 指令的立即数寻址是一种特殊的寻址方式,操作数本身就在指令中给出,只要取出指令也就取到了操作数。这个操作数被称为立即数。ADD R0,R0,#1 ;R0←R0 + 1 ADD R0,R0,#0x3A ;R0←R0 + 0x3A 在以上 2 条指令中,第2个源操作数即为立即数,实际使用时以“#”符

号为前缀。 2.寄存器寻址 寄存器寻址就是利用寄存器中的数值作为操作数,这种寻址方式是各类微处理器经常采 用的一种方式,也是一种执行效率较高的寻址方式。如以下的指令。 ADD R0,R1,R2 ;R0←R1 + R2 该指令的执行效果是将寄存器R1和R2的内容相加,其结果存放在寄存器R0中。 3.寄存器间接寻址 寄存器间接寻址就是以寄存器中的值作为操作数的地址,而操作数本身存放在存储器 中。例如以下指令。 ADD R0,R1,[R2] ;R0←R1 + [R2] LDR R0,[R1] ;R0←[R1] 在第1 条指令中,以寄存器R2 的内容作为操作数的地址,然后与R1相加,其结果存入 寄存器R0中。 第2条指令将以 R1 的值为地址的存储器中的内容送到寄存器R0中。 4.基址变址寻址 基址变址的寻址方式就是将寄存器(该寄存器一般称作基址寄存器)的内容与指令中给 出的地址偏移量相加,从而得到一个操作数的有效地址。如下面的几条指令所示。 LDR R0,[R1,#0x0A] ;R0←[R1 + 0x0A] LDR R0,[R1,#0x0A]!;R0←[R1 + 0x0A]、R1←R1 + 0x0A 在第1条指令中,将寄存器R1 的内容加上0x3A 形成操作数的有效地址,将该地址处的 操作数送到寄存器R0中。 在第2条指令中,将寄存器R1的内容加上0x0A形成操作数的有效地址,从而取得操作数存入寄存器R0中,然后,R1的内容自增0x0A个字节。 5.多寄存器寻址 采用多寄存器寻址方式,一条指令可以完成多个寄存器值的传送。这种寻址方式可以用 一条指令完成传送最多 16 个通用寄存器的值。比如下面的指令。LDMIA R0,{R1,R2,R3,R4} ;R1←[R0] ;R2←[R0 + 4]

计算机组成原理实验报告

计算机组成原理课程设计 报告 指导教师: 班级: 姓名: 学号:

一、目的和要求 1.实验目的: 深入了解计算机各种指令的执行过程,以及控制器的组成,指令系统微程序设计的具体知识,进一步理解和掌握动态微程序设计的概念;完成微程序控制的特定功能计算机的指令系统设计和调试。 2、实验要求: 要进行这项大型实验,必须清楚地懂得: (1)TEC-2机的功能部件及其连接关系; (2)TEC-2机每个功能部件的功能与具体组成; (3)TEC-2机支持的指令格式; (4)TEC-2机的微指令格式,AM2910芯片的用法; (5)已实现的典型指令的执行实例,即相应的微指令与其执行次序的安排与衔接; (6)要实现的新指令的格式与功能。 二、实验环境 PC机模拟TEC-2机 三、具体内容 一、实验内容: 选定指令格式、操作码,设计如下指令: (1)把用绝对地址表示的内存单元ADDR1中的内容与内存单元ADDR2中的内容相减,结果存于内存单元ADDR3中。 指令格式:D4××,ADDR1,ADDR2, ADDR3 四字指令(控存入口100H) 功能: [ADDR3]=[ADDR1]-[ADDR2] (2)将一通用寄存器内容减去某内存单元内容,结果放在另一寄存器中。 指令格式:E0 DR SR,ADDR (SR,DR源、目的寄存器各4位)双字指令(控存入口130H) 功能: DR=SR+ [ADDR] (3)转移指令。判断两个通用寄存器内容是否相等,若相等则转移到指定绝对地址,否则顺序执行。 指令格式:E5 DR SR,ADDR 双字指令(控存入口140H) 功能: if DR==SR goto ADDR else 顺序执行。 设计:利用指令的CND字段,即IR10~8,令IR10~8=101,即CC=Z 则当DR==SR时Z=1,微程序不跳转,接着执行MEM PC(即ADDR PC) 而当DR!=SR时Z=0,微程序跳转至A4。 二、实验要求: (1)根据内容自行设计相关指令微程序;(务必利用非上机时间设计好微程序) (2)设计测试程序、实验数据并上机调试。 (3)设计报告内容:包括1、设计目的2、设计内容3、微程序设计(含指令格式、功能、设计及微程序) 4、实验数据(测试所设计指令的程序及结果)。(具体要求安最新规范为准) (4)课程设计实验报告必须打印成册,各班班长收齐大型实验报告于18周星期六下午(15:00)前,交张芳老师办公室。 四、实验程序与分析: (一).把用绝对地址表示的内存单元ADDR1中的内容与内存单元ADDR2中的内容相减,结果存于内存单元ADDR3中。 指令格式:D4××,ADDR1,ADDR2, ADDR3 四字指令(控存入口100H)

进位控制实验实验报告

广东技术师范学院实验报告 学院:专业:班级:成绩: 姓名:学号:组别:组员: 实验地点:实验日期:指导教师签名: 实验 2.2.2项目名称:进位控制实验 1.实验目的 (1)了解带进位控制的运算器的组成结构。 (2)验证带进位控制的运算器的功能。 2.实验设备 TDN-CM+或TDN-CM++教学实验系统一台。 3.实验原理 图2.2-3所示为进位锁存及其显示电路。运算器最高位进位输出C(n+4)连接到一个锁存器(用74LS74实现)的输入端D,锁存器控制端的控制信号AR必须置为低电平,当T4脉冲到来时,进位结果就被锁存到进位锁存器中了,发光二极管这时显示为“灭”。同时也将本次的进位输出结果带进了下次的运算中,作为下次运算的进位输入。

图2.2-3 带进位运算器通路图 4.实验步骤 (1)按图2.2-4连接实验电路并检查无误。 (2)打开电源开关。 (3)用输入开关向暂存器DR1和DR2置数,方法同前。 (4)关闭数据输入三态门(SW-B=1),打开ALU输出三态门(ALU-B=0),并使LDDR1=0、LDDR2=0,关闭寄存器输入控制门。 (5)对进位标志清零。实验系统上“SWITCH UNIT”单元中的CLR开关为标志CY、ZI 的清零开关,它为零状态时是清零状态,所以将此开关做1→0→1操作,即可使标志位清零。注意:进位标志指示灯CY亮时表示进位标志为“0”,无进位;标志指示灯CY灭时表示进位为“1”,有进位。 (6)验证带进位运算及进位锁存功能。使Cn=1,AR=0,进行带进位算术运算。 例如,做加法运算,使ALU-B=0,S3 S2 S1 S0 M的状态为1、0、0、1、0,此时数据总线上显示的数据为DR1加DR2加当前进位标志的和,但这时的进位状态位还没有输入进位锁存器中,它是要靠T4节拍来输入的。这个结果是否有进位产生,则要按动微动开关KK2,若进位标志灯亮,则无进位,反之则有进位。因为做加法运算时数据总线一直显示的数据为DR1+DR2+CY,所以当有进位输入到进位锁存器时,总线显示的数据将为加上当前进位锁 存器中锁存的进位的结果。

实验二 通用寄存器实验

实验二通用寄存器实验 一、实验目的 1.熟悉通用寄存器的数据通路。 2.了解通用寄存器的构成和运用。 二、实验要求 掌握通用寄存器R3~R0的读写操作。 三、实验原理 实验中所用的通用寄存器数据通路如下图所示。由四片8位字长的74LS574组成R1 R0(CX)、R3 R2(DX)通用寄存器组。图中X2 X1 X0定义输出选通使能,SI、XP控制位为源选通控制。RWR为寄存器数据写入使能,DI、OP为目的寄存器写选通。DRCK信号为寄存器组打入脉冲,上升沿有效。准双向I/O输入输出端口用于置数操作,经2片74LS245三态门与数据总线相连。 图2-3-3 通用寄存器数据通路

四、实验内容 1. 实验连线 K23~K0置“1”,灭M23~M0控位显示灯。然后按下表要求“搭接”部件控制电路。 连线 信号孔 接入孔 作用 有效电平 1 DRCK CLOCK 单元手动实验状态的时钟来源 上升沿打入 2 X2 K10(M10) 源部件译码输入端X2 三八译码 八中选一 低电平有效 3 X1 K9(M9) 源部件译码输入端X1 4 X0 K8(M8) 源部件译码输入端X0 5 XP K7(M7) 源部件奇偶标志:0=偶寻址,1=奇寻址 6 SI K20(M20) 源寄存器地址:0=CX ,1=DX 7 RWR K18(M18) 通用寄存器写使能 低电平有效 8 DI K17(M17) 目标寄存器地址:0=CX ,1=DX 9 OP K16(M16) 目标部件奇偶标志:0=偶寻址,1=奇寻址 2. 寄存器的读写操作 ① 目的通路 当RWR=0时,由DI 、OP 编码产生目的寄存器地址,详见下表。 通用寄存器“手动/搭接”目的编码 目标使能 通用寄存器目的编址 功能说明 RW(K18) DI(K17) OP(K16) T 0 0 0 ↑ R0写 0 0 1 ↑ R1写 0 1 0 ↑ R2写 0 1 1 ↑ R3写 ② 通用寄存器的写入 通过“I/O 输入输出单元”向R0、R1寄存器分别置数27h 、37h ,操作步骤如下: 通过“I/O 输入输出单元”向R2、R3寄存器分别置数47h 、57h ,操作步骤如下: ③ 源通路 当X2~X0=001时,由SI 、XP 编码产生源寄存器,详见下表。 通用寄存器“手动/搭接”源编码 置数 I/O=XX01h 数据来源 I/O 单元 寄存器 R0=01h K10~K7=1000 按【单拍】按钮 置数 I/O=XX11h 寄存器 R1=11h 按【单拍】按钮 K18~K16=000 K18~K16=001 置数 I/O=XX21h 数据来源 I/O 单元 寄存器 R2=21h K10~K7=1000 按【单拍】按钮 置数 I/O=XX31h 寄存器 R3=31h 按【单拍】按钮 K18~K16=010 K18~K16=011

进位控制实验计算机组成原理实验报告

《计算机组成与结构》课程实验报告 实验名称进位控制实验实验序号2实验日期2013.3.29 姓名院系计算机班级学号 专业计算机科学与技术指导教师成绩 一、实验目的及要求 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)ALUBUS 连 EXJ3 2)ALU01 连 BUS1 3)SJ2 连 UJ2 4)跳线器 J23 上 T4 连 SD 5)LDDR1 ,LDDR2 , ALUB,SWB 四个跳线器拨在左边 6)AR,299B 跳线器拨在左边,同时开关AR 拨在“ 0”电平,开关 299B 拨在“ 1”电平 7)J25 跳线器拨在右边 二、实验准备 1.仔细查线无误后,接通电源。 2.用二进制数码开关KDO ~ KD7 向 DRl 和 DR2 寄存器置数,方法:关闭ALU输出三态门ALUB=1 ,开启输入三态门SWB=0 ,输入脉冲T4 按手动脉冲发生按钮产生。如果选择参与操作 的两个数据分别为55H、 AAH ,将这两个数存入DR1 和 DR2 的具体操作步骤如下:

arm通用寄存器及其别名

AMR寄存器的别名+ APCS 默认情况下,arm处理器中的通用寄存器被称为:r0、r1...r14等,在APCS中为arm通用寄存器定义了别名。 在某些情况下(比如多人协作编辑汇编代码,或需要修改其它人所写的汇编代码时),使用APCS所定义的别名有助于提高代码的可读性和兼容性。 arm通用寄存器及其别名对照表:

The following register names are predeclared: r0-r15 and R0-R15 a1-a4 (argument, result, or scratch registers, synonyms for r0 to r3) v1-v8 (variable registers, r4 to r11) sb and SB (static base, r9) ip and IP (intra-procedure-call scratch register, r12) sp and SP (stack pointer, r13) lr and LR (link register, r14) pc and PC (program counter, r15). arm中r12的用途 原文作者在维护1个以前的程序,该程序包括应用、库文件以及linux device driver。该程序原来使用arm-linux-gcc 3.4.3编译,现在改用arm-linux-gcc 4.1.1进行编译时发现程序无法运行。 经原文作者测试,发现当使用shared library形式编译程序后无法运行,而使用static linking形式编译程序后可正常运行。

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

福建农林大学计算机与信息学院信息工程类实验报告系:计算机科学与技术专业:计算机科学与技术年级: 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.操作方法与实验步骤

寄存器与7种寻址方式

一、寄存器 总共有14个16位寄存器,8个8位寄存器 通用寄存器: 数据寄存器: AH(8位) AL(8位) AX(16位) (AX和AL又称累加器) BH(8位) BL(8位) BX(16位) (BX又称基址寄存器,唯一作为存储器指针使用寄存器) CH(8位) CL(8位) CX(16位) (CX用于字符串操作,控制循环的次数,CL 用于移位) DH(8位) DL(8位) DX(16位) (DX一般用来做32位的乘除法时存放被除数或者保留余数) 指针寄存器: SP 堆栈指针(存放栈顶地址) BP 基址指针(存放堆栈基址偏移) 变址寄存器:主要用于存放某个存储单元地址的偏移,或某组存储单元开始地址的偏移, 即作为存储器(短)指针使用。作为通用寄存器,它们可以保存16位算术逻辑运算中的操 作数和运算结果,有时运算结果就是需要的存储单元地址的偏移. SI 源地址(源变址寄存器) DI 目的地址(目的变址寄存器) 控制寄存器: IP 指令指针 FLAG 标志寄存器 ①进位标志CF,记录运算时最高有效位产生的进位值。

②符号标志SF,记录运算结果的符号。结果为负时置1,否则置0。 ③零标志ZF,运算结果为0时ZF位置1,否则置0。 ④溢出标志OF,在运算过程中,如操作数超出了机器可表示数的范围称为溢出。溢出时OF位置1,否则置0。 ⑤辅助进位标志AF,记录运算时第3位(半个字节)产生的进位值。 ⑥奇偶标志PF,用来为机器中传送信息时可能产生的代码出错情况提供检验条件。当结果操作数中1的个数为偶数时置1,否则置0。 段寄存器 CS 代码段IP DS 数据段 SS 堆栈段SP BP ES 附加段 二、七种寻址方式: 1、立即寻址方式: 操作数就包含在指令中。作为指令的一部分,跟在操作码后存放在代码段。 这种操作数成为立即数。立即数可以是8位的,也可以是16位的。 例如: 指令: MOV AX,1234H 则: AX = 1234H 2、寄存器寻址方式: 操作数在CPU内部的寄存器中,指令指定寄存器号。 对于16位操作数,寄存器可以是:AX、BX、CX、DX、SI、DI、SP和BP等。对于8位操作数,寄存器可以是AL 、AH、BL、BH、CL、CH、DL、DH。 这种寻址方式由于操作数就在寄存器中,不需要访问存储器来取得操作数 因而可以取得较高的运算数度。

计算机组成原理 实验4

实验四模型机设计 1 实验目的 (1) 掌握一个简单CPU的组成原理。 (2) 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。 (3) 为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。 2 实验设备 PC机一台,TD-CMA实验系统一套。 3 实验原理 本实验要实现一个简单的CPU,并且在此CPU的基础上,继续构建一个简单的模型计算机。CPU由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如图4-1所示。这个CPU在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU必须和主存挂接后,才有实际的意义,所以还需要在该CPU的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。 图4-1 基本CPU构成原理图 除了程序计数器(PC),其余部件在前面的实验中都已用到,在此不再讨论。系统的程序计数器(PC)和地址寄存器(AR)集成在一片CPLD芯片中。CLR连接至CON单元的总清端CLR,按下CLR按钮,将使PC清零,LDPC和T3相与后作为计数器的计数时钟,当LOAD为低时,计数时钟到来后将CPU内总线上的数据打入PC。

T3 CLR 图4-2 程序计数器(PC)原理图 本模型机和前面微程序控制器实验相比,新增加一条跳转指令JMP,共有五条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、JMP(无条件转移),HLT(停机),其指令格式如下(高4位为操作码): 助记符机器指令码说明 IN0010 0000IN R0 ADD0000 0000R0 + R0 R0 OUT0011 0000R0 OUT JMP addr1110 0000 ********addr PC HLT0101 0000停机 其中JMP为双字节指令,其余均为单字节指令,********为addr对应的二进制地址码。微程序控制器实验的指令是通过手动给出的,现在要求CPU自动从存储器读取指令并执行。根据以上要求,设计数据通路图,如图4-3所示。 本实验在前一个实验的基础上增加了三个部件,一是PC(程序计数器),另一个是AR(地址寄存器),还有就是MEM(主存)。因而在微指令中应增加相应的控制位,其微指令格式如表4-1所示。

计算机组成原理 进位控制实验

淮海工学院计算机工程学院实验报告书 课程名:《计算机组成原理》 题目:实验二进位控制实验 班级: 学号: 姓名:

1、目的与要求 1)验证带进位控制的算术运算功能发生器的功能。 2)按给定的数据完成几种指定的算术运算。 2、实验设备 ZYE1601B计算机组成原理教学实验箱一台,排线若干。 3、实验步骤与源程序 l) 按图1连接实验线路,仔细查检查无误后,接通电源。。 图1 进位控制实验接线图 2) 用二进制数码开关向DR1存入11000001,向DR2存入01000011。具体操作步骤如下: 检验DR1和DR2中存的数是否正确,具体操作为:关闭数据输入三态门(SW_G=1),打开ALU输出三态门(ALU_G=0)。当设置S3、S2、S1、S0、M的状态为11111时,总线指示灯显示DR1中的数,而设置成10101时总线指示灯显示DR2中的数。 3) 进位标志清零。具体操作方法如下: 实验板中“SWITCH”单元中的CLR开关为标志位CY、ZI的清零开关,它为0时(开关向上为1,向下为0)是清零状态,所以将此开关做l→0→1操作,即可使标志位清零(清零后指示灯亮)。

4) 验证带进位运算及进位锁存功能。 使Cn=1,Ar=0来进行带进位算术运算:首先向DR1、DR2置数,然后使ALU_G=0,当S3、S2、S1、S0、M的状态为10010时,数据总线上显示的数据为DR1加DR2加当前进位标志得到的结果。这个结果是否产生进位,则要按动微动开关PULSE,若进位标志灯CY亮,表示无进位;若进位标志灯CY灭,表示无进位。 4、结果分析与实验体会 有了前一次实验的经验,这次实验接线一会就接好了。这次的实验主要关于判断有无进位,在实验过程中,最低位都一直是1,就不考虑最低位,按照实验说明一步步操作,最后得出CY 等于0(不亮),即表示无进位。实验做的很满意。

ARM处理器共有37个寄存器其中包括.

ARM处理器共有37个寄存器。其中包括: **31个通用寄存器,包括程序计数器(PC)在内。这些寄存器都是32位寄存器。 **6个状态寄存器。这些寄存器都是32位寄存器。 ARM处理器共有7种不同的处理器模式,每一种模式中都有一组相应的寄存器组。在任何时刻,可见的寄存器包括15个通用寄存器(R0-R14),一个或两个状态寄存器及程序计数器(PC)。在所有的寄存器中,有些是各模式公用一个物理寄存器,有一些寄存器各模式拥有自己独立的物理寄存器。 **************************************************** 通用寄存器 ***************************************************8 通用寄存器分为以下三类:备份寄存器、未备份寄存器、程序计数器PC 未备份寄存器 未备份寄存器包括R0-R7。对于每一个未备份寄存器来说,所有处理器模式下都是使用同一个物理寄存器。未备份寄存器没有被系统用于特别的用途,任何可采用通用寄存器的场合都可以使用未备份寄存器。 备份寄存器 对于R8-R12备份寄存器来说,每个寄存器对应两个不同的物理寄存器。系统为将备份寄存器用于任何的特殊用途,但是当中断处理非常简单,仅仅使用R8-R14寄存器时,FIQ处理程序可以不必执行保存和恢复中断现场的指令,从而可以使中断处理非常迅速。 对于R13,R14备份寄存器来说,每个寄存器对应六个不同的物理寄存器,其中的一个是系统模式和用户模式共用的;另外的五个对应于其他的五种处理器模式。采用下面的记号来区分各个物理寄存器: R13_ 其中MODE可以是下面几种模式之一:usr,svc,abt,und,irq,fiq 程序计数器PC 可以作为一般的通用寄存器使用,但有一些指令在使用R15时有一些限制。由于ARM采用了流水线处理器机制,当正确读取了PC的值时,该值为当前指令地址值加上8个字节。也就是说,对于ARM指令集来说,PC指向当前指令的下两条指令的地址。由于ARM指令是字对齐的,PC值的第0位和第一位总为0。

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