当前位置: 首页 > news >正文

【机组】算术逻辑单元带进位运算实验的解密与实战

🌈个人主页:Sarapines Programmer
🔥 系列专栏:《机组 | 模块单元实验》
⏰诗赋清音:云生高巅梦远游, 星光点缀碧海愁。 山川深邃情难晤, 剑气凌云志自修。

目录

🌺一、 实验目的

🌼二、 实验内容

🌻三、 实验详情

实验1:算术逻辑单元带进位位的加法运算实验

实验2:带进位移位实验

🍀四、 实验步骤

实验1  算术逻辑单元带进位的位加法运算

实验2  带进位移位实验

🌿五、 实验结果

实验1  算术逻辑单元带进位的位加法运算

实验2  带进位移位实验

🌷六、 实验体会

📝总结


🌺一、 实验目的

  1. 熟悉判零线路;
  2. 掌握进位寄存器单元的工作原理运用;
  3. 掌握带进位控制的算术逻辑运算器的组成和硬件电路。

🌼二、 实验内容

  1. 完成算术逻辑单元带进位的位加法运算;
  2. 完成带进位移位实验。

🌻三、 实验详情

实验1:算术逻辑单元带进位位的加法运算实验

● 把ALU-IN(8芯的盒型插座)与右板上的二进制开关单元中J01插座相连(对应二进制开关H16~H23),把ALU-OUT(8芯的盒型插座)与数据总线上的DJ2相连。

● 把D1CK、D2CK、CCK用连线连到脉冲单元的PLS1上,把EDR1、EDR2、ALU-O、S0、S1、S2、S3、CN、M接入二进制拨动开关(请按下表接线)。

控制信号

接入开关位号

D1CK

PLS1 

D2CK

PLS1 

CCK

PLS1 

EDR1

H8   

EDR2

H7   

ALU-O

H6   

CN

H5    

M

H4    

S3

H3    

S2

H2   

S1

H1   

S0

H0   

接线图示:

● 按启停单元中停止按钮,实验平台停机并且把进位寄存器CY清零(CY灯灭)。在本实验中使用算术逻辑单元作为进位发生器,按运行键,实验即进入运行状态。

● 二进制开关H16~H23作为数据输入,置65H(对应开关如下表)。

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

0

1

1

0

0

1

0

1

65H

置各控制信号如下:

H8

H7

H6

H5

H4

H3

H2

H1

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

0

1

0

1

0

1

0

0

1

● 按脉冲单元中的PLS1脉冲按键,在D1CK上产生一个上升沿,把65H打入DR2数据锁存器,通过逻辑笔或示波器来测量确定DR2寄存器(74LS374)的输出端,检验数据是否进入DR2中。置S3、S2、S1、S0、M为11101时,总线指示灯显示DRl中的数,而置成10010时总线指示灯显示DR2中的数。

● 二进制开关H16~H23作为数据输入,置A7H(对应开关如下表)。

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

1

0

1

0

0

1

1

1

A7H

置各控制信号如下:

H8

H7

H6

H5

H4

H3

H2

H1

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

1

0

1

1

0

1

0

0

1

● 按脉冲单元中的PLS1脉冲按键,在D2CK上产生一个上升沿,把A7H打入DR2数据锁存器。

● 再置各控制信号如下:

H8

H7

H6

H5

H4

H3

H2

H1

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

1

1

0

1

0

1

0

0

1

● 按脉冲单元中的PLS1脉冲按键,在CCK上产生一个上升沿,把74LS181的进位打入进位寄存器中,在有进位的情况下,CY指示灯亮,并且ALU-O为0,把计算结果输出到数据总线。

● 经过74LS181的计算将产生进位,即Cn+4输出0,当把计算结果输出到总线时,数据总线指示灯IDB0~IDB7将显示结果0CH。


实验2:带进位移位实验

● 按启停单元中停止按钮,实验平台停机时把进位寄存器CY清零(CY灯灭)。在本实验中使用通用寄存器作为进位发生器,按运行键,实验即进入运行状态。

把RA-IN(8芯的盒型插座)与右板上的二进制开关单元中J01相连(对应二进制开关H16~H23),把RA-OUT(8芯的盒型插座)与数据总线上的DJ6相连。

● 把CCK、RACK连到脉冲单元的PLS1,把ERA、X0、X1、RA-O、M接入二进制拨动开关。(请按下表接线)。

信号定义

接入开关位号

CCK

PLS1 

RACK

PLS1 

X0

H12  

X1

H11  

ERA

H10  

RA-O

H9   

M

H4   

接线图示:

● 二进制开关H16~H23作为数据输入,置81H(对应开关如下表)。

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

1

0

0

0

0

0

0

1

81H

置各控制信号如下:

H12

H11

H10

H9

H4

X0

X1

ERA

RA-O

M

1

1

0

0

0

● 按脉冲单元中的PLS1脉冲按键,在RACK上产生一个上升沿,把81H打入通用寄存器内。

● 此时数据总线上的指示灯IDB0~IDB7 应该显示为81H。由于通用寄存器内容不为0,所以ZD(LED)灯灭。

置各控制信号如下:

H12

H11

H10

H9

H4

X0

X1

ERA

RA-O

M

0

1

0

0

0

● 按脉冲单元中的PLS1脉冲按键,在RACK上产生一个上升沿,使通用寄存器中的值左移。因进位寄存器CY的初始值为0,在RACK脉冲作用下将CY打入通用寄存器的最低位Q0。同时在CCK脉冲作用下把通用寄存器的最高位Q7(为1)打入进位寄存器CY,使CY显示灯亮,这样就实现了带进位的左移功能。

● 同样置各控制信号如下,并且按脉冲单元中的PLS1脉冲按键,可实现带进位的右移功能。

H12

H11

H10

H9

H4

X0

X1

ERA

RA-O

M

1

0

0

0

0

把M作为是否带进位的选择,M=0 带进位移位,M=1不带进位移位。控制型号X0、X1、M的功能状态如下:

功能状态表

X1

X0

M

功能

移位操作

0

1

1

循环右移

Q7->Q6->Q5->Q4->Q3->Q2->Q1->Q0

0

1

0

带进位循环右移

 CY->Q7->Q6->Q5->Q4->Q3->Q2->Q1->Q0

1

0

1

循环左移

   Q7<-Q6<-Q5<-Q4<-Q3<-Q2<-Q1<-Q0

1

0

0

带进位循环左移

CY<-Q7<-Q6<-Q5<-Q4<-Q3<-Q2<-Q1<-Q0


🍀四、 实验步骤

实验1  算术逻辑单元带进位的位加法运算

(1)step1:把ALU-IN、ALU-OUT分别与二进制开关单元JO1和总线DJ2相连,并把D1CK、D2CK、CCK使用连接线接到脉冲单元的PLS1上,具体接线如下表。

控制信号

接入开关位号

D1CK

PLS1

D2CK

PLS1

CCK

PLS1

EDR1

H8

EDR2

H7

ALU-O

H6

CN

H5

M

H4

S3

H3

S2

H2

S1

H1

S0

H0

(2)step2:按停止按钮,机箱停机将CY清零,再按运行键。二进制开关H16至H23作为数据输入,置65H(对应开关如下表)。

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

0

1

1

0

0

1

0

1

65H

置各控制信号如下表.

H8

H7

H6

H5

H4

H3

H2

H1

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

0

1

0

1

0

1

0

0

1

(3)step3:按下机箱的PLS1脉冲按键,在D1CK产生上升沿,把65H打入DR1锁存器中。

二进制开关H16至H23作为数据输入,置A7H(对应开关如下表)。

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

1

0

1

0

0

1

1

1

A7H

置各控制信号如下表.

H8

H7

H6

H5

H4

H3

H2

H1

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

1

0

1

1

0

1

0

0

1

按下机箱的PLS1脉冲按键,在D1CK产生上升沿,把A7H成功打入DR2锁存器中。

置各控制信号如下表.

H8

H7

H6

H5

H4

H3

H2

H1

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

1

1

0

1

0

1

0

0

1

按下机箱的PLS1脉冲按键,在D1CK产生上升沿,总线指示灯IDB0至IDB7显示结果0CH。


实验2  带进位移位实验

(1)step1:将CY清零,重新按运行键使机箱处于运行状态。RA-IN、RA-OUT分别与二进制开关单元JO1和总线DJ6相连,并把RACK、CCK使用连接线接到脉冲单元的PLS1上,具体接线如下表。

控制信号

接入开关位号

CCK

PLS1

RACK

PLS1

X0

H12

X1

H11

ERA

H10

RA-O

H9

M

H4

(2)step2:二进制开关H16至H23作为数据输入,置81H(如下表)。

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

1

0

0

0

0

0

0

1

81H

置各控制信号如下表.

H12

H11

H10

H9

H4

X0

X1

ERA

RA-O

M

0

1

0

0

0

(3)step3:按下机箱的PLS1脉冲按键,在D1CK产生上升沿,实现带进位的左移功能。

然后置各控制信号如下表.

H12

H11

H10

H9

H4

X0

X1

ERA

RA-O

M

1

0

0

0

0

按下机箱的PLS1脉冲按键,在D1CK产生上升沿,实现带进位的右移功能。


🌿五、 实验结果

实验1  算术逻辑单元带进位的位加法运算

实验1平台

实验1结果

实验2  带进位移位实验

实验2第一阶段平台

实验2第一阶段平台

实验2第二阶段平台

实验2第二阶段结果


🌷六、 实验体会

通过对实验操作以及结果分析,我熟悉了判零线路;掌握了在控制部分通过启停按键和运行按键以清零CY寄存器,并控制实验是否产生进位、左移或右移;熟悉了带进位控制的算术逻辑运算器的组成、硬件电路以及利用进位寄存器来实现带进位的左移、右移。


📝总结

计算机组成原理领域就像一片广袤而未被完全探索的技术海洋,邀请你勇敢踏足数字世界和计算机组成原理的神秘领域。这是一场结合创造力和技术挑战的学习之旅,从基础概念到硬件实现,逐步揭示更深层次的计算机结构、指令集架构和系统设计的奥秘。渴望挑战计算机组成原理的学习路径和掌握计算机硬件的技能?不妨点击下方链接,一同探讨更多数字技术的奇迹吧。我们推出了引领趋势的💻 计算机组成原理专栏:​​​​​​​《机组 | 模块单元实验》,旨在深度探索计算机系统技术的实际应用和创新。🌐💡

相关文章:

【机组】算术逻辑单元带进位运算实验的解密与实战

​&#x1f308;个人主页&#xff1a;Sarapines Programmer&#x1f525; 系列专栏&#xff1a;《机组 | 模块单元实验》⏰诗赋清音&#xff1a;云生高巅梦远游&#xff0c; 星光点缀碧海愁。 山川深邃情难晤&#xff0c; 剑气凌云志自修。 ​ 目录 &#x1f33a;一、 实验目…...

axios query传数组参数的格式

在 Axios 中&#xff0c;当你需要传递数组参数时&#xff0c;可以使用以下几种方式进行格式化&#xff1a; 使用 paramsSerializer 将数组转换为逗号分隔的字符串&#xff1a; import axios from axios;import qs from qs;const arrayParams [param1, param2, param3];axios.…...

2018年认证杯SPSSPRO杯数学建模B题(第一阶段)动态模糊图像全过程文档及程序

2018年认证杯SPSSPRO杯数学建模 B题 动态模糊图像 原题再现&#xff1a; 人眼由于存在视觉暂留效应&#xff0c;所以看运动的物体时&#xff0c;看到的每一帧画面都包含了一段时间内 (大约 1/24 秒) 的运动过程&#xff0c;所以这帧画面事实上是模糊的。对电影的截图来说&…...

qt学习:Qfile文件类

目录 功能 读接口 参数说明 返回值 例子 写接口 参数说明 QString转为QByteArray 其他接口 功能 该类是一个用户读写文件io口&#xff0c;它继承于QFileDevice 读接口 qint64 read(char *data,qint64 maxSize)// 一次读取maxSize大小的数据存放在以data…...

从 GPT1 - GPT4 拆解

从 GPT1 - GPT4 拆解 从 GPT1 - GPT4GPT1&#xff1a;更适用于文本生成领域GPT2&#xff1a;扩展数据集、模型参数&#xff0c;实现一脑多用&#xff08;多个任务&#xff09;GPT3&#xff1a;元学习 大力出奇迹InstructGPT&#xff1a;指示和提示学习 人工反馈强化学习 RLHF…...

Python项目——计算器(PySide6+Pyinstaller)

1、介绍 使用python编写一个计算器&#xff0c;可以实现基本的运算。【注】该项目最终还有一些细小的bug没有完善&#xff0c;例如符号可以一直输入。 2、实现 使用pyCharm创建一个新的项目。 2.1、设计UI 使用Qt designer设计一个UI界面&#xff0c;保存ui文件&#xff0…...

ChatGPT 和文心一言哪个更好用?

根据提供的搜索结果&#xff0c;ChatGPT和文心一言各有特点和优势&#xff0c;选择哪一个更好用取决于具体的应用场景和个人需求。以下是两者的对比&#xff1a; ChatGPT&#xff1a; 适用场景&#xff1a;适合需要生成大量知识性文本的任务&#xff0c;如问答系统、知识图谱…...

数据备份与恢复

备份概述 一、备份方式 按照数据库服务状态分为&#xff1a; 冷备份&#xff1a;在备份时暂停数据库运行和服务&#xff0c;将整个数据库复制到备份设备中 热备份&#xff1a;在备份时不停止数据库的运行和服务 按照备份的数据分为&#xff1a; 物理备份&#xff1a;备份…...

数据库原理及数据库的优化

1、数据库的原理 数据库&#xff1a;持久化存储&#xff0c;存到硬盘 性能&#xff1a;oracl>db2>sqlserver>mysql oracl&#xff0c;db2&#xff0c;sqlserver性能差不多&#xff0c;几十万次每秒&#xff0c;myslq性能差很多&#xff0c;几千次每秒&#xff0c;都…...

C语言第三弹---数据类型和变量

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】 数据类型和变量 1、数据类型介绍1.1、整型1.2、浮点型1.3、字符型1.4、布尔类型1.5、各种数据类型的长度1.5.1、sizeof操作符1.5.2、数据类型的长度1.5.3、sizeo…...

[通知]rust跟我学:文件时间属性获得方法文章已上线

大家好&#xff0c;我是带剑书生&#xff0c;开源库get_local_info的作者。目前我的付费专栏已经上线第七篇文章&#xff0c;用于介绍在实现get_local_info过程中&#xff0c;遇到该问题所使用的解决方法&#xff0c;喜欢的朋友可以去订阅了&#xff0c;19.9元&#xff0c;非常…...

基于嵌入式的智能智能通风系统

基于嵌入式的智能智能通风系统 功能说明 通过微信小程序控制窗户的开关状体以及倒计时开关和定时开关&#xff0c;小程序上实时显示当前温度湿度和光照强度。 功能展示 02智能通风系统 Mqtt服务器 http://www.yoyolife.fun/iot&#xff1a;Mqtt服务器&#xff0c;我是在这里注…...

如何编写一个好的测试用例?才能防止背黑锅

如何编写一个好的测试用例&#xff1f;才能防止背黑锅 什么是测试用例&#xff1f;一个好的测试用例包含什么&#xff1f;测试用例的编写思路总结 什么是测试用例&#xff1f; 在这之前&#xff0c;思考一个问题&#xff0c;下面这个简单的QQ登录页面&#xff0c;一共又多少条…...

笨蛋学设计模式行为型模式-观察者模式【14】

行为型模式-观察者模式 8.1观察者模式:arrow_up::arrow_up::arrow_up:8.1.1概念8.1.2场景8.1.3优势 / 劣势8.1.4观察者模式可分为观察者的基本结构&#xff1a; 8.1.5观察者模式8.1.6实战8.1.6.1题目描述8.1.6.2输入描述8.1.6.3输出描述8.1.6.4代码 8.1.7总结 8.1观察者模式⬆️…...

上海智慧岛大数据云计算中心项目正式封顶!

上海智慧岛大数据云计算中心封顶仪式现场 1月15日&#xff0c;云端股份在上海智慧岛大数据云计算中心举行封顶仪式。云之端网络&#xff08;江苏&#xff09;股份有限公司&#xff08;以下称“云端股份”&#xff09;总经理贡伟力先生&#xff0c;常务副总张靖先生等公司成员&…...

靶场实战(19):OSCP备考之VulnHub HA WORDY

交流技术可以关注公众号 OneMoreThink 或后台添加微信&#xff0c;欢迎提出宝贵建议。 0、总结 0.1、攻击思路 资产发现 主机发现服务发现漏洞发现&#xff08;获取权限&#xff09; 80端口/HTTP服务 组件漏洞URL漏洞&#xff1a;RFI、FileUpload提升权限 www-data用户 sudosui…...

大模型学习与实践笔记(九)

一、LMDeply方式部署 使用 LMDeploy 以本地对话方式部署 InternLM-Chat-7B 模型&#xff0c;生成 300 字的小故事 2.api 方式部署 运行 结果&#xff1a; 显存占用&#xff1a; 二、报错与解决方案 在使用命令&#xff0c;对lmdeploy 进行源码安装是时&#xff0c;报错 1.源…...

fpga目前就业形势咋样?

FPGA今年各厂给本科生的薪资大概是15-30K&#xff0c;研究生是20-40K&#xff0c;平均薪资在25k左右&#xff0c; 当然具体薪资还要看去哪个公司&#xff0c;哪个城市&#xff0c;以及个人的学校、专业、能力水平、及包括面试时的表现&#xff0c;运气等&#xff0c;这些都会导…...

Linux7 安装 Oracle 19C RAC 详细图文教程

实战篇&#xff1a;Linux7 安装 Oracle 19C RAC 详细图文教程 本文是按照&#xff1a;https://www.modb.pro/db/154424的思路进行编写 一、安装前规划 安装RAC前&#xff0c;当然要先做好规划。具体包含以下几方面&#xff1a; 节点主机版本主机名实例名Grid/Oracle版本Publi…...

【SpringBoot】SpringBoot 项目初始化方法

github 搜索 springboot 模板 github 搜索 springboot 模板&#xff0c;拉取现成代码。 SpringBoot 官方的模板生成器 SpringBoot 官方的模板生成器&#xff08;https://start.spring.io/&#xff09; 在 IDEA 开发工具中生成 这里我修改成阿里的镜像主要是要使用 Java8。 …...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python&#xff5c;GIF 解析与构建&#xff08;5&#xff09;&#xff1a;手搓截屏和帧率控制 一、引言 二、技术实现&#xff1a;手搓截屏模块 2.1 核心原理 2.2 代码解析&#xff1a;ScreenshotData类 2.2.1 截图函数&#xff1a;capture_screen 三、技术实现&…...

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…...

应用升级/灾备测试时使用guarantee 闪回点迅速回退

1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间&#xff0c; 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点&#xff0c;不需要开启数据库闪回。…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用&#xff1a;实现组件通用属性的渐变过渡效果&#xff0c;提升用户体验。支持属性&#xff1a;width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项&#xff1a; 布局类属性&#xff08;如宽高&#xff09;变化时&#…...

如何在看板中体现优先级变化

在看板中有效体现优先级变化的关键措施包括&#xff1a;采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中&#xff0c;设置任务排序规则尤其重要&#xff0c;因为它让看板视觉上直观地体…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成

厌倦手动写WordPress文章&#xff1f;AI自动生成&#xff0c;效率提升10倍&#xff01; 支持多语言、自动配图、定时发布&#xff0c;让内容创作更轻松&#xff01; AI内容生成 → 不想每天写文章&#xff1f;AI一键生成高质量内容&#xff01;多语言支持 → 跨境电商必备&am…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...

在Ubuntu24上采用Wine打开SourceInsight

1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...

虚拟电厂发展三大趋势:市场化、技术主导、车网互联

市场化&#xff1a;从政策驱动到多元盈利 政策全面赋能 2025年4月&#xff0c;国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》&#xff0c;首次明确虚拟电厂为“独立市场主体”&#xff0c;提出硬性目标&#xff1a;2027年全国调节能力≥2000万千瓦&#xff0…...

FFmpeg:Windows系统小白安装及其使用

一、安装 1.访问官网 Download FFmpeg 2.点击版本目录 3.选择版本点击安装 注意这里选择的是【release buids】&#xff0c;注意左上角标题 例如我安装在目录 F:\FFmpeg 4.解压 5.添加环境变量 把你解压后的bin目录&#xff08;即exe所在文件夹&#xff09;加入系统变量…...