计算机|内存知多少

article/2025/9/17 8:25:26

​1、硬件层面

 

内存就是名为内存IC的电子元件。(IC,集成电路,内存也是一种集成电路)

 

内存IC的引脚配置

 

那这个内存IC能存多少数据?

 

数据信号引脚有D0~D7一共8个,表示一次输入输出8位数据(一个字节)。地址信号引脚有A0~A9一共10个,可以指定1024个地址。1024B=1KB,所以此内存IC能存1KB容量。

 

现在内存至少有4G,4GB÷1KB=4M。如果你电脑内有400万个内存IC的话~一个房间能否装下都是问题。一般内存IC会用更多的地址引脚增加数据存储。

 

2、内存的工作

 

写入:给VCC接入+5V,给GND接入0V,用地址信号A0~A9指明地址,用数据信号D0~D7存储数据,把WR信号设为1,就可以进行写入操作了。

 

读出:只需通过地址信号A0~A9指明地址,RD信号设为1就可以进行读出操作。

 

3、内存的逻辑模型

 

可以把内存模型看成楼房,一层存一字节。

 

 

这里从下到上越来越小,也有越来越大的情况,这涉及到内存的读取顺序问题,是历史上著名的大端小端之争,以后看ICS的时候再细说。

 

 

4、「简单」的指针

 

到这里就比较好理解学C时头疼的指针了。指针是一种变量,它表示的不是数据的值,而是存储数据「的」内存「的」地址。Window计算机程序通常是32位内存地址,这种情况,指针变量的长度也是32位即4字节。


同理,64位操作系统内存地址是8字节,但是如果想高层封装一下,指针不一定非得那么多位,然后在系统里其实更多的谈到地址的概念,那个时候就是系统位数了

——热心的信科大佬

 

5、常见的数据结构与内存的关系

 

数组是内存最直接的用法。数组是多个同样数据类型的数据在内存中连续排列的格式。作为数组元素的各个数据通过连续的编号隔开,编号就是索引。指定索引后,可以进行指定地址的内存读写。索引和内存地址变换工作由编译器完成(卜众耀)。

 

栈和队列都可以不通过指定地址和索引来对数组的元素进行读写。如果在内存中预留栈和队列的空间,确定写入读出顺序,就不需要指定地址和索引。

 

链表则更简单,对各个元素操作时,除了数据的值,还附带下一个元素索引即可。

 

的结构则是在链表基础上,附带多个元素索引。

 


关注有更多干货 ↓ 码文不易,给大家表演debug了

 


http://chatgpt.dhexx.cn/article/8wUJ3Bt8.shtml

相关文章

计算机底层知识之内存

❝ 渔夫出海前,并不知道鱼在哪里,可是他们还是选择出发, 因为他们相信,一定会满载而归。人生很多时候,是「选择了才有机会,是相信了才有可能」。 -- 「稻盛和夫」 ❞ 大家好,我是「柒八九」。 …

计算机基础之内存

目录 1.什么是内存2.内存的物理结构3.内存的使用4.数据在内存中为什么用二进制表示5.二进制的补码 1.什么是内存 内存是与cpu沟通的桥梁,计算机中所有程序的运行都要依靠内存,内存对计算机的影响非常大,内存又被称为主存,作用就是…

计算机基础- -认识内存

计算机基础- -认识内存 文章目录 计算机基础- -认识内存一、什么是内存二、内存的物理结构1.内存的读写过程2.内存的现实模型 三、内存的使用1.指针2.数组是内存的实现3.栈和队列4.链表5.二叉树 一、什么是内存 内存(Memory) 是计算机中最重要的部件之一,它是程序与…

电脑内存介绍(精心整理)

内存是电脑的主要硬件之一,主要用于存储和交换正在运行的程序和数据。简单的说就是,断电之后,内存存储的数据就会消失。所以我们常用的软件需要安装在硬盘等外存设备里,打开游戏或者软件时,就需要把他们调出到内存中运…

四大CPU架构的区别

我们目前使用比较多的架构有:ARM、RISC-V、MIPS,X86等等。其实还有一些指令的,但是其他的指令都是比较小众,只在专业的领域使用。 我们目前使用比较多的架构有:ARM、RISC-V、MIPS,X86等等。其实还有一些指…

四大CPU架构区别

我们目前使用比较多的架构有:ARM、RISC-V、MIPS,X86等等。其实还有一些指令的,但是其他的指令都是比较小众,只在专业的领域使用。 ARM架构是一个32位精简指令集处理器架构,其广泛地使用在许多嵌入式系统设计。它主要从…

Linux 查看CPU架构及内核版本

涉及arch命令和/proc/version文件 1 查看CPU架构 有些软件的安装需要和CPU架构相匹配,如JDK等等,所以需要确定主机的CPU架构类型。可使用命令arch查看Linux系统的CPU架构,如下: arch2 查看内核版本 文件/proc/version中包含系统…

如何查看手机的CPU架构

几款专门获取手机设备信息的App: 通过这些App,你能看到你的安卓手机很多核心底层的信息,对于开发者而言,这些信息对于开发App时的写代码或者debug何其重要! 这些App都能查看像CPU架构、GPU、传感器、温度、存储、电池…

Android CPU架构

Android CPU架构有:arm64-v8a、armeabi-v7a、armeabi、x86 CPU架构 1)arm64-v8a 第8代、64位、ARM处理器 包含AArch32、AArch64两个执行状态对应32、64bit 支持arm64-v8a、armeabi-v7a、armeabi 2)armeabi-v7a 第7代、ARM处理器 …

cpu架构知识

微信公众号:运维开发故事,作者:夏老师 Part1架构概述 从系统架构来看,目前的商用服务器大体可以分为三类 对称多处理器结构(SMP:Symmetric Multi-Processor) 非一致存储访问结构(NUMA:Non-Uniform Memory…

CPU架构名称

Coffee Lake-Refresh 第九代酷睿 2018-2019年 14nm Coffee Lake 第八代酷睿 2017-2018年 14nm Kaby Lake 第七代酷睿 2016年 14nm Skylake 第六代酷睿 2015年 14nm Broadwell 第五代酷睿 2014-2015年 14nm Haswell 第四代酷睿 2013年 22nm Ivy Bridge 第三代酷睿 2012年 22nm S…

指令集与CPU架构概念与联系

指令集 指令集,顾名思义,指令的集合,CPU用来计算和控制计算机系统的,本质上是二进制机器码。 CPU依靠指令来计算和控制系统,故而需要规定一些列与硬件电路相互配合的指令系统来完成CPU的设计。以此来看,指…

Linux内核架构:CPU架构详细介绍(图例解析)

一. 概述 CPU架构是CPU商给CPU产品定的一个规范,主要目的是为了区分不同类型的CPU。目前市场上的CPU分类主要分有两大阵营,一个是intel、AMD为首的复杂指令集CPU,另一个是以IBM、ARM为首的精简指令集CPU。不同品牌的CPU,其产品的…

cpu架构之体系架构

cpu架构之体系架构 1 现代CPU体系结构简介 现代的CPU基本上归为冯诺依曼结构(也称普林斯顿结构)和哈佛结构。 1.1 冯诺依曼结构 冯诺依曼结构(von Neumann architecture),也称普林斯顿结构,是一种将程序…

主流的CPU架构

cpu架构 CPU架构是CPU厂商给属于同一系列的CPU产品定的一个规范,是为了区分不同类型CPU的重要标示。目前市面上的CPU分类主要分有两大阵营,一个是intel、AMD为首的复杂指令集CPU,另一个是以IBM、ARM为首的精简指令集CPU。两个不同品牌的CPU&a…

Android CPU架构之ARM和X86

Android CPU架构之ARM和X86 前言1. CPU2. CPU 架构3. ABI4. 视频资料 一、Android相关CPU架构二、如何查看Android设备 CPU架构三、CPU架构综述1. x86架构x86指令集发展x86-64 分为intel和AMD 2. ARM架构3. MIPS架构4. SPARC架构5. Alpha架构6. PowerPC系列7. 架构之间的竞争7.…

x86 CPU架构

本文是极客时间《趣谈Linux操作系统》的第6讲笔记, 链接:06 | x86架构:有了开放的架构,才能打造开放的营商环境-极客时间 Intel的8086 CPU架构 数据单元: 8个16bit 通用寄存器, 后面拓展位32bit 控制单元 IP 寄存器就…

通过命令行快速了解电脑CPU架构

Linux 和 MacOS 使用终端(小黑窗)执行下面的命令,根据输出结果查表: uname -m输出 的内容分别对应架构 输出对应架构i386, i686i386x86_64amd64arm, armelarm_garbagearmv7l, armhfarmv7*mipsmips*mips64mips64* Window 按 WinR…

四大主流cpu架构

四大主流cpu架构:1、X86架构,采用CISC指令集(复杂指令集计算机),程序的各条指令是按顺序串行执行的,每条指令中的各个操作也是按顺序串行执行的。2、ARM架构,是一个32位的精简指令集&#xff08…

CPU 架构(x86/ARM)简介

CPU 架构通过指令集的方式一般可分为 复杂指令集(CISC) 和 精简指令集(RISC) 两类,CISC 主要是 x86 架构,RISC 主要是 ARM 架构,还有 MIPS、RISC-V、PowerPC 等架构。 本文重点介绍 x86 和 ARM…