计算机组成与体系结构第一次试验:运算器实验

这篇具有很好参考价值的文章主要介绍了计算机组成与体系结构第一次试验:运算器实验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

为了帮助同学们完成痛苦的实验课程设计,本作者将其作出的实验结果及代码贴至CSDN中,供同学们学习参考。如有不足或描述不完善之处,敬请各位指出,欢迎各位的斧正!

一、实验目的

  1. 掌握使用算术逻辑运算器 74LS181 进行算术运算、 逻辑运算的方法。
  2. 掌握基于“累加-移位”原理的串行乘法运算方法。

二、实验环境

操作系统:Win10
实验用软件:Proteus 8

三、实验内容

  1. 在输入单元(拨码开关) 通过三态门 74LS244 向运算器的总线 BUS 输入参与运算的数据, 并在输出单元(数码管) 显示总线 BUS 的内容;
  2. 把参与运算的数据AA打入缓存器 DRA 并送入ALU的A输入端,将55打入缓存器 DRB并送入ALU的B输入端;
  3. 参照表 1 所示的 74LS181 真值表,置 ALU 的控制信号组合(S3, S2, S1, S0, M,CN)进行算术运算和逻辑运算。再令 SW_BUS=1, ALU_OE=0, 观察并且记录运算器 ALU 的输出端 F 和标志位 CF、 SF、 ZF的值。
  4. 利用“累加-移位”原理,计算二进制数 10101011 和 11010101相乘的结果,并验证是否和手工计算结果一致。

四、实验步骤

一.在输入端(DIPSWC_8)向总线BUS[0…7]输入数据,并在输出端(7SEG-BCD-GRN)输出总线BUS[0…7]的内容
首先将ALU_BUS和ALU_EN拉倒高阻态,防止和SW_BUS上面的数据出现冲突。开始仿真后将SW_BUS拉到低组态,然后通过输入端输入10101010,即0xAA;
计算机组成与体系结构第一次试验:运算器实验
通过拨动DRA_CLK时钟信号将信号保存至寄存器中。
计算机组成与体系结构第一次试验:运算器实验
同理,输入01010101,即0x55,并拨动DRB_CLK时钟信号,将信号保存至寄存器中
计算机组成与体系结构第一次试验:运算器实验
计算机组成与体系结构第一次试验:运算器实验
输入结束后将SW_BUS拉高,ALU_CN拉低,ALU_BUS拉低。
计算机组成与体系结构第一次试验:运算器实验
将功能控制端S3-S0置位0001,M置零,刷新ALU_OE实现A+B,即0xFF,SF灯亮起
通过ALU_CN对结果进位实现A+B+1,刷新屏幕后得到0x00。
计算机组成与体系结构第一次试验:运算器实验
二.
1) 启动运算,首先判断寄存器 Q 的最低位 Qn:
若 Qn=1,说明需要累加,把部分积 A 与被乘数 B 相加,得到新的部分积;若 Qn=0,说
明不需要累加。
2)令加法进位 CF、寄存器 A(保存新的部分积)和寄存器 Q 联合右移一位。
3)计数器自减 1,然后启动下一次运算(返回到第 1)步)。
上述运算循环执行,直到计数器的值减到0,即总共执行了n次循环。此时,乘数Q已经完全右移出寄存器Q,保存在寄存器A和Q中的是2n位乘法结果|P|(绝对值)的高 n 位和低n位。乘积 Pf的符号位则单独处理,由被乘数和乘数的符号位A和B逻辑“异或”得到。
如图3所示,运算器ALU通路中的8位缓存器DRA和DRB就相当于图5中的寄存器A和Q:缓存器 DRA 的 SL=ALU_C,其最低位连接 DRB 的 SL 端,连成一个 16 位移位寄存器。 因为缓存器 DRA 和 DRB 都是由移位寄存器 74LS194 构成,若两个移位寄存器 74LS194 的控 制端信号 S0=0 且 S1=1,则当时钟信号 DRx_CLK 上升沿跳变时,74LS194 全部执行移位操作 Q0Q1Q2Q3=Q1Q2Q3SL。
此时,ALU_C 移入 DRA 最高位,DRA 所有位依次右移,最低位移入 DRB 的最高位,DRB 所有位亦依次右移,即“DRA→DRB”操作。该操作相当于图 5 中的“寄存器 A 和 Q 联合 右移一位”操作。
因为运算器 ALU 通路中只有两个缓存器 DRA 和 DRB,所以,缓存器 DRB 必须同时承 担图 5 中寄存器 B 和 Q 的作用;而且,在串行乘法的运算过程中,需要借助寄存器 REG_0 和 REG_1 作为临时寄存器,在不同运算切换之际用以保存缓存器 DRB 的数据。
在运算器 ALU 通路中,串行乘法的运算过程如下所述。
初始状态:被乘数|X|打入寄存器 REG_0,“0”打入寄存器 REG_1;
乘数|Y|打入缓存器 DRB,而缓存器 DRA 无需初始化(因为第 1)步就赋值“1”)。
1)ALU执行“F=1”,结果“0”打人 DRA;又执行“F=A+1”,结果“1”再打入 DRA。
2)ALU执行“F=A·B”(逻辑与),观察运算结果零标志位ZF(即判断最低位Qn是否为0):
3)若 ZF=0(即 Qn=0),则 REG_1 的值打入 DRA,跳转到第 5)步;若 ZF=1(Qn=1),则 ALU 执行“F=B”,把 DRB 保存的值打入 REG_1。
4)把 REG_0 的值(“被乘数”)打入 DRB,REG_1 的值打入 DRA,ALU 执行“F=A 加 B”
(算术和),运算结果打人 DRA,再把 REG_1 的值打回 DRB。
5)ALU 执行“DRA→DRB”移位(注意 DRA_CLK 和 DRB_CLK 操作的先后顺序)。
6)若乘数所有位都移出 DRB,则运算结束(16 位乘积的高 8 位在 DRA,低 8 位在 DRB);否则,ALU 执行“F=A”,把 DRA 保存的部分积打入 REC_1,返回第 1)步。
计算机组成与体系结构第一次试验:运算器实验
计算机组成与体系结构第一次试验:运算器实验
计算机组成与体系结构第一次试验:运算器实验
最终结果如下:
计算机组成与体系结构第一次试验:运算器实验

五、实验结果

须用表格列出74LS181中各控制信号(S3, S2, S1, S0, M,CN)为不同值时,ALU 的输出端 F 和标志位 CF、 SF、 ZF的值。
计算机组成与体系结构第一次试验:运算器实验

S3 S2 S1 S0 M=0 CN=1 M=0 CN=0 M=1
0000 AA 100 A6 100 55 000
0001 FF 100 00 011 00 010
0010 AA 100 A6 100 55 000
0011 FF 100 00 011 00 010
0100 54 001 55 001 FF 101
0101 A9 101 AA 101 AA 101
0110 54 001 55 001 FF 101
0111 A9 101 AA 101 AA 101
1000 AA 100 A6 100 55 000
1001 FF 100 00 011 00 010
1010 AA 100 A6 100 55 000
1011 FF 100 00 011 00 010
1100 54 001 55 001 FF 101
1101 A9 101 AA 101 AA 101
1110 54 001 55 001 FF 101
1111 A9 101 AA 101 AA 101

六、实验总结

  1. 运算器 74LS181 可以执行无符号数的加法和减法运算么?对于有符号数的算术运算, 运算器 74LS181 是补码运算器还是原码运算器?
    答:74LS181组成的运算器运算可以区分有符号数运算和无符号数运算;
    对于有符号数的算数运算,74LS181是补码运算器。
  2. 参与串行乘法运算的两个数据是无符号数还是有符号数?若有符号位,怎么处理?
    答:参与串行乘法运算的两个数据是无符号数;
    若有符号位,则需先对符号位进行运算,搭配两数绝对值的乘积,进而给出结果。

心得体会:
进行本次实验操作时,实验器件多,连线复杂,多次出现了漏连线、漏标线等情况,而且,哪怕连线完成、实验图做好后,依然不了解这个图的用途及原理。之后,本人通过查阅资料、同学讨论、观看学习视频等等方式,对本次实验有了大概的理解,同时,本次实验步骤复杂,稍不留意就容易前功尽弃,需要我们在做实验时谨慎再谨慎。文章来源地址https://www.toymoban.com/news/detail-443257.html

到了这里,关于计算机组成与体系结构第一次试验:运算器实验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 中级软件设计师备考---计算机组成与体系结构3

    计算题 概念题 计算可靠度 码距:是指两个码字之间的不同位数。例如,1010和1111之间的码距是2,因为它们在第二位和第三位上不同。在信息传输中,码距越大,就越容易检测和纠正错误。 在一个码组内为了检测e个误码,要求最小码距d应满足:d=e+1 在一个码组内为了纠正

    2023年04月15日
    浏览(33)
  • 系统架构设计师-第1章计算机组成与体系结构

    计算机系统是一个硬件和软件的综合体,可以把它看成按功能划分的多级层次结构。 系统软件支持应用软件的运行,为用户开发应用软件提供平台,用户可以使用它,但不能随意修改它。常用的系统软件有操作系统、语言处理程序、连接程序、诊断程序和数据库管理系统等。

    2024年02月03日
    浏览(47)
  • 计算机组成与体系结构第二次试验:存储器实验

    为了帮助同学们完成痛苦的实验课程设计,本作者将其作出的实验结果及代码贴至CSDN中,供同学们学习参考。如有不足或描述不完善之处,敬请各位指出,欢迎各位的斧正! 本实验的主要内容是了解 RAM(Random Access Memory,静态随机存储器)和ROM(Read Only Memory,只读存储器)

    2024年02月08日
    浏览(34)
  • 【计算机组成与体系结构Ⅰ】实验7 IP核的使用、D触发器

    一、实验目的 1:学会设计用IP核和原理图的方式设计电路,完成涉及1位数据的2选1多路选择器。 2:设计带异步置零和写使能端的D触发器。 二、实验环境 软件:Vivado 2015.4 操作系统:Windows 10 三、实验内容 2.2.1 多路选择器的设计 1:添加IP核文件   2:添加bd文件,在Block De

    2024年02月13日
    浏览(28)
  • 【软件设计师暴击考点】计算机组成原理与体系结构高频考点暴击系列【一】

    👨‍💻个人主页 :@元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏 : 软件设计师考点暴击 下午题 ⭐【软件设计师暴击考点】下午题高频考点暴击系列 上午题目录 进入专栏浏览:

    2024年02月10日
    浏览(31)
  • 计算机体系结构

    目录 第一章 基本概念 1.虚拟计算机 2.计算机系统结构的定义 3.佛林(Flynn)分类法 4.Amdahl定律 5.CPU性能公式 6.程序访问的局部性原理 第二章 指令系统 1.数据表示与数据类型 2.浮点数的表示方式 3.编址方式 4.寻址方式 5.指令系统的优化设计  6.Huffman编码法 7.拓展编码 8.两种方

    2024年02月06日
    浏览(44)
  • 【体系结构】山东大学计算机体系结构知识点清单

    涵盖所有考点,复习绝对高效,点赞+留邮箱获取pdf版本 1. 计算机系统的层次结构 语言实现的两种基本技术: 翻译:先把 N+1 级程序全部转换成 N 级程序后,再去执行新产生的 N 级程序,在执行过程中 N+1 级程序不再被访问。 解释:每当一条 N+1 级指令被译码后,就直接去执

    2024年02月11日
    浏览(48)
  • [Linux]计算机软硬体系结构

    冯诺依曼体系结构的组成 现代计算机大多都遵守冯诺依曼体系结构 冯诺依曼体系结构的示意图如下: 冯诺依曼体系结构计算机由五大部件组成: 输入设备 输出设备 存储器(内存) 运算器 控制器 注:如今大多的计算机都将运算器和控制器集成到一起,被称作中央处理器,简称

    2024年02月13日
    浏览(34)
  • 【Linux】—— 详解计算机体系结构

    前言: 在之前,我们已经对Linux环境开发的基本工具进行了详细的学习。接下来,我们将要学习的第一大块便是关于计算机体系结构的知识!! 目录 前言 (一)冯诺依曼体系结构 基本介绍 木桶原理 数据流动过程 (二)操作系统 1、概念 2、感性理解 总结 在我写的《操作系

    2024年02月09日
    浏览(35)
  • 计算机体系结构(复习资料)

    1.存储程序计算机 (冯诺依曼):4部分                 运算器(用于完成数值运算)                 存储器(用于存储程序和数据)                 输入输出设备(用于完成计算机与外部信息交互)                 控制器(根据程序形成控

    2024年02月02日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包