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

简介: 【机组】算术逻辑运算单元实验的解密与实战



🌺一、 实验目的

  1. 掌握简单运算器的数据传输方式;
  2. 掌握74LS181的功能与应用;
  3. 了解算术逻辑运算单元的运行过程。

🌼二、 实验内容

  1. 完成不带进位的位算术;
  2. 完成逻辑运算实验。

🌻三、 实验详情

实验1:不带进位位逻辑或运算实验

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

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

控制信号

接入开关位号

D1CK

PLS1  孔

D2CK

PLS1  孔

EDR1

H8    孔

EDR2

H7    孔

ALU-O

H6    孔

CN

H5    孔

M

H4    孔

S3

H3    孔

S2

H2    孔

S1

H1    孔

S0

H0    孔

接线图示:

● 按启停单元中的运行按钮,使实验平台处于运行状态。

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

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

0

0

1

1

0

0

1

1

33H

置各控制信号如下:

H8

H7

H6

H5

H4

H3

H2

H1

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

0

1

0

1

1

1

1

1

0

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

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

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

0

1

0

1

0

1

0

1

55H

置各控制信号如下:

H8

H7

H6

H5

H4

H3

H2

H1

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

1

0

0

1

1

1

1

1

0

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

● 经过74LS181的计算,把运算结果(F=A或B)输出到数据总线上,数据总线上的LED显示灯IDB0~IDB7应该显示为77H。


实验2:不带进位位加法运算实验

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

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

0

0

1

1

0

0

1

1

33H

置各控制信号如下:

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上产生一个上升沿,把33H打入DR1数据锁存器,通过逻辑笔或示波器来测量确定DR1寄存器(74LS374)的输出端,检验数据是否进入DR1中。置S3、S2、S1、S0、M为11101时,总线指示灯显示DRl中的数,而置成10010时总线指示灯显示DR2中的数。

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

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

0

1

0

1

0

1

0

1

55H

置各控制信号如下:

H8

H7

H6

H5

H4

H3

H2

H1

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

1

0

0

1

0

1

0

0

1

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

● 经过74LS181的计算,把运算结果(F=A加B)输出到数据总线上,数据总线上的LED显示灯IDB0~IDB7应该显示为88H。

实验思考

验证74LS181的算术运算和逻辑运算,在保持DR1=65H、DR2=A7H时,改变运算器的功能设置,观察运算器的输出,填写以下表格来进行分析和比较。

DR1

DR2

S3

S2

S1

S0

M=0 (算术运算)

M=1

逻辑运算

CN=1

CN=0

65

A7

0

0

0

0

F=

F=

F=

65

A7

0

0

0

1

F=

F=

F=

65

A7

0

0

1

0

F=

F=

F=

65

A7

0

0

1

1

F=

F=

F=

65

A7

0

1

0

0

F=

F=

F=

65

A7

0

1

0

1

F=

F=

F=

65

A7

0

1

1

0

F=

F=

F=

65

A7

0

1

1

1

F=

F=

F=

65

A7

1

0

0

0

F=

F=

F=

65

A7

1

0

0

1

F=

F=

F=

65

A7

1

0

1

0

F=

F=

F=

65

A7

1

0

1

1

F=

F=

F=

65

A7

1

1

0

0

F=

F=

F=

65

A7

1

1

0

1

F=

F=

F=

65

A7

1

1

1

0

F=

F=

F=

65

A7

1

1

1

1

F=

F=

F=

附74LS181的逻辑

方式

M=1逻辑运算

M=0算术运算

S3 S2 S1 S0

逻辑运算

CN=1(无进位)

CN=0(有进位)

0000

F=/A

F=A

F=A加1

0001

F=/(A+B)

F=A+B

F=(A+B)加1

0010

F=/A B

F=A+/B

F=(A+/B)加1

0011

F=0

F=减1(2的补)

F=0

0100

F=/(AB)

F=A加A/B

F=A加A/B加1

0101

F=/B

F=(A+B)加A/B

F=(A+B)加A/B加1

0110

F=A⊕B

F=A减B减1

F=A减B

0111

F=A /B

F=A/B减1

F=A/B

1000

F=/A+B

F=A 加AB

F=A 加AB加 1

1001

F= /(A⊕B )

F=A加B

F=A加B加1

1010

F=B

F=(A+/B)加AB

F=(A+/B)加AB加1

1011

F=AB

F=AB减1

F=AB

1100

F=1

F=A加 A

F=A加 A 加1

1101

F=A+/B

F=(A+B) 加 A

F=(A+B) 加 A 加1

1110

F=A+B

F=(A+/B)加A

F=(A+/B)加A加1

1111

F=A

F=A减1

F=A


🍀四、 实验步骤

实验1  不带进位位逻辑或运算实验

(1)step1:把ALU-IN、ALU-OUT分别与二进制开关单元JO1和总线DJ2相连,并把D1CK和D2CK用连接线到脉冲单元的PLS1上,把  EDR1、EDR2、ALU-O、S0、S1、S2、S3、CN、M接入二进制开关,如表1。

表1

控制信号

接入开关位号

D1CK

                     PLS1                                                                    孔

D2CK

                     PLS1                                                                    孔

EDR1

                     H8                                                                         孔

EDR2

                     H7                                                                         孔

ALU-O

                     H6                                                                         孔

CN

                     H5                                                                         孔

M

                     H4                                                                         孔

S3

                     H3                                                                         孔

S2

                     H2                                                                         孔

S1

                     H1                                                                         孔

S0

                     H0                                                                         孔

(2)step2:按启动单元中的运行按钮,让实验机箱处于运作状态。

(3)step3:二进制开关H16至H23作为数据输入,置33H(对应开关如下表2)。

表2

H8

H7

H6

H5

H4

H3

H2

H1

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

0

0

1

1

0

0

1

1

33H

置各控制信号如下表3.

表3

H23

H23

H23

H23

H23

H23

H23

H23

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

0

1

0

1

1

1

1

1

0

(4)step4:按下PLS1脉冲按键,在D1CK产生上升沿,把33H打入DR1数据锁存器.

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

表4

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

0

1

0

1

0

1

0

1

55H

置各控制信号如下表3.

表5

H8

H7

H6

H5

H4

H3

H2

H1

H0

EDR1

EDR2

ALU-O

CN

M

S3

S2

S1

S0

1

0

0

1

1

1

1

1

0

(6)step6:按下PLS1脉冲按键,在D1CK产生上升沿,把55H打入DR2数据锁存器.经过74LS181计算,运算结果在数据总线上的LED显示灯应该为77H。


实验2  不带进位位加法运算实验

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

表6

H23

H22

H21

H20

H19

H18

H17

H16

数据总线值

D7

D6

D5

D4

D3

D2

D1

D0

8位数据

0

0

1

1

0

0

1

1

33H

置各控制信号如下表7.

表7

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

(2)step2:按下PLS1脉冲按键,在D2CK产生上升沿,把55H打入DR2数据锁存器. 经过74LS181计算,运算结果在数据总线上的LED显示灯应该为88H。


🌿五、 实验结果


🌷六、 实验体会

  1. 通过在74LS181进行逻辑或运算,掌握了逻辑门电路实现与二进制输入关联的过程,加深了74LS181逻辑或运算的理解。
  2. 通过在不带进位位逻辑或运算实验的基础上完成了不带进位位加法运算实验,在显示数值变化可通过数值的二进制符对应元素相加进而求解显示器数值变化的原因。

📝总结

计算机组成原理领域就像一片广袤而未被完全探索的技术海洋,邀请你勇敢踏足数字世界和计算机组成原理的神秘领域。这是一场结合创造力和技术挑战的学习之旅,从基础概念到硬件实现,逐步揭示更深层次的计算机结构、指令集架构和系统设计的奥秘。

目录
相关文章
|
编解码 测试技术
【自己动手画CPU】单总线CPU设计(二)
【自己动手画CPU】单总线CPU设计(二)
689 1
|
Kubernetes Cloud Native 容器
完全免费的K8S学习平台:在线集群环境助力你的云原生之路!
完全免费的K8S学习平台:在线集群环境助力你的云原生之路!
4135 1
|
缓存 网络协议 安全
NTLM 利用探索
NTLM 利用探索
1281 0
|
人工智能 Shell
Claude Code思考深度降67%,老金找到个深度数据说明案例,还有怎么破
这两天Claude Code社区炸了。 有人翻了6852次会话记录,发现Claude Code的思考深度从1月到2月底,降了67%。 老金我第一反应是:不会吧,我自己天天用,没感觉啊。 结果看完数据,沉默了。 今天老金我帮你把这件事从头到尾拆一遍。 数据、原因、官方回应、临时修复方案,全给你。 ## 先看数据,数据不会说谎 这件事的源头是GitHub上Claude Code的一个issue,编
|
8月前
|
人工智能 安全 API
阿里云百炼API Key在哪获取?这篇保姆级教程一步到位!
本文为2026最新阿里云百炼API Key获取与使用指南,详解主/子账号操作步骤、地域Base URL配置、代码调用及环境变量设置,并说明权限归属、时效性(永久有效+60秒临时Key)及常见问题,助您安全高效接入大模型。
|
10月前
|
人工智能 JSON 移动开发
AI 试衣服从“娱乐玩具”到真正可商用的能力进化
玩美移动AI Clothes技术专攻商业级虚拟试衣,突破通用大模型局限,实现服装结构精准还原、多体型真实适配、只换衣不换人。支持电商、APP快速集成,推动AI试衣从娱乐走向高转化零售应用。
1298 0
|
存储 JSON 数据库
Elasticsearch 分布式架构解析
【9月更文第2天】Elasticsearch 是一个分布式的搜索和分析引擎,以其高可扩展性和实时性著称。它基于 Lucene 开发,但提供了更高级别的抽象,使得开发者能够轻松地构建复杂的搜索应用。本文将深入探讨 Elasticsearch 的分布式存储和检索机制,解释其背后的原理及其优势。
1025 6
|
存储 前端开发 Java
Android MVVM架构模式下如何避免内存泄漏
Android采用MVVM架构开发项目,如何避免内存泄漏风险?怎样避免内存泄漏?
679 1
|
机器学习/深度学习 存储 缓存
DeepSeek × 时间序列 :DeepSeek-TS,基于状态空间增强MLA与GRPO的时序预测新框架
DeepSeek-TS 是一种创新的多产品时间序列预测框架,结合了 DeepSeek 中高效的多头潜在注意力(MLA)和群组相对策略优化(GRPO)技术。该框架通过扩展 MLA 提出 MLA-Mamba,允许潜在特征通过非线性激活的状态空间模型动态演变,提供自适应记忆以适应趋势变化。同时,通过 GRPO 引入智能决策过程,持续改进预测,有效响应销售模式的突变。实验结果显示,DeepSeek-TS 在建模复杂的产品间关系和适应非线性动态方面表现出色,显著优于经典的 ARMA 模型和标准的基于 GRU 的网络。
1896 9
DeepSeek × 时间序列 :DeepSeek-TS,基于状态空间增强MLA与GRPO的时序预测新框架
|
存储 编解码
【头歌·计组·自己动手画CPU】一、计算机数据表示(理论版) 【计算机硬件系统设计】
【头歌·计组·自己动手画CPU】一、计算机数据表示(理论版) 【计算机硬件系统设计】
1334 2