指针第一节

内存和地址

举个例子 为了在宿舍能快速找到一个同学,就得先知道他住在哪栋哪一间 所以宿舍每一间都有自己的编号 当然计算机也不例外

CPU要进行数据处理就得先在内存中读取数据,处理后的数据

也会返回到内存中去 内存空间是如何进行高效管理的呢?请往下看

其实内存也像 宿舍一样 被划分为一个个内存单元  每个内存单元能存下一个字节 8个比特位

最小的内存单位是bit-比特位 1个bit可以存储2进制位的0或1;
1byte = 8bit
1kb = 1024 kb         
1MB = 1024KB
1GB =  1024MB
1TB = 1024GB
1PB = 1024 GB
.........

内存单元也有自己的编号 所以CPY可以快速地找到一个内存空间 生活中我们门牌号叫做地址,内存中内存单元也叫做地址,在C语言中给地址起了新的名字叫做指针。

所以内存单元编号=地址=指针

内存编号是以16进制进行编号的

 

        CPU访问内存中的某个字节空间的时候 必须知道字节空间在内存的什么位置,所以给内存进行了编止

计算机中的编止并不是把每个字节的地址记录下来,而是通过硬件设施完成的

就如同吉他和钢琴的琴声是制造者已经设计好的

计算机内有很多的硬件单元 硬件单元之间需要协同工作 也就是需要进行数据的传输 那怎样用进行数据传输的呢? 当然是用线连接起来 CPU和内存之间进行数据之间传输的线有地址总线 数据总线 控制总线 首先通过数据总线 决定CPU是读取数据还是存入数据 然后在通过地址总线找到相应的数据 最后通过数据总线对数据的读取或存入       

我们主要关注地址总线 举个例子

32位机器就有32根地址总线 每根只有两种状态 0和1(有无电脉冲),所以1根线就有两种含义 

2根就有4种 32根就有2^32种 每一种都代表的一个地址

地址信息下达给内存 在内存上,就可以找到改地址的对应数据,将数据通过数据总线传入CPU寄存器中去

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值