计算机组成原理实验报告1 | 实验1.1 运算器实验(键盘方式)

本文整理自博主大学本科《计算机组成原理》课程自己完成的实验报告。

——

*实验环境为学校机房实验箱。

目录

一、实验目的

二、实验内容

三、实验步骤及实验结果

Ⅰ、单片机键盘操作方式实验

1、实验连线(键盘实验)

2、实验过程

四、实验结果的分析与总结


一、实验目的

1.掌握运算器的组成及工作原理;

2.了解4位函数发生器74LS181的组合功能,熟悉运算器执行算术操作和逻辑操作的具体实现过程;

3.验证带进位控制的74LS181的功能。


二、实验内容

验证74LS181运算器的逻辑运算功能和算术运算功能。


三、实验步骤及实验结果

Ⅰ、单片机键盘操作方式实验

注:在进行单片机键盘控制实验时,必须把开关K4置于“OFF”状态,否则系统处于自锁状态,无法进行实验。

1、实验连线(键盘实验)

实验连线如图1-1所示。

(连线时应按如下方法:对于横排座,应使排线插头上的箭头面向自己插在横排座上;对于竖排座,应使排线插头上的箭头面向左边插在竖排座上。注意:F4只用一个排线插头孔

2、实验过程

注意操作过程中,可按【取消】键来取消上一步操作,重新输入。

1、系统初始化拨动清零开关CLR,使其指示灯灭。再拨动CLR,使其指示灯亮。

2、选择实验1在监控滚动显示【CLASS SELECt】时按【实验选择】键,显示【ES--_ _ 】输入01或1,按【确认】键,监控显示为【ES01】,表示准备进入实验一程序。

3、设置S3 S2 S1 S0:再按【确认】键,监控显示【InSt--】,提示输入运算指令S3 S2 S1 S0,输入两位十六进制数(参考表1-1),选择执行哪种运算操作,按【确认】键。

说明

4、设置M监控显示【Lo=0】,此处Lo相当于表1-1中的M,默认为“0”,进行算术运算,也可以输入“1”,进行逻辑运算。按【确认】,显示【Cn=0】,默认为“0”,由表1-1可见,此时进行带进位运算,也可输入“1”,不带进位运算(注:如前面选择为逻辑运算,则Cn不起作用)。

5、设置Ar按【确认】,显示【Ar=1】,使用默认值“1”,关闭进位输出CY。也可输入“0”,打开进位输出CY,按【确认】。

6、设置数据:监控显示【DATA】,提示输入第一个数据A,输入十六进制数【1234H】,按【确认】,显示【DATA】,提示输入第二个数据B,输入十六进制数【5678H】,按【确认】键,监控显示【FINISH】,表示运算结束,可从数据总线显示灯观察运算结果,CY指示灯显示进位输出的结果。按【确认】后监控显示【ES01】,可执行下一运算操作。

7、按照1-2完成实验:在给定LT1=1234H、LT2=5678H的情况下,改变运算器的功能设置,观察运算器的输出,将其对应的十六进制填入表1-2中,并和理论值进行比较和验证:


四、实验结果的分析与总结

本次实验由我个人独立完成。我在本次实验中深入学习了计算机组成原理中运算器的组成和工作原理,同时掌握了74LS181运算器的组合功能,并成功通过键盘的方式验证了其逻辑运算和算术运算功能。

以下是我的总结:

  1. 本次实验是我第一次进行计算机组成原理的单片机实验,最开始我对电学箱的各项操作都非常不熟悉。但通过老师的讲解,我可以很快地熟悉实验的流程和大致原理,独立完成实验。
  2. 通过本次实验,我了解到了运算器的应用和作用,并且学会了如何使用74LS181运算器、通过键盘来实现逻辑和算术运算。我通过对键盘的操作和数据输入输出的观察,更深入地了解了74LS181运算器的逻辑和算术运算实现原理。
  3. 通过手动操作,我了解到4位函数发生器74LS181的各种组合功能,包括算术操作和逻辑操作,以及如何初始化,如何输入数据选择模式,熟悉了运算器执行算术操作和逻辑操作的具体实现过程,依次实现了要求的各个功能,验证了带进位控制的74LS181的功能。
  4. 实验中我也犯了一些错误,例如输错数据,看错实验步骤,输入输出结果不符合预期等。通过仔细检查排线、开关,核对实验步骤顺序和仔细阅读实验要求,我最终找到了问题出现的原因并加以更正。这提高了我的问题解决能力和实验技能。

在实验过程中,我还学习到了如何正确操作实验设备。刚开始我先接电,再插线,被老师提醒这是不对的,应当先接好线再插电,即使电学箱的电流很小,但也有安全隐患。此外,排线的插拔也必须小心,不能用力拔,否则可能会导致排线内部断路,实验出现问题。我必须牢记这些实验安全规则,以保障自己的安全和实验设备的正常运行。

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

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

相关文章

代码随想录-java-栈与队列总结

栈(Stack):是只允许在一端进行插入或删除的线性表。栈是一种线性表,限定这种线性表只能在某一端进行插入和删除操作。进行操作的这一端称为栈顶。 队列(Queue)是只允许在一端进行插入操作,而在另…

Python使用FastAPI提供图片缩略图生成接口

使用pillow的thumbnail生成缩略图时,会保持原图的宽高比;使用的opencv的resize则不会 具体代码如下: #!/usr/bin/env python import re import sys from enum import Enum from io import BytesIO from pathlib import Path from typing im…

汇编课设——秒表2

1. 设计要求 基于 51 开发板,利用键盘作为按键输入,将数码管作为显示输出,实现电子秒表。 功能要求: (1)计时精度达到百分之一秒; (2)能按键记录下5次时间并通过按键回看 (3)设置时间,实现倒计时,时间到,数码管闪烁 10 次,并激发蜂鸣器,可通过按键解除。 2. 设计思…

思科网络中如何进行动态NAT配置

一、什么是动态NAT?动态NAT与静态NAT的区别是什么? (1)动态NAT(Network Address Translation)是一种网络地址转换技术,它会动态地将内部私有网络中的局域网IP地址映射为公共IP地址,…

Hack The Box-Codify

目录 信息收集 rustscan nmap dirsearch WEB 提权 get user get root 信息收集 rustscan ┌──(root㉿ru)-[~/kali/hackthebox] └─# rustscan -b 2250 10.10.11.239 --range0-65535 --ulimit4500 -- -A -sC .----. .-. .-. .----..---. .----. .---. .--. .-. …

JVM 类的加载篇

我们都知道一个类从加载到卸载一共分为七个过程 加载 - 链接(验证 - 准备 - 解析) - 初始化 - 使用 - 卸载 下文我们将详细解析这些过程 谁需要加载? 在Java中数据类型分为基本数据类型和引用数据类型,基本数据类型由虚拟机预定义,引用数据类型则需要类的加载 1.加载/装载(loa…

Docker入门二(应用部署、迁移与备份)

文章目录 一、应用部署1.MySQL部署2.Redis部署3.Nginx部署 二、迁移与备份1.容器做成镜像2.把镜像被分成压缩包 一、应用部署 1.MySQL部署 在dokcer中部署mysql,以后不需要在宿主机上装mysql1.做端口映射docker run -id --namemysql5.7 -p 3306:3306 -e MYSQL_ROOT…

网工内推 | 国企、上市公司网工、运维,CCNA即可,补贴福利多

01 深圳新思 招聘岗位:网络工程师(中电集团) 职责描述: 1:负责办公室电脑的桌面运维,主要是windows维护与应用维护; 2:负责办公室网络设备配置,如防火墙,交换…

CMake 编译 raylib 程序

CMakeLists.txt 内容如下: cmake_minimum_required(VERSION 3.0) project(t001) # 搜索指定目录下源文件 file(GLOB SRC_LIST ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp) # 包含头文件路径 include_directories(F:/vclib/raylib-5.0_win64_mingw-w64/include) # 包含静态…

CountDownLatch介绍和使用

1. CountDownLatch是什么 CountDownLatch 是 Java.util.concurrent 包中的一个同步工具类,用于控制线程的执行顺序。它的主要作用是让一个或多个线程等待其他线程完成操作后再继续执行。 2. CountDownLatch 类常用方法 CountDownLatch(int count) 是 CountDownLa…

软件测试基础概念

一、需求 定义:满足用户期望或正式规定文档所需条件和技能,包含用户需求 用户需求:用户使用产品所必须完成的任务 该需求比较简略 软件需求:详细描述开发人员必须实现的软件功能 需求是标准,测试人员按照这个标准测…

全球首个 AI 超级工程师:拥有全栈技能,一个指令就能完成整个开发过程

全球首位AI软件工程师Devin是由初创公司Cognition推出的,它被认为是世界上第一个完全自主的AI软件工程师[2][15]。Devin具备强大的编程和软件开发能力,能够在多个方面协助或完全独立地完成软件开发任务[15]。它的核心能力包括自学新语言、开发迭代App、自…

C语言分析基础排序算法——归并排序

目录 归并排序 递归版本 非递归版本 非递归版本的问题 归并排序小优化 归并排序 归并排序,分为分治以及合并,分治部分可以使用递归或者非递归完成,归并排序的基本思路是:将已有序的子序列合并,得到完全有序的序列…

社区维修平台|基于SpringBoot+ Mysql+Java+JSP技术的社区维修平台设计与实现(可运行源码+数据库+设计文档+部署说明+视频演示)

推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 目录 前台功能效果图 住户后台功能 维修员前台功能 维修员后台功能 管理员功能登录 系统功能设计 数据库E…

C++面试题和笔试题(四)

一、intx[6][4],(*p)[4];px;则*(p2)指向哪里? A X[0][1]B X[0][2]C X[1][0]D X[2][0] 官方解释: D int x[6][4], (*p)[4]; p x; 在这里,x 是一个二维数组,它有6行和4列。p 是一个指向具有4个整数的数组的指针。 当你执行…

DevOps-SonarQube整合Jenkins

下载SonarQube Scanner 登录Jenkins服务器,下载SonarQube Scanner wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-5.0.1.3006-linux.zip安装unzip,需要通过它来解压zip压缩包 yum install -y unzip解压So…

基于Web的论文管理系统设计

目 录 目 录 III 摘 要 V 关键词 V Abstract VI Key Word VI 第一章 绪论 6 1.1系统设计背景 1 1.2系统设计目的与意义 1 1.3国内外现状 2 1.4本文结构 3 第二章 需求分析 3 2.1系统需求分析 4 2.2系统角色设计 4 第三章 系统开发技术 4 3.1 PHP语言简介和特点 5 3.2 Mysql数据…

【项目笔记】java微服务:黑马头条(day02)

文章目录 app端文章查看,静态化freemarker,分布式文件系统minIO1)文章列表加载1.1)需求分析1.2)表结构分析1.3)导入文章数据库1.3.1)导入数据库1.3.2)导入对应的实体类 1.4)实现思路1.5)接口定义1.6)功能实现1.6.1):导入heima-leadnews-article微服务&am…

数据库管理-第160期 Oracle Vector DB AI-11(20240312)

数据库管理160期 2024-03-12 数据库管理-第160期 Oracle Vector DB & AI-11(20240312)1 向量的函数操作to_vector()将vector转换为标准值vector_norm()vector_dimension_count()vector_dimension_format() 2 将向量转换为字符串或CLOBvector_seriali…

明明jar包存在却报错找不到包名?两招教你解决java: 程序包org.springframework.context.annotation不存在问题!

一、问题提出 IDEA项目有时因为依赖库的问题出现出错: java: 程序包org.springframework.context.annotation不存在,如下图。 二、解决办法 方案1: 重新导入项目 ① 将项目中 .idea .iml 全部删除,项目重新导入 ② 用idea重新…