“第六十四天” 字扩展和位扩展,外部存储器

        存储器和CPU的连接;

现在的计算机MAR,MDR通常集成在CPU内部。存储芯片内只需一个普通的寄存器(暂存输入,输出数据)。

        位扩展,字扩展,字位同时扩展;

       位扩展

 位扩展的增加的是主存的存储字长,数据总线一次可以读写的位数增加,

        这里A代表的是地址线,D代表的是数据线,WE是读/写控制线,这里高电平表示写,低电平表示读,CS是片选线,这里高电平意味有效,这里一直是接通的,实际上可以看成两个存储器并在了一起。(同一个地址管理的内存空间变大了,比如这里原本管理的是一位,现在变成两位了)

字扩展:

字扩展,数据总线一次读取的字长并没有改变,更像是扩大的主存的空间,这里控制存储芯片的方法是线选法,通过给片选线输入不同的选片信号决定选择哪一个存储片,片选信号要保证在同一时刻只有一个存储片是接通的,这里是因为所有的存储片共用同一条数据总线,如果同时接入多个存储片的话,那么在传输数据的时候会发生混乱.(一个地址管理的内存空间并没有变大,原来是8位,现在也是8位,但地址变多了,所以对应的总内存变大了)

但是这样会遭受浪费,因为两根地址线只能传输 01 或者 10 ,而不能传输 00 和  11  ,这样就导致可以控制的内存单元减少。像图中展示的 n条线只能发出n个选片信号,也就是只能控制n个存储器,而且对应的地址空间也不连续,没有00,11开头的地址。

这里注意片选信号是通过专门的地址线输入的。

还有一种方法是 1-2译码器,就是用一根地址线,然后分支出两条线,一条线接上非门,然后两条分支出的线分别和两个片选线相加,这样只需要一根地址线就可以控制两个存储片,同样的还有 3-8译码器,和上面的原理类似(需要三根地址线,因为三位的二进制才能表示八个单位 000~111),这种方法,就可以实现 n条线 发出 2的n次方的选片信号,而且地址空间是连续的。

        字位同时扩展

这个看图还是蛮容易理解的,把经过移码器分支的地址线再次分支,然后把来自同一分支的分支线接到同一个经过位扩展的不同存储片上,这里也可以看到位扩展实现里,存储字长的扩展,由原本的4位(每个存储器)扩展到了8位(这里是两个存储器)。



        外部存储器

对于磁表面存储器,是通过控制电流产生的磁场来在磁层上形成方向不同SN极性来表示 0和1 的。

工作要求高的原因是因为是通过磁场写入的,那么自然也会受到外来磁场的影响,如果外来磁场比较强的话,就可以导致磁层内存储的SN极被毁或者方向改变。

这里需要注意的是一个盘片的上下层都是可以记录数据的。      磁道指的是记录面的中心向外辐射状排列的圆。

            磁盘的性能指标

         磁盘的容量:一个磁盘所能存储的字节总数称为磁盘容量。磁盘容量有非格式化和格式化容量之分。

非格式化容量是指磁记录表面可以利用的磁化单元总数。

格式化容量是指按照某种特定的记录格式所能存储信息的总量。

        记录密度:记录密度是指盘片单位面积上记录的二进制的信息量,通常以道密度,位密度和面密度表示。

道密度是沿磁盘半径方向单位长度上的磁道数;

位密度是磁道单位长度上能记录的二进制代码位数;

面密度是位密度和道密度的乘积。

这里要注意的是,磁盘所有磁道记录的信息量是一定相等的,并不是圆越大信息越多,故每个磁道的位密度都不同,也就是越靠近内侧的磁道位密度越大。

        平均存取时间

从上面的那个磁盘的图可以看到,磁盘是通过磁头读取信息的,磁头由移动臂控制移动,移动臂需要控制磁头移动到对应的磁道,然后盘片也需要旋转移动到对应的扇区,等这些准备工作都做完之后,然后才开始读取传输,所有平均存取时间是由寻道时间,旋转延迟时间和传输时间的加和。

        数据传输率

磁盘存储器在单位时间内向主机传送数据的字节数,称为数据传输率。

假设磁盘转数为 r (转/秒) ,每条磁道容量为N字节,则数据传输率为rN。

        磁盘地址;

磁盘的地址一般要包括 : 驱动器号 ,柱面(磁道)号,盘面号,扇区号;

一台电脑可能有多个硬盘,所以要有驱动器号说明是那个磁盘;

柱面号用来移动磁头臂到对应的磁道;

盘面号向磁盘说明要激活哪一个磁头;

扇区号说明要读哪一片区域的数据,通过旋转将特定扇区划过磁头下方。

        盘的工作过程

注意是 硬盘 ,不是磁盘,硬盘是磁盘的一种具体类型,它使用旋转的磁性盘片来存储数据,而磁盘是一个更通用的术语,可用于描述各种使用磁性媒体或其他技术来存储数据的设备。

硬盘的主要操作是寻址、读盘、写盘,每个操作都对应一个控制字,硬盘工作时,第一步是取控制字,第二步是执行控制字。

硬盘属于机械式部件,其读写操作是串行的,不可能在同一时刻即读又写,也不可能同一时刻读两组数据或写两组数据。

这里刚好提一下之前迷的串行,并行,并发

串行:在一个时间段内只能执行一个操作或任务,只有这个任务或操作结束之后才能进行下一个操作或者任务。在宏观上和微观上都是依次执行的。(一个工人一次干一个活)

并行:在一个时间段内可以同时执行多个操作或者任务,这几个操作和任务是同时进行的,每个任务都有自己的处理单元,可以独立执行。在宏观和微观上都是同时执行。(多个工人干多个活)

并发:在一个时间段内可以交替的执行多个操作或任务,更系统的说法应该是多个任务在重叠的时间段内执行,这并不一定意味着它们同时执行。任务可以交替执行,通过时间分片或者任务切换来模拟并发,这多个任务只有一个处理单元,所以微观上看任务的执行不是同时的,但宏观上在一个时间段内多个任务是同时执行的。(这个时间段内多个任务都在向前推进)(一个工人交替干多个活)

这个题不能用 

a[i] == ' ';

来判断是否等于空格,但实际上好像应该是可以的,只是这里答题过不去。

下面这个是用 isspace函数判断的

int main()
{char a[1000] = { 0 }, b[1000] = { 0 };gets(a);gets(b);int i = 0, j = 0;while(1){if (tolower(a[i]) == tolower(b[j])){i++; j++;}else if (isspace(a[i]))i++;else if (isspace(b[j]))j++;else{printf("NO\n");  return 0;}if (a[i] == 0 && b[j] == 0){printf("YES\n"); return 0;}}
}

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

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

相关文章

unity【动画】脚本_角色动画控制器 c#

首先创建一个代码文件夹Scripts 从人物角色Player的基类开始 创建IPlayer类 首先我们考虑到如果不挂载MonoBehaviour需要将角色设置成预制体实例化到场景上十分麻烦, 所以我们采用继承MonoBehaviour类的角色基类方法写代码 也就是说这个脚本直接绑定在角色物体…

经典OJ题:随机链表的复制

目录 题目: 本题的解图关键在于画图与看图! 思路分析: 方法一:暴力求解法。 方法二:插入法 方法解析: 步骤一、插入 步骤二、 处理每一个copy的randdom指针⭐————重点 步骤三、拆卸节点 代码…

软件测试|iOS 自动化测试——技术方案、环境配置

移动端的自动化测试,最常见的是 Android 自动化测试,我个人觉得 Android 的测试优先级会更高,也更开放,更容易测试;而 iOS 相较于 Android 要安全稳定的多,但也是一个必须测试的方向,这个系列文…

OAuth 2.0实现统一认证

OAuth 2.0协议概念: OAuth 是 Open Authorization 的简写。OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是 OAuth 的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第…

开源:特殊的垄断

免责声明:本博客旨在分享我对开源策略的理解和体会,不代表任何组织或机构的立场或观点,也不构成任何商业或投资的建议或担保。本博客的内容可能存在错误或遗漏,也可能随着时间的推移而变得过时或不适用。请在使用或依赖本博客的内…

Google play的企业开发者账号比个人号上包成功率更高?

众所周知,Google play作为全球最大的Android应用市场,是开发者们推广应用的首选平台。Google play平台提供了两种账号类型:个人开发者和企业开发者,开发者们可以选择创建个人开发者账号或者企业开发者账号进行应用上架。 不过&am…

Stable Diffusion WebUI扩展sd-webui-controlnet之Canny

什么是Canny? 简单来说,Canny是计算机视觉领域的一种边缘检测算法。 关于Canny算法大家可以去看我下面这篇博客,里面详细介绍了Canny算法的原理以及代码演示。 OpenCV竟然可以这样学!成神之路终将不远(十五)_maxminval opencv-CSDN博客文章浏览阅读111次。14 图像梯度…

论文阅读——Detection Hub(cvpr2023)

Detection Hub: Unifying Object Detection Datasets via Query Adaptation on Language Embedding 一、要解决的问题 大规模数据集可以提高模型性能,但是当训练多类别单一模型时,大规模数据集不能用在目标检测任务上,因为两个困难&#xff1…

latex cite命令、款式

UTS SEDE 的 latex 模板 [1,2] 用 biblatex,默认用的引用格式是 ieee。然而 Research Foundation 的 literature review 这个作业要用 APA 7,想在保留 biblatex 的情况下区分有括号和无括号两种引用格式,即 [3] 中 \citet、\citep 的分别。 …

基于selenium的pyse自动化测试框架

介绍: pyse基于selenium(webdriver)进行了简单的二次封装,比selenium所提供的方法操作更简洁。 特点: 默认使用CSS定位,同时支持多种定位方法(id\name\class\link_text\xpath\css&#xff09…

Next.js 项目——从入门到入门(Eslint+Prettier)

Next.js官方文档地址 什么是 Next.js 这是一个用于生产环境的 React 框架。 Next.js 为您提供生产环境所需的所有功能以及最佳的开发体验:包括静态及服务器端融合渲染、 支持 TypeScript、智能化打包、 路由预取等功能,无需任何配置。 功能&#xff…

mac 安装 selenium + chrome driver

前言 使用 selenium 模拟浏览器渲染数据,需要依赖各浏览器的驱动才能完成,因此需要单独安装chrome driver 查看本地 chrome 浏览器的版本 可以看到我这里已经是 arm 架构下最新的版本了 下载对应的 chrome driver 访问下面的地址: Chrome…

C++ Concurrency in Action 2nd Edition

《C Concurrency in Action - SECOND EDITION》的中文翻译-面圈网 (mianshigee.com) C/C 学习教程源码-C/C源码推荐-面试哥 (mianshigee.com) 作者正是为C11标准引入线程库的C标准委员会成员本人!并且本书作者还编写了众多构成C标准的多线程和并发相关的提案、制定…

RHCE8 资料整理(五)

RHCE8 资料整理 第五篇 系统管理第18章 进程管理18.1 进程介绍18.2 查看进程18.3 向进程发送信号18.4 进程优先级 第19章 日志19.1 rsyslog的配置19.2 查看日志 第20章 网络时间服务器20.1 时间同步必要性20.2 配置时间服务器20.3 配置客户端 第21章 计划任务21.1 at21.2 cront…

VSCode修改主题为Eclipse 绿色护眼模式

前言 从参加开发以来,一直使用eclipse进行开发,基本官方出新版本,我都会更新。后来出来很多其他的IDE工具,我也尝试了,但他们的主题都把我劝退了,黑色主题是谁想出来?😂 字体小的时…

2023年眼镜行业分析(京东眼镜销量数据分析):市场规模同比增长26%,消费需求持续释放

随着我国经济的不断发展,电子产品不断普及,低龄及老龄人口的用眼场景不断增多,不同年龄阶段的人群有不同的视力问题,因此,视力问题人口基数也随之不断加大,由此佩戴眼镜的人群也不断增多。 同时&#xff0c…

华为eNSP实验-三层交换机的不同网段通信(通过OSPF路由方式)

1.拓扑图 2.过程如下 2.1 首先PC1和PC2配置好IP地址 2.2 在SW1上配置虚拟网关及VLAN <Huawei>system-view [Huawei]sysname SW1 [SW1]undo info-center enable [SW1] [SW1]vlan batch 10 20 [SW1]interface GigabitEthernet 0/0/1 [SW1-GigabitEthernet0/0/1]port li…

Ubuntu22.04配置Go环境

Ubuntu上配置Go环境biCentOS简单多了&#xff0c;有两种方案&#xff0c;一种直接使用apt进行安装&#xff0c;一种自己从官网下载安装包进行安装。 1、使用apt直接安装 更新apt安装包&#xff0c;常规操作 apt update 然后看看apt自带的Go版本是多少 apt list golang 是1…

Git 入门使用

一、Git 入门 1.1 Git简介 Git是一个开源的分布式版本控制系统&#xff0c;用于敏捷高效地处理任何或小或大的项目。Git是由Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。 Git是目前世界上最先进的分布式版本控制系统&#xff0c;没有之一&a…

【自然语言处理】基于python的问答系统实现

一&#xff0c;文件准备 该问答系统是基于已知的问题和其一一对应的答案进行实现的。首先需要准备两个文本文件&#xff0c;分别命名为“question.txt”和“answer.txt”&#xff0c;分别是问题文件和答案文件&#xff0c;每一行是一个问题以及对应的答案。 问题文件: 中国的首…