内存单元,CPU对存储器的读写,三大总线
.存储单元
存储器被分成若干个存储单元,每个存储单元从0开始顺序编号。电子计算机的最小信息单位是bit。8个bit组成一个Byte(虽然现在一个字节可能不是8位,有宽字符出现了,但是一般我们的机器都是8位1字节的),也就是通常所说的字节。微型机存储器的存储单元可以存储一个Byte,即8个二进制位。一个存储器如果有128个存储单元,那么它就可以存储128个Byte。
微机存储器的容量是以字节为最小单位来计算的。
对于拥有128个存储单元的存储器,我们可以说,它的容量是128个字节。常见计量容量换算:
1KB=1024B 1MB=1024KB 1GB=1024MB 1TB=1024GB
.CPU对存储器的读写
CPU要想进行数据读写,必须和外部器件(标准说法是芯片)进行下面三类信息的交互:
1.存储单元的地址(地址信息)
2.器件的选择(即选择要对那个一个器件进行操作 ),读或写的命令(控制信息)
3.读或写的数据(数据信息)
但是,CPU是通过上面讲地址、数据和控制信息传到存储芯片中的呢?电子计算机能处理、传输的信息都是电信号,电信号当然要用导线传送。在计算机中专门有链接CPU和其他芯片的导线,通常称为总线。总线从屋里上来讲,就是一根根导线的集合。根据传输信息的不同,总线从逻辑上分为三类,地址总线,数据总线和控制总线。
.地址总线
CPU是通过地址总线来指定存储单元的。一根导线在稳定状态只有两种状态,0或者1。一个CPU有N跟地址总线,则可以说这个CPU的地址总线的宽度为N。这样的CPU最多可以寻找2的N次方个内存单元,即2的N次方Byte。
.数据总线
数据总线的宽度决定了CPU和外界的数据传送速度。8根数据总线一次可以传送一个8位二进制数据,即一个字节。
8088CPU数据总线宽度为8, 8086CPU数据总线宽度为16。如果传输数据89D8H,8088需要分两次传输,而8086只用传输一次。
.控制总线
CPU对外部器件的控制是通过数据总线来进行的。有多少根控制总线,就意味着CPU提供了对外部器件的多少种控制。控制总线的宽度决定了CPU对外部器件的控制能力。
.内存地址空间
什么是内存空间?如果一个CPU地址总线宽度为10,那么可以寻址1024个内存单元,即寻址能力为1KB。这1024个可寻址的内存单元就构成这个CPU的内存地址空间。
.主板
每一台PC机都有一个主板,主板上的器件通过总线相连。这些器件有CPU、存储器、外围芯片组、扩展插槽等。扩展插槽上一般插有RAM内存条和各类接口卡。
.接口卡
CPU对外部设备都不能直接控制,比如显示器、音箱、打印机等。直接控制这些设备工作的是插在扩展插槽上的接口卡。扩展插槽通过总线个CPU相连,所以接口卡也通过总线和CPU相连。CPU可以直接控制接口卡,从而实现对外设的间接控制。
.各类存储器芯片
RAM:随机存储器,可读可写,但必须带电存储,掉电后存储内容丢失。
ROM:只读存储器,只能读取数据不能写入,掉电后内容不丢失。
.内存地址空间
CPU在操控存储器的时候,把它们当做内存来对待。把它们总的看作一个由若干存储单元组成的逻辑存储器,这个逻辑存储器就是我们说说的内存地址空间。在汇编这门课中,我们面对的就是内存地址空间。内存地址空间的大小受CPU地址总线的宽度限制。8086CPU地址总线宽度为20,可以定位2的10次方个内存单元,即内存空间大小为1MB,80386CPU地址总线宽度为32,则内存地址空间最大为4GB。我们基于一个计算机硬件系统编程的时候,必须知道这个系统中的内存地址空间分配情况。这样才能保证读写操作是在预期存储器中进行的。最终运行程序的是CPU,我们用汇编编程的时候,必须从CPU的角度思考问题。
内存单元,CPU对存储器的读写,三大总线的更多相关文章
- DDR3内存详解,存储器结构+时序+初始化过程
DDR3内存详解,存储器结构+时序+初始化过程 标签: DDR3存储器博客 2017-06-17 16:10 1943人阅读 评论(1) 收藏 举报 分类: 硬件开发基础(2) 转自:http:/ ...
- 电脑内存和CPU的关系
http://zhidao.baidu.com/link?url=OmHYd0uUJ3elyOnx1Qpdw1GGhMQBzwbdKSwR62Dn6j0090-sR0sQWR02THP-uPx7cK6 ...
- CPU缓存是位于CPU与内存之间的临时数据交换器,它的容量比内存小的多但是交换速度却比内存要快得多。CPU缓存一般直接跟CPU芯片集成或位于主板总线互连的独立芯片上
一.什么是CPU缓存 1. CPU缓存的来历 众所周知,CPU是计算机的大脑,它负责执行程序的指令,而内存负责存数据, 包括程序自身的数据.在很多年前,CPU的频率与内存总线的频率在同一层面上.内存的 ...
- 基础知识:语言、编程、计算机组成、cpu、存储器
2019年3月18日一. 语言:一种事物与另外一种事物沟通的介质. 编程语言:程序员与计算机沟通的介质. 编程:把要让计算机做的事用一种编程语言表达出来. ...
- java多线程下如何调用一个共同的内存单元(调用同一个对象)
/* * 关于线程下共享相同的内存单元(包括代码与数据) * ,并利用这些共享单元来实现数据交换,实时通信与必要的同步操作. * 对于Thread(Runnable target)构造方法创建的线程, ...
- 转---高并发Web服务的演变——节约系统内存和CPU
[问底]徐汉彬:高并发Web服务的演变——节约系统内存和CPU 发表于22小时前| 4223次阅读| 来源CSDN| 22 条评论| 作者徐汉彬 问底Web服务内存CPU并发徐汉彬 摘要:现在的Web ...
- centos文件/文件夹操作-检查磁盘、内存、cpu使用情况-vi操作命令
Part1:CentOS文件/文件夹操作 1.新建文件夹 即创建目录 mkdir 文件名 新建一个名为test的文件夹在home下 vi source1 mkdir /home/test 注意:当创建 ...
- 计算机支持的最大内存与CPU之间的关系
在使用计算机时,其最大支持的内存是由 操作系统 和 硬件 两方面决定的. 先说一下硬件方面的因素,在计算机中 CPU的地址总线数目 决定了CPU 的 寻址 范围,这种由地址总线对应的地址称作为物理地 ...
- 浅析 Pycharm 内存、cpu 占用率
浅析 Pycharm 内存.cpu 占用率 本机配置参数: ------------------------------------------ Windows 10 专业版 X64 ----- ...
随机推荐
- plsql 存储过程 测试
plsql 存储过程 测试 CreationTime--2018年8月14日09点54分 Author:Marydon 1.找到要运行的存储过程-->选中-->右键-->测试 2 ...
- Linux下TCP最大连接数受限问题
一. 文件数限制修改1.用户级别查看Linux系统用户最大打开文件限制:# ulimit -n1024 (1) vi /etc/security/limits.confmysql soft nofil ...
- Web在线文件管理器(web os) KODExplorer
KODExplorer是款开源的Web在线文件管理.代码编辑器.它提供了类windows经典用户界面,一整套在线文件管理.文件预览.编辑.上传下载.在线解压缩.音乐播放功能.让你直接在浏览器端实现we ...
- 微博混合云DCP:极端流量下的峰值应对与架构挑战
摘要: 在2016杭州云栖大会的“开发者技术峰会”上,来自新浪微博的资深运维架构师王关胜带来题为<微博混合云DCP:极端流量下的峰值应对与架构挑战>的精彩分享,分享中他从微博业务背景及峰值 ...
- Docker镜像仓库Harbor之搭建及配置
目录 Harbor介绍环境.软件准备Harbor服务搭建Harbor跨数据复制配置FAQ1.Harbor 介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的 ...
- PHP-九个非常有用的功能[转]
1. 函数的任意数目的参数你可能知道PHP允许你定义一个默认参数的函数.但你可能并不知道PHP还允许你定义一个完全任意的参数的函数下面是一个示例向你展示了默认参数的函数:// 两个默认参数的函数fun ...
- Swift3 获取版本号,比较版本大小
Swift获取应用版本号:version 1.获取本地版本号 /// 获取本地版本号 func getLocalVersion() -> String { var localVersion:St ...
- java多线程(五)之总结(转)
引 如果对什么是线程.什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内. 用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现.说这个 ...
- Windows远程连接局域网内或同一个网段或同一个路由器的某台机器
http://bbs.shendu.com/thread-1443245-1-1.html 亲自试验,具体操作如下: 我现在有三台机器和对应的ip地址(ip地址自己手动填写,不会网上搜) ...
- Java虚拟机学习 - 内存调优 ( 9 )
JVM调优主要是针对内存管理方面的调优,包括控制各个代的大小,GC策略.由于GC开始垃圾回收时会挂起应用线程,严重影响了性能,调优的目是为了尽量降低GC所导致的应用线程暂停时间. 减少Full GC次 ...