首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

计算机怎么做到存储内容(二)

寄存器 寄存器能存一个数字,这个数字有多少位,叫"位宽",早期电脑用 8 位寄存器,然后是 16 位,32 位,如今许多计算机都有 64 位宽寄存器。...在矩阵,我们不并列排放锁存器,而是做成网格,存 256 位,我们用 16x16 网格锁存器,有 16 行 16 列。...我们下节做 CPU 时会用到这个内存,现代计算机内存, 扩展到上兆字节(MB)和千兆字节(GB)方式,和我们这里做一样。...要给千兆或十亿字节内存寻址,需要 32 位地址。 RAM 内存一个重要特性是:可以随时访问任何位置,因此叫 "随机存取存储器" ,简称 RAM。...就像计算机很多事情,底层其实都很简单,让人难以理解,是一层层精妙抽象,像一个越来越小俄罗斯套娃。

96510

计算机怎么做到存储内容(一)

得找个方法存起来,可能还要进行多个连续操作,这就用到计算机内存了。 如果你在主机上打过一场长时间对局,或玩困难模式 "扫雷",然后狗跑过来,被电源线绊倒,把插头拔了出来,你知道失去进度痛苦。...你损失数据原因是电脑用是"随机存取存储器",简称"RAM"。它只能在有电情况下存储东西,比如游戏状态,另一种存储 (memory) 叫持久存储,电源关闭时数据也不会丢失,它用来存其他东西。...我们之后会讨论存储 (memory) 持久性问题。 今天我们从简单开始,做只能存储 1 位电路,之后再扩大,做出我们内存模块。下次和 ALU 结合起来,做出 CPU!...如果"设置"和"复位"都是 0,电路会输出最后放入内容,也就是说,它存住了 1 位信息! 存储!...因为 "允许写入线" 是关闭,所以内容不会变化,所以要给 "允许写入线" 输入 1, "打开" 门,现在往 "数据线" 放 1,1 就能存起来了,注意输出现在是 1 了,成功!

59810
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    请教关于C语言形参和实参存储单元问题?

    除了cdecl以外,C其他常用调用约定包括stdcall和fastcall,C++还有一个thiscall(用于调用类成员函数)。fastcall会使用寄存器来传递一部分参数。...比如说: int f(int a); int main(){ f(1); return 0; } 这个1,在实际运行时候并不会有额外空间来存储,而是直接从指令压一个1到堆栈里然后直接调用...这个时候显然不是“实参和形参各占用独立存储单元”。...传递一个固定指针作为实参时候也是一样: int f(int *a); int main(){ int r = 0; f(&r); return 0; } 这个&r也不会有专门存储单元去保存...是x86调用约定,x64已经不同了,查了一下相关资料,在Windows上和非Windows上,使用调用约定是有差异

    1.2K30

    【系统架构设计师】计算机组成与体系结构 ⑤ ( 主存编址计算 | 存储单元 | 内存编址 | 存储单元个数 和 总容量 计算 )

    一、主存编址计算 1、存储单元 存储单元 概念 : 最小存储单位 : 1 bit 是 计算机中最小 容量单位 , 只能表示 0 或 1 ; 存储单元 : 在 存储 , 查找 1 bit 是比较困难..., 这里 将 比特位 进行分组 , 每组称为一个存储单元 , 最常见存储单元就是 1 Byte 字节 , 每个字节包含 8 bit ; 内存编址单位 : 存储单元 就是 内存地址 编址最小单位...; 编址内容 : 内存 会为 每个字节 进行编址 , 每个地址单位表示 1 Byte = 8 bit 大小内存空间 , 地址单位增加 1 , 表示 内存空间 向前移动了 1 字节 ; 字节单位...位、16 位、32 位、64 位 , 一个 字 给一个地址编号 ; 字宽度 : 计算机体系结构 定义了 字 宽度 , 字宽度 影响到 每个地址 访问数据量 ; 3、存储单元个数 和 总容量 计算...存储单元个数 计算 : 存储单元个数 = 最大地址 - 最小地址 + 1 内存总容量 计算 : 总容量 = 存储单元个数 \times 编址内容 编址内容 : 按字节编址 , 一个单位 1 字节 8

    23610

    浅谈计算机存储模型(二)虚拟存储

    上周给大家分享了 《浅谈计算机存储模型(一)物理内存 》 小伙伴们都表示 ?...★ 虚拟存储器 ★ 虚拟存储器概念:现代系统为了更好管理存储器并且保证安全提供了一种对主存抽象概念,叫做虚拟存储器。...虚拟存储器提供了三个重要能力: 1.它将内存看为是磁盘高速缓存,在内存只保存活跃区域,并根据需要在内存和磁盘来回传送数据,使得主存使用更加高效。...然而物理内存是有限,如果每个进程都要全部加载到内存内存肯定不够,后来先辈们就发现我为什么要把进程全部内容加载到内存中去呢。 根据二八定理,百分之百内容常用也就百分之二十。...这就是上图中内存和磁盘连线关系,装过系统朋友都知道无论是Linux还是windows分区时我们都要给它分交换分区,交换分区其实就是暂存物理内存不用内容

    63400

    计算机存储设备

    理想状态下计算机存储设备应该是极为快速,容量大,价格便宜。但是目前技术做不到。因此,一般计算机存储结构如下图所示。图中自顶向下设备是越来越便宜,但是速度却是越来越慢。 ?...寄存器是CPU内部存储器,它速度是最快,CPU访问它是没有时延;高速缓存通常由硬件控制,其中保存CPU最常使用内容,当程序读取一个东西时候,硬件会去检查是不是在高速缓存,如果在称之为“高速缓存命中...”,否则就需要去内存读取。...高速缓存通常需要两个时钟周期,比起内存是非常快速。在现代CPU,通常都有三级高速缓存。分别是L1,L2,L3。...L1缓存一般是在CPU,CPU访问它不存在延时;L2缓存一般有2个时钟周期左右延迟;L3缓存就更慢了。 在多核心处理器设计必须确定其缓存位置。业界AMD和Intel采用设计也是不同

    1.2K20

    整数、浮点数在计算机存储

    一、简述 1.1 计算机底层存储数据基本原理   计算机要处理信息是多种多样,如数字、文字、符号、图形、音频、视频等,这些信息在人们眼里是不同。...引用类型:存储是地址,数组、字符串、结构体、对象等 二、整数存储 2.1 整数基本概念   大家知道,整数包括负数,零,和正数。计算机整数分为有符号数和无符号数。...->取反加1:01111111+1 -->10000000 在计算机系统,数值一律用补码来表示(存储)。...(和十进制范围为1~10一样)   R32.24 和 R64.53 存储方式都是用科学计数法来存储数据。...而我们傻蛋计算机根本不认识十进制数据,他只认识 0, 1,所以在计算机存储,首先要将上面的数更改为二进制科学计数法表示, 8.25 用二进制表示可表示为 1000.01,大家不会连这都不会转换吧

    1.8K20

    浅谈计算机存储模型(一)物理内存

    小伙伴们有没有好奇 数据在计算机内存 是如何存储计算机物理内存模型 是怎样呢?...今天大雄就给大家详细介绍一下 今天,我们来了解一下计算机存储模型,大雄将这部分知识分成了三块,也就是我们会对这部分知识推送三次。 在了解存储模型之前,我们首先应该了解一下计算机存储体系。...计算机存储体系图 ?...空闲区表 在不等长划分,比如我们根据进程大小来分配内存,这是就需要采用空闲区表来存储空闲内存。 ? 空闲区链表只不过是通过链式结构将空闲区表数据组织起来。...1 首次适配算法 首次适配算法是在空闲区链表从头开始查找符合申请内存大小块,直到找到满足条件为止,该算法不断从头开始试验申请,所以大部分使用都是低地址空间内容,从而流出了高地址空间来满足大申请需求

    75950

    计算机是如何存储数据

    那么我们怎样将其转化为二进制存储计算机,这个过程我们称之为编码。更广义地讲,就是把信息从一种形式转化为另一种形式过程。...但是由于中国汉字很多,有些字仍无法表示,于是重新定义了规则:不在要求低字节一定是 127 之后编码,只要第一个字节是大于 127,就固定表示这是一个汉字开始,不管后面跟是不是扩展字符集里内容。...这种扩展之后编码方案称之为GBK标,包括了 GB2312 所有内容,同时新增了近 20000 个新汉字(包括繁体字)和符号。...总结 搞清楚了 ASCII、Unicode 和 UTF-8 关系,我们就可以总结一下现在计算机系统通用字符编码工作方式: 在计算机内存,统一使用 Unicode 编码,当需要保存到硬盘或者需要传输时候...浏览网页时候,服务器会把动态生成 Unicode 内容转换为 UTF-8 再传输到浏览器。

    2.4K41

    【译】Service Worker存储限制是多少?你PWA能够存储多少内容

    Service Worker用于缓存空间并没有在规范中被定义。具体大小取决于浏览器并依赖于设备和存储条件。 文件不是唯一可以缓存内容。...localStorage就非常适合保存值为字符串键值对;IndexedDB则更强大,可以有效地存储更多类型数据,我认为它是浏览器轻量级文档数据库。...如果我使用存储被限制为35MB,那么我必需有一种清除缓存文件机制。 Fast Furniture演示站点可以代表一种常见电子商务站点,其中包含大量产品图像,占比达90%以上。...比如说,Fast Furniture中使用响应式图像,这意味着我可能能够存储更多图片。当然,这最终取决于可用空间大小。 如果这听起来很复杂,我总是说从简单成长,所以不要担心,它不一定很复杂。...总结 在规划阶段,了解你应用能够使用多少存储非常重要。你需要在缓存所有内容和选择性缓存之间找到一个很好平衡点。 浏览器就构成适当存储容量规则达成了普遍共识。

    4.2K20

    推荐一些计算机相关内容

    分享一下看过一些计算机相关非技术内容。 早期计算机历史,有很多让人津津有味技术故事,今天推荐一些计算机相关故事、书籍。看完或许你会觉得计算机世界,很精彩,很酷。...纪录片: 操作系统革命、代码两部(linux和gnu项目的历史故事) 奔腾代码(火狐和ie斗争) 互联网之子(亚伦·斯沃茨故事) 我们窃取秘密:维基解密故事(朱利安·阿桑奇故事) 电影 硅谷传奇...(比尔盖茨和乔布斯) 社交网络(facebook故事) 极速下载命运(Downloaded)(Napster故事,资源有点难找) 斯诺登 史蒂夫·乔布斯:改变世界力量 书籍 just for...fun (linux创始人故事) 编程人生中文下 编程之魂 与27位编程语言创始人对话(互联网大佬访谈) 最后分享两篇杂谈 (web程序员)https://zhuanlan.zhihu.com/

    44920

    计算机层次化存储究竟是个什么鬼?

    今天,我们来一起聊聊计算机层次化存储结构。...而且,CPU存储容量是非常小,基本都是KB级别的存储,CPU内存容量也就几KB,MB级别的CPU内存也是比较少见。所以,出于经济成本考虑,计算机存储结构是按照层次进行划分。...空间局部性:是指一旦程序访问了某个存储单元,则不久之后,其附近存储单元也将被访问。 Cache 针对Cache相关技术,我们主要来聊聊Cache概念和映像相关技术。...所谓直接相联映像是指Cache0页只能存储主存0页内容,这里主存0页指的是每个区0页,比如上图中0区0页,1区16页,127区2032页等。...使用直接相联映像有个缺点:那就是如果Cache0页,存储了主存0区0页内容时,如果此时需要存储主存1区16页内容,就只能将主存0区0页内容从Cache0页清除,然后将主存1区16页内容存储

    50410

    每周学点大数据 | No.15 图在计算机存储

    No.15期 图在计算机存储 Mr. 王:还有一个很重要问题,就是图在计算机表示。...虽然我们看到图边和点等都是非常直观,可以画成一个圆圈里带一个数字表示顶点,用一条带有数字线段或者箭头来表示边,但是在计算机,显然不能用这种方式来存储它。...实际存储计算机时,我们会用一个二维数组来表示,其中A,B,C,D,E这些字母用数组下标0,1,2,3,4来表示。 小可:那么如何来表示一条边呢? Mr....链表上不止有数据域,还有一个指针,相比邻接矩阵,这个指针完全是浪费空间,它没有存储任何与图有关内容。所以对于稠密图,邻接矩阵表现不佳。...在我们讨论课,我会给出这些经典算法大数据版本。当然,在那之前,我会带你复习其经典版本。 内容来源:灯塔大数据

    1.2K70

    MySQL存储引擎

    mysql存储引擎概述 什么是存储引擎? MySQL数据用各种不同技术存储在文件(或者内存)。这些技术每一种技术都使用不同存储机制、索引技巧、锁定水平并且最终提供广泛不同功能和能力。...MySQL默认配置了许多不同存储引擎,可以预先设置或者在MySQL服务器启用。...以上要求会在不同需求予以体现,通过单独一个系统实现是不可能,以上特点有些本身就是相互矛盾,鱼和熊掌问题。对以上内容做些选择,形成存储引擎就是一个插件引擎了,某些特定需求可以使用。...Memory 在内存存储所有数据,应用于对非关键数据由快速查找场景。...Memory缺陷是对表大小有限制,虽然数据库因为异常终止的话数据可以正常恢复,但是一旦数据库关闭,存储在内存数据都会丢失。 存储引擎在mysql使用 存储引擎相关sql语句 ?

    1.8K20

    Flutterhtml内容加载

    上一篇文章Flutter 下拉刷新和上拉加载,我介绍了如何在Flutter实现下拉刷新和上拉加载效果,今天我们继续以上文中代码为例,来介绍如何加载HTML文档内容。...首先来聊聊如何通过flutter_html这个第三方库来解析html文档内容吧: 这是列表页面的代码,里面包含下拉刷新、上拉加载,以及加载动画: import 'dart:convert'; import...flutter_inappbrower 前面我们使用flutter_html加载html内容步骤如下: 首先通过网络请求获取到对应html内容文本 通过Html这个第三方库组件来展示html...在Flutter,实现WebView加载html内容第三方组件有很多,这里我们给推荐flutter_inappbrower这一个第三方组件。...flutter_html可用于加载轻量级html文本内容,对于复杂远程html内容,我们需要使用webview来加载,flutter_inappbrower是Flutter实现WebView最好用第三方组件

    16.6K43

    SwiftUI 内容边距

    从字面上看,它是另一个安全区域,适应屏幕大小,但仅适用于文本内容。不幸是,我们在 SwiftUI 无法访问 readableContentGuide。...使用 contentMargins我们需要一种区分视图内容和工具栏,并仅移动内容而保持工具栏在原地方法。...你可以在 Playground 运行此代码以查看结果。总结本文介绍了 SwiftUI 内容边距管理,通过对比安全区域概念,解释了内容边距重要性。...随后,通过介绍 UIKit readableContentGuide 布局指南以及 SwiftUI safeAreaPadding 视图修饰符,展示了在 iPad 上适配内容边距方法。...最后,引入了 contentMargins 视图修饰符,并详细解释了其用法和参数,以及如何使用它来管理内容边距。通过本文,读者可以更好地理解并掌握 SwiftUI 内容边距管理技巧。

    17632

    修改docker容器内容

    kkFileView 容器内容修改方法 前言 项目修改 列出所有容器 拷贝文件至容器 建议 参考资料 # 前言 kkFileView 是使用 spring boot 打造文件文档在线预览项目解决方案,支持...然而在使用过程偶尔会有一些定制化需求或者其它优化,比如文件丢失后打开预览时 404 页面会出现 kkFileView 群号,需要去除。...然后因为预览服务是跑在 docker 里所以就需要修改之后把容器 jar 包替换掉。如果你也有类似的需求可以参考一下。...文件路径:server/src/main/resources/web/fileNotSupported.ftl 修改内容:把官方 QQ 内容去掉换成其它文案 启动项目查看修改效果: 文件预览失败提示...# 列出所有容器 接着我们找一下 kk 服务容器: 执行 docker ps 查看所有正在运行容器,找到名字是keking/kkfileview那个,复制它 ID # 拷贝文件至容器 接着要先把文件从本地上传至宿主机服务器备用

    2K40
    领券