内存是个数字电路模块,电路运行时,可以输出高电平和低电平,作为编程时我们需要的是符号0和1(现在的话,编程的话不是直接用0和1,是用各种语言,比如vb,vc,c++等,但编程好了之后,软件编译后肯定最终转化为0和1的编码),那怎么和硬件电路的高电平和低电平联系起来呢?科学的先行者就想到了,用1代表高电平,0代表低电平,于是如果你在编程时输入了16个不同的0或者1的话,作为在硬件电路里,他就在相应的电路里面保存16个高或低电平,这里的话是在内存里保存了16个高或低电平。这样我们看起来的话就好像在电脑里存储了16个0或1。
不知道懂不懂二进制。举个例子,3位的话,是从000-111,他们分别是000,001,010,011,100,101,110,111,就有8个数字可以代表。比如000代表0,001代表1,010代表2,011代表3,以此类推。同理,如果是16位的话,是从0000000000000000-1111111111111111(0000-FFFFH)=0-65536。那我们要表示负数,就想到了一半代表负数,一半代表正数,于是规定16位的话一半,655536/2=32768,就代表-32,768 到 32,767 。
现在的内存都很大了,比如1G内存,就有1024*1024*1024*8=8589934592 位。
这些是数字电路知识。我不知道有没有表达清楚。还有问题,请留言。
[
本帖最后由 vbvcr51 于 2013-11-21 12:39 编辑 ]