各种硬件对应”位数“,各种字长,编址方式的区分。

1.编址方式

a.存储元,存储单元,存储体/存储矩阵,存储器/存储系统。

①存储元:能够完成一个二进制读写的叫做存储元。
②存储单元:每行/列(具体这行/列有多少个存储元要看编制方式)存储元叫做一个存储单元,也叫存储字/存储字长。
③存储体/存储矩阵:所有的存储单元组成的叫做存储体或存储矩阵。
④存储器:由存储体、地址译码器和控制电路组成。
⑤存储系统:存储系统是指计算机中由存放程序和数据的各种存储设备、控制部件及管理信息调度的设备(硬件)和算法(软件)所组成的系统。

存储系统>存储器>存储体>存储单元>存储元
在这里插入图片描述

b.按字编址和按字节编址

超级重点:其实就是每行划分的存储元的个数不同。(基于目录a介绍的基础)
1.按字节编址:1B=8bit,需要用8个存储元件/存储元构成。即一个存储单元8位。
2.按字编址:假设告知一个字16位。则位为16bit,需要用16个存储元件/存储元构成一个存储单元。
3.通俗的说:按字节编址,就是我每次选择八个bit(因为一字节就是八个bit,具体为啥不叫按8bit编制,问就是龟腚),然后给这8bit一个编号(就是地址),用于区分其他地址以及便于对其操作。那么问题来了有没有没可能按比特编址,因为你就算存储最简单的字符都需要好几个bit,‌所以计算机不按比特编址的主要原因是因为比特(bit)作为最小的数据单位,无法表示完整的信息,而字节(byte)是存储和传输数据的基本单位,具有更好的兼容性和效率。

假设主存大小1KB:
按字节编址:1KB=213bit。共有213/8=210个存储单元。(8个存储元为一个存储单元)则寻址范围为:0-210-1。即0000000000-1111111111。其中每一个地址(共210个地址),代表一个存储单元,代表8bit,代表1B。这就是按字节编址。
按字编址:假设一个字16位。共有213bit(存储元件)。共有213/16=29个存储单元(16个存储元位一个存储单元)则寻址范围为:0-29-1。即000000000-111111111。其中每一个地址(共29个地址),代表一个存储单元,代表16bit,代表2B,代表一个字。这就是按字编址。

2.各种易混淆的"长度概念"

①字,字长/机器字长,指令字长,存储字长。

1.字长:也称机器字长,通常指CPU内部用于整数运算的数据通路的宽度,因此机器字长等于CPU内部用于整数运算的运算器位数和通用寄存器宽度。
2.字:用来表示被处理信息的单位,用来“度量”数据类型的宽度。就好比,用G度量文件大小一样,是一个度量单位。
3.指令字长:一条指令中包含的二进制代码的位数。
4.存储字长:一个存储单元存储的二进制代码长度,即包含多少个存储元,多少个存储元件。

3.常见硬件对应位数及原因。

硬件名称位数
MAR(地址寄存器)对应存储单元个数
MDR(数据寄存器)存储字长
ALU(运算逻辑元件)机器字长
通用寄存器组机器字长
IR(指令寄存器)指令字长
PC(程序计数器)对应存储单元个数,MAR位数

①通用寄存器位数组
ALU操作数的来源通常是通用寄存器,因此
通用寄存器位数=输入ALU的操作数的位数=机器字长。

②IR指令寄存器位数
IR用于保存当前正在执行或解码的指令。在简单的处理器中,每条要执行的指令都被加载到IR中,其位数取决于指令字长。

③PC程序计数器位数
用于存放下一条要执行的指令在主存中的地址。位数取决于可寻址内存,例如,PC宽度为32位 能够寻址2^32个存储单元。所以PC的位数n反映了主存的容量。

④MAR地址寄存器位数
MAR里保存着需要访问的数据的内存位置。位数同PC,由存储单元的个数决定。

⑤MDR数据寄存器位数
MDR充当处理器和内存单元之间的缓冲区,存放指令或地址(间接寻址)。一个要存储的字必须传送到MDR ,从那里转到特定的内存位置。MDR的位数由存储字长决定。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

源梦想

制作不易,给几分窝囊费大哥们。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值