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

一、实验目的

1.掌握算术逻辑运算加、减、乘、与的工作原理。

2.熟悉简单运算器的数据传送通路。

3.验证实验台运算器的8位加、减、与、直通功能。

4.验证实验台的4位乘4位功能。

5.按给定数据,完成几种指定的算术和逻辑运算。

二、实验电路

图1.1 运算器数据通路实验电路图

三、实验接线

本实验共接线12根:

ALU_BUS接K1

S2接K2

S1接K3

S0接K4

LDDR1接K5

LDDR2接K6

M1接+5V

M2接+5V

SW_BUS接K0

RS_BUS#接+5V

LRW接地

IAR_BUS#接+5V

四、实验过程

  1. 置开关DB = 0,DZ = 0,DP = 1,使实验系统处于单拍状态。
  2. 合上实验台电源。按复位按钮CLR#,使实验系统处于初始状态。
  3. 分别往两个操作数寄存器(DR1和DR2)中存数:
    K0(SW_BUS#)=0,K5(LDDR1)=1,K6(LDDR1)=0,置开关SW7—SW0为01010101B,按下QD,此时已将数01010101B存入DR1中。
    K0(SW_BUS#)=0,K5(LDDR1)=0,K6(LDDR1)=1,置开关SW7—SW0为10101010B,按下QD,此时已将数10101010B存入DR2中。
  4. 接下来控制K2,K3,K4来选择运算器运算的类型:
    K1(ALU_BUS)=1,K2(S2)=0,K3(S1)=0,K4(S0)=0,也就是DR1加上DR2,观察D0-D7与C灯亮灯情况,从而读出计算结果与是否借位或者进位。
    K1(ALU_BUS)=1,K2(S2)=0,K3(S1)=1,K4(S0)=1,也就是DR2减去DR1,观察D0-D7与C灯亮灯情况,从而读出计算结果与是否借位或者进位。
  5. 按复位按钮CLR#,清除DR1与DR2中的数据,使实验系统处于初始状态。,再次重复以上基本步骤,完成其他实验数据的验证。

五、实验数据

表1.2 DR1,DR2设置值检查

ALU_BUS

SW_BUS#

寄存器内容

S2 S1 S0

DBUS

1

1

DR1(01010101)、DR2(10101010)

000

0000 0000

1

1

DR1(01010101)、DR2(10101010)

011

0101 0101

第一组数

S2

S1

S0

DBUS

C

DR1=0110 0011

DR2=1011 0100

0

0

0

0010  0000

0

0

1

1011  0100

0

1

0

0001  0111

1

0

1

1

0101  0001

0

1

0

0

0000  1100

第二组数

S2

S1

S0

DBUS

C

DR1=1011 0100

DR2=0110 0011

0

0

0

0010  0000

0

0

1

0110  0011

0

1

0

0001  0111

1

0

1

1

1010  1111

1

1

0

0

0000  1100

第三组数

S2

S1

S0

DBUS

C

DR1=01100011B

DR2=01100011B

0

0

0

0110  0011

0

0

1

0110  0011

0

1

0

1100  1100

0

0

1

1

0000  0000

0

1

0

0

0000  1001

第四组数

S2

S1

S0

DBUS

C

DR1=01001100B

DR2=10110011B

0

0

0

0000  0000

0

0

1

1011  0011

0

1

0

1111  1111

0

0

1

1

0110  0111

0

1

0

0

0010  0100

第五组数

S2

S1

S0

DBUS

C

DR1=11111111B

DR2=11111111B

0

0

0

1111  1111

0

0

1

1111  1111

0

1

0

1111  1110

1

0

1

1

0000  0000

1

1

0

0

1110  0001

六、思考题

M1、M2控制信号的作用是什么?改变M1、M2的高低电平,重复第2步,观察出现什么问题?

M1=1时,DR1选择D1-A1作为数据输入端;M1=0时,DR1选择D0-A0作为数据输入端。

在DR1中:当M1=0且LDDR1=1时,在T3的下降沿,DR1接收来自寄存器堆B端口的数据;当M1=1且LDDR1=1时,在T3的下降沿,DR1接收来自数据总线DBUS的数据

在DR2中:当M2=0且LDDR2=1时,在T3的下降沿,DR2接收来自寄存器堆A端口的数据;当M2=1且LDDR2=1时,在T3的下降沿,DR2接收来自数据总线DBUS的数据。

七、实验总结

通过本次实验首先了解了TEC-4这个实验系统,他是由控制台、数据通路、控制器、用户自选器件试验区、时序电路、电源部分六部分组成,初步的了解了这个实验箱。本次实验了解到了简单运算器的数据线路是如何连接的,与数据是如何传输的,进一步认识到了算术逻辑运算加、减、乘、与的工作原理,这对我计算机组成原理的学习有了很大的帮助。同时,通过本实验的连线环节,与操作环节也锻炼了我们的动手操作能力。

通过具体观察本实验箱的线路设计,有许多的控制功能的线路,比如SW_BUS#、ALU_BUS等控制线路,当我们在编程序是也可以运用到一些控制的变量,这样可以提高我们程序的稳定性与多样性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/413188.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

约瑟夫环和一元多项式

约瑟夫环 一、问题描述 假设有 n 个人围成一圈,从第一个人开始报数,报数到 m 的人将被淘汰出圈,然后从下一个人开始继续从 1 报数,如此重复,直到最后只剩下一个人。求最后剩下的这个人的编号。 二、问题分析 可…

DDR3详解

1.DDR3简介 DDR3 SDRAM,全称第三代双倍速率同步动态随机存取存储器,简称 DDR3,双倍速率(double-data-rate),是指时钟的上升沿和下降沿都发生数据传输;同步,是指DDR3数据的读取写入是…

使用 nuxi build-module 命令构建 Nuxt 模块

title: 使用 nuxi build-module 命令构建 Nuxt 模块 date: 2024/8/31 updated: 2024/8/31 author: cmdragon excerpt: nuxi build-module 命令是构建 Nuxt 模块的核心工具,它将你的模块打包成适合生产环境的格式。通过使用 --stub 选项,你可以在开发过程中加快模块构建速度…

linux Vim的安装和基本使用

Vim 什么是 Vim Vim是一个高度可定制的文本编辑器,源自Unix系统的vi编辑器。它被广泛用于类Unix系统中,包括Linux、Mac OS和Windows平台。Vim特别受到程序员的青睐,因为它提供了丰富的编程功能,如代码补全、编译及错误跳转等。这…

Kubernetes 上安装 Jenkins

安装 Helm curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash添加 Jenkins Helm 仓库 首先添加 Jenkins Helm 仓库 helm repo add jenkins https://charts.jenkins.io helm repo update安装 Jenkins 使用 Helm 安装 Jenkins 的最新版本&…

产品经理角度分析:朋友圈点赞与评论仅共同好友可见

你有没有在刷朋友圈时,看到某位朋友发了条状态,下面一堆点赞和评论,然后他自己来个“统一回复下,感谢大家”? 这种现象就像是在朋友圈里开了个小型新闻发布会,大家在台下疯狂举手,结果发言人最后…

ip地址变化是什么意思?手机地址ip一直变化怎么办

IP地址作为互联网设备的唯一标识,‌其稳定性对于网络连接至关重要。‌然而,‌手机IP地址频繁变动可能带来一系列问题。‌本文将深入探讨IP地址变化的含义、‌IP地址频繁变动的原因,‌以及提供手机地址IP一直变化的有效应对策略。‌ 一、IP地址…

使用pgdump、pgrestore迁移数据表到docker部署的postgis

将本地数据同步到内网服务器,使用的postgis,表含空间字段 备份 本地使用pgadmin 4进行备份,pgrestore的命令参数找起来麻烦,这个可以界面操作,比较方便 说明 说明的截图来自pgadmin,点击这个打开 …

GitLab私有代码仓库搭建与使用

文章目录 一、安装GitLab1、下载安装2、修改配置3、启动gitlab4、登录 二、使用1、ssh-key 参考资料 一、安装GitLab 1、下载安装 gitlab-ce的rpm包清华源地址: https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/?CN&OD 本次使用gitlab-ce-17.1.1-c…

论文精读:JACS —— Sb2Si2Te6与Sc2Si2Te6热电性能

摘要节选: 本文以层状Sb2Si2Te6和Sc2Si2Te6为模型体系,采用密度泛函理论结合半经典玻尔兹曼输运理论,全面研究和比较了它们的热电性能。 由于较低的散射率和更明显的带色散,Sb2Si2Te6与Sc2Si2Te6相比具有优越的导电性。 在将导带轨道特性从…

【微信小程序】SpringBoot集成微信小程序(多小程序集成)

SpringBoot集成微信小程序 前言一、前置工作1、获取appId和appSecret核心参数 二、SpringBoot集成微信小程序1、引入pom依赖2、yml配置3、java代码文件3.1、Properties 配置类3.2 Configuration 服务类 4、使用示例4.1、获取登录后的session信息:openId4.2、获取当前…

若依框架 MyBatis 改为 MyBatis-Plus 的实现步骤

本文只做了简单的实现,具体的细节需根据自己的需求进一步实现。如果实现中遇到问题欢迎留言讨论。 引入 MyBatis-Plus 引入相关依赖(pom.xml) 推荐先直接在顶级 pom.xml 中直接依赖,等调试通过之后,在去按需依赖&…

理解进程与线程

1.1理解分时技术 随着计算器处理能力的逐步提高,计算机处理多道程序成为了可能。 所谓分时技术,就是把处理器的运行时间分成很短的时间片,按时间片轮流把处理器给各程序使用。这样在时间线上表现为线性,但是在体感上感觉是一起执…

Java:时区的用法

文章目录 ZoneId常见用法 ZonedDateTime常见方法 代码 黑马学习笔记 ZoneId 常见用法 ZonedDateTime 常见方法 代码 package NewTime;import java.time.Clock; import java.time.ZoneId; import java.time.ZonedDateTime;/*** Author: ggdpzhk* CreateTime: 2024-08-31*/ pu…

后台框架-统一数据格式2

在上一篇中,当在Controller类中需要返回统一格式的数据时,需要实例化一个R,有时候觉得还是不够简洁,那有没有一种方法Controller中直接返回对象,但是返回的对象统一保存到如下格式的data中? ResponseBody…

YASKAWA机器人维修操作命令攻略-移动命令运用案例

移动命令 1. MOVJ 命令运用案例: MOVJ VJ50.00 PL2 NWAIT UNTIL IN(1)ON 含义:在这个点以关节坐标,按 50.00%的再现速度,定位精度为 2,同时执行下一条非移动 指令,判断输入信号 1 为 on 后,执行…

【Python机器学习】NLP词频背后的含义——距离和相似度

我们可以使用相似度评分(和距离),根据两篇文档的表示向量间的相似度(或距离)来判断文档间有多相似。 我们可以使用相似度评分(和举例)来查看LSA主题模型与高维TF-IDF模型之间的一致性。在去掉了…

Windows中pip换源

step1:检查是否安装 输入如下,出现版本号,就是安装好了 pip -V或pip --version pip3 -V pip3 --version step2:找到(创建)配置文件 对于 Windows 用户,配置文件在【%APPDATA%\pip\pip.ini】文…

C语言典型例题56

《C程序设计教程&#xff08;第四版&#xff09;——谭浩强》 例题4.8 将范围为100~200的不能被3整除的数输出。 代码&#xff1a; //《C程序设计教程&#xff08;第四版&#xff09;——谭浩强》 //例题4.8 将范围为100~200的不能被3整除的数输出。//#include <stdio.h>…

【B端产品知识总结】系统消息提醒及消息推送设计思想

目录 前言 一、简述消息通知 1、第一步盘点消息推送渠道 2、第二步消息推送项盘点 3、第三步确定消息通知内容和操作反馈 二、系统消息项通知梳理 1、明确消息推送渠道 2、盘点产品业务消息项 3、撰写通知内容与操作反馈 三、如何设计消息中心 ⒈、设计消息中心入口&…