<<迷雾>> 第11章 全自动加法计算机(8)--一只开关取数并相加 示例电路

news2024/11/30 2:35:50

用一只开关就可完成将所有的数从存储器里依次取出并逐个相加的过程.

info::操作说明

增加了 指令寄存器 和 译码电路, 扩充了 RR 循环移位寄存器

存储器中前 10 个地址已经提前写入了指令和数值, 其中 17(10001) 代表装载指令, 18(10010) 代表相加指令, 其它则为要加的数.

需检查地址计数器 AC 的值是否为零, RR 循环移位寄存器 Q0 是否为 1. 其它寄存器不为零的也需要先清零.

另: 增加了一些过程中的二进制转十进制译码输出, 方便观察整个运行过程

注: 读者如想仔细观察整个过程, 也可将按钮开关 K 调整为普通开关, 完全自主控制其按下和松开的过程.

  1. 初始状态 RR 寄存器 Q0=1, 译码器 Iar=1, 准备锁存第一个地址;

  2. 第一次按动开关 K, 寄存器 AR 存储第一个地址 0000, RR 寄存器 Q1=1, 译码器 Ird=1, 存储器第一个装载指令 10001 被读出, Ird=1 准备锁存该指令;

  3. 第二次按动开关 K, 寄存器 DR 将第一条装载指令保存, RR 寄存器 Q2=1, 译码器 Iac=1, 准备增加地址计数;

  4. 第三次按动开关 K, RR 寄存器 Q3=1, 译码器 Iir=1, 准备将指令锁存; 地址计数器 AC 加一, 变成 0001;

  5. 第四次按动开关 K, 指令寄存器 IR 将第一条装载指令保存, 并送入译码电路 EC, EC 译码并输出 IL=1, RR 寄存器 Q4=1, 译码器输入 IL=1, 输出 Iar=1, 准备锁存第二个地址;

  6. 第五次按动开关 K, 寄存器 AR 存储第二个地址 0001, RR 寄存器 Q5=1, 译码器输出 Idr=1, Ird=1, 存储器读出第二个地址中的操作数 10(也即第一个装载指令所要载入的数)

  7. 第六次按动开关 K, 寄存器 DR 存储操作数 10, RR 寄存器 Q6=1, 译码器输出 Iac=1;

  8. 第七次按动开关 K, 地址计数器 AC 再加一, RR 寄存器 Q7=1, 译码器输出 Ira=1, Iga=1, 传输门 GA 打开, 数据到达寄存器 RA 的输入端;

  9. 第八次按动开关 K, RR 寄存器 Q8=1, 寄存器 RA 把值存储并送入加法器 A 输入端.

  10. 第九次按动开关 K, RR 寄存器 Q0=1, 完成一次循环; 译码器 Iar=1;

  11. 第十次按动开关 K, RR 寄存器 Q1=1, 寄存器 AR 保存地址 0010, 译码器 Idr=Ird=1, 存储器读出第三个地址存储的相加指令;

  12. 第十一次按动开关 K, RR 寄存器 Q2=1, 寄存器 DR 保存相加指令并送到指令寄存器 IR 的输入端;

  13. 第十二次按动开关 K, RR 寄存器 Q3=1, 地址计数器 AC 再加一, 译码器 Iir=1;

  14. 第十三次按动开关 K, 指令寄存器 IR 将第二条相加指令保存, 并送入译码电路 EC, EC 译码并输出 IA=1, RR 寄存器 Q4=1, 译码器输入 IA=1, 输出 Iar=1;

  15. 第十四次按动开关 K, 寄存器 AR 存储存储新的地址值, RR 寄存器 Q5=1, 译码器输出 Idr=1, Ird=1, 存储器读出相加指令的操作数 5;

  16. 第十五次按动开关 K, 寄存器 DR 存储操作数 5, RR 寄存器 Q6=1, 译码器输出 Iac=1;

  17. 第十六次按动开关 K, 地址计数器 AC 再加一, RR 寄存器 Q7=1, 译码器输出 Itr=1, Iga=1, 传输门 GA 打开, 数据到达加法器 B 输入端, 加法器将之前装载的数 10 和现在的数 5 相加, 结果是 15;

  18. 第十七次按动开关 K, RR 寄存器 Q8=1, 寄存器 TR 把和值 15 存储, 译码器输出 Ira=1, Igb=1, 传输门 GB 打开, 和被反馈到寄存器 RA 的输入端;

  19. 第十八次按动开关 K, RR 寄存器 Q0=1, 又完成一次循环, 反馈的和被寄存器 RA 存储, 译码器输出 Iar=1, 传输门 GB 关闭.

  20. 重复按动开关 K, 直至取出所有指令及操作数, 完成累加.

请添加图片描述

primary::在线交互操作链接

https://cc.xiaogd.net/?startCircuitLink=https://book.xiaogd.net/cyjsjdmw-examples/assets/circuit/cyjsjdmw-ch11-10-circuit-using-one-switch-for-reading-and-adding.txt

原图

请添加图片描述

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

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

相关文章

vue3--通用 button 组件实现

背景 在日常开发中,我们一般都是利用一些诸如:element-ui、element-plus、ant-design等组件库去做我们的页面或者系统 这些对于一些后台管理系统来说是最好的选择,因为后台管理系统其实都是大同小异的,包括功能、布局结构等 但是对于前台项目,比如官网、门户网站这些 …

StableDiffusion|833种艺术家风格项目,提示词直接上手! AI绘画文生图直接抄!

大家好,我是画画的小强 众所周知,Stable Diffusion是一个强大的文生图模型,能够根据用户的文本描述生成高质量的图像。在这个过程中,提示词(Prompt)的选择和构造具有至关重要的作用。提示词是向模型描述你…

RPA好用吗?RPA机器人如何使用?

数字化飞速发展的时代,企业越来越追求效率和成本控制,以期在激烈的市场竞争中保持领先地位。在此背景下,RPA机器人流程自动化作为一种能够提升业务流程效率的先进技术,成为助力企业数字化转型和高质量发展的强劲助力。那么&#x…

【前端】制作一个自己的网页(4)

刚才我们完成了网页中标题与段落元素的学习。在实际开发时,一个网页通常会包含多个相同元素,比如多个标题与段落。 对于相同标签的元素,我们又该如何区分定位呢? 对多个相同的标签分类 比如右图设置了七个段落元素,它…

Android ImageView scaleType使用

目录 一、src设置图片资源 二、scaleType设置图片缩放类型 三、scaleType具体表现 matrix: fitXY: fitStart: fitCenter: fitEnd: Center: centerCrop: centerInside: 控制ImageView和图片的大小保持一致…

实例详解 | 借助 Langchain 和 Gemma 2 构建 RAG 应用

本文将为您介绍如何使用 LangChain、NestJS 和 Gemma 2 构建关于 PDF 格式 Angular 书籍的 RAG 应用。接着,HTMX 和 Handlebar 模板引擎将响应呈现为列表。应用使用 LangChain 及其内置的 PDF 加载器来加载 PDF 书籍,并将文档拆分为小块。然后&#xff0…

【Golang】合理运用泛型,简化开发流程

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

测试用例如何进行评估?4个指标

测试用例评估是确保软件测试活动能够达到预期目标的关键步骤。评估测试用例的有效性和质量,对于确保软件产品的质量和可靠性至关重要。如果未对测试用例进行评估,可能导致测试用例不完整、不准确或无效,进而引发需求遗漏、测试不充分等问题&a…

241015_把一个文件夹中的所有图片按照序列命名

241015_把一个文件夹中的所有图片按照序列命名(数据集重命名) 在数据集制作过程中,我们经常会遇到合并图片数据集后命名格式不统一或者因重复命名自动添加(1)(2)的问题,以下是一段代码,对合并后…

中国研究员使用量子计算机破解 RSA 加密

由上海大学的 Wang Chao 领导的研究团队发现,D-Wave 的量子计算机可以优化问题解决,从而可以攻击 RSA 等加密方法。 中国研究人员公布了一种使用 D-Wave 的量子退火系统来破解经典加密的方法,这可能会加快量子计算机对广泛使用的加密系统构成…

推荐系统架构

推荐系统架构 推荐和搜索系统核心的的任务是从海量物品中找到用户感兴趣的内容。在这个背景下,推荐系统包含的模块非常多,每个模块将会有很多专业研究的工程和研究工程师,作为刚入门的应届生或者实习生很难对每个模块都有很深的理解&#xf…

鼠标右键删除使用Visual Studio 打开(v)以及恢复【超详细】

鼠标右键删除使用Visual Studio 打开(v) 1. 引言2. 打开注册表3. 进入对应的注册表地址4. 右键删除 AnyCode 项5. 效果6. 备份注册表文件——恢复菜单 1. 引言 安装完 Visual Studio 鼠标右键总有 “使用Visual Studio 打开(v)”,让右键菜单…

windows修改文件最后修改时间

一、需要修改日期的文件 背景:有时候我们需要做一些文件定期删除的操作,但是测试时候并不一定有符合测试的文件,这时候就需要可以方便的修改文件的最后修改时间。 系统环境:windows 测试文件:如上 修改时间方式&#x…

Linux网络编程(三)-UDP协议及网络通信详解

1.UDP协议 概念: 除了 TCP 协议外,还有 UDP 协议,想必大家都听过说,UDP 是 User Datagram Protocol 的简称,中文名是用户数据报协议,是一种无连接、不可靠的协议,同样它也是工作在传顺层。它只…

基于FreeRTOS的LWIP移植

目录 前言一、移植准备工作二、以太网固件库与驱动2.1 固件库文件添加2.2 库文件修改2.3 添加网卡驱动 三、LWIP 数据包和网络接口管理3.1 添加LWIP源文件3.2 Lwip文件修改3.2.1 修改cc.h3.2.2 修改lwipopts.h3.2.3 修改icmp.c3.2.4 修改sys_arch.h和sys_arch.c3.2.5 修改ether…

利用Python filestream实现文件流读

在 Python 中,文件流(filestream)操作通过内置的 open() 函数实现,它提供了对文件的读取、写入、以及流控制的支持。常见的文件模式包括: r:只读模式(默认)。w:写入模式…

用Python构建动态折线图:实时展示爬取数据的指南

背景/引言 随着大数据和人工智能的不断发展,实时数据分析变得越来越关键,尤其是在金融市场中。股市数据的实时可视化可以帮助投资者快速做出决策,避免错失良机。Python 凭借其强大的数据处理能力和丰富的可视化库,成为分析和展示…

你不是算法工程师,就可以不了解AI大模型技术吗?

身处人工智能的大浪潮之中,除了算法工程师,其他的角色也都应当对人工智能大模型技术有一定的了解。所以,笔者将针对“什么是人工智能?”“非技术人员对于人工智能大模型的理解存在哪些门槛?”等问题与大家分享自己的见…

项目集成工作流,走审批流程,activiti,springboot,集成工作流,业务审批,驳回,会签,流程设计

前言 activiti工作流引擎项目,企业erp、oa、hr、crm等企事业办公系统轻松落地,一套完整并且实际运用在多套项目中的案例,满足日常业务流程审批需求。 项目源码配套文档获取:本文末个人名片直接获取。 一、项目形式 springboot…

健康补充维生素

在快节奏的现代生活中,健康养生已成为我们不可忽视的重要议题。而提及养生,维生素这一关键词往往跃然纸上,它们作为人体不可或缺的微量营养素,对维持生命活动、促进健康起着至关重要的作用。今天,就让我们深入探讨如何…