-
-
[旧帖] [讨论][讨论]计算机内存基础 0.00雪花
-
发表于: 2016-1-3 11:21 1265
-
本章涉及内容 内存寻址;
阅读群体:完全不懂的小白
(1)内存
首先,计算机程序在内存中才能运行,这点大家没意见吧!至于为什么,因为组成内存的存储器速度快,可读写。外部存储器,比如硬盘,则慢。为了迎合计算机cpu的速度,特意将内存开辟出来,用于正在执行的任务使用。所以说,我们编程,最终,程序开辟的空间是在内存中开辟的。
那么内存到底是个什么,刚才也说了,它就是个空间,放东西。那么这个空间多大,取决于你的地址总线位数。这里涉及一个地址总线问题。
一根电线,我通电,和不通电,是不是可以表示两个状态。
电线1 ------------- 通电为1,不通为0
电线2 -------------
电线1不通,电线2不通, 表示00
电线1不通,电线2通 表示01
电线1通 ,电线2不通 表示10
电线1通 ,电线2通 表示11
可以看到,两根线,我们可以有4个状态,那我们有32根线呢,2的32次方:2^32个
那么,我们把一个状态作为一个地址。就有2^32个地址。这些地址,就是我们可以找到的地址。你要说,还想要有,对不起,通过32根线找不到那么多。那么内存大小呢,内存中以字节为基本单位。也就是说,你一个地址,我给你8位的空间(1字节=8位 1byte=8bit 这里常常混淆,记住我们很少用bit 做单位,所以,你常常见到的都是byte,简写B)。也就是说,有多少个地址,乘以1个字节的空间大小,就是你内存的总大小。以32位为例,2^32=2^2*2^30=4GB(当表示存储容量时,2^10为K,2^20为M,2^30=G,2^10=1024)
地址线信号---- 》找到地址->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
内存
->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
简单点 ,里边的数可以是这样的,只要是0和1
0000 0000
1010 1010
0101 1001
1010 0100
1010 1010
那么,这些数字表示什么意思呢,可以是数据,可以是指令,程序说有的都将是这种01形式,这时就看程序是怎么读,怎么解释了。(不再展开)
阅读群体:完全不懂的小白
(1)内存
首先,计算机程序在内存中才能运行,这点大家没意见吧!至于为什么,因为组成内存的存储器速度快,可读写。外部存储器,比如硬盘,则慢。为了迎合计算机cpu的速度,特意将内存开辟出来,用于正在执行的任务使用。所以说,我们编程,最终,程序开辟的空间是在内存中开辟的。
那么内存到底是个什么,刚才也说了,它就是个空间,放东西。那么这个空间多大,取决于你的地址总线位数。这里涉及一个地址总线问题。
一根电线,我通电,和不通电,是不是可以表示两个状态。
电线1 ------------- 通电为1,不通为0
电线2 -------------
电线1不通,电线2不通, 表示00
电线1不通,电线2通 表示01
电线1通 ,电线2不通 表示10
电线1通 ,电线2通 表示11
可以看到,两根线,我们可以有4个状态,那我们有32根线呢,2的32次方:2^32个
那么,我们把一个状态作为一个地址。就有2^32个地址。这些地址,就是我们可以找到的地址。你要说,还想要有,对不起,通过32根线找不到那么多。那么内存大小呢,内存中以字节为基本单位。也就是说,你一个地址,我给你8位的空间(1字节=8位 1byte=8bit 这里常常混淆,记住我们很少用bit 做单位,所以,你常常见到的都是byte,简写B)。也就是说,有多少个地址,乘以1个字节的空间大小,就是你内存的总大小。以32位为例,2^32=2^2*2^30=4GB(当表示存储容量时,2^10为K,2^20为M,2^30=G,2^10=1024)
地址线信号---- 》找到地址->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
内存
->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
->【bit】【bit】【bit】【bit】【bit】【bit】【bit】【bit】
简单点 ,里边的数可以是这样的,只要是0和1
0000 0000
1010 1010
0101 1001
1010 0100
1010 1010
那么,这些数字表示什么意思呢,可以是数据,可以是指令,程序说有的都将是这种01形式,这时就看程序是怎么读,怎么解释了。(不再展开)
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
赞赏
看原图
赞赏
雪币:
留言: