迅维网
标题:
二进制与内存的关系(原创,初学者必读)
[打印本页]
作者:
贝贝
时间:
2009-7-27 01:29
标题:
二进制与内存的关系(原创,初学者必读)
本帖最后由 贝贝 于 2009-7-31 22:56 编辑
一、十进制:
人类生来十指,最初用手指计数。故,单一的数可以表示0-9,共十个。遇到大于等于10的数值,则需进位。例:15是两位数,表示15=10+5=1×10^1+5×10^0。这里的10^n叫做“位权”。
12345(一万二千三百四十五)可以换算成:12345=1×10000+2×1000+3×100+4×10+5×1,又:12345=1×10^4+2×10^3+3×10^2+4×10^1+5×10^0。
所以说12345这种计数方法,是采用了技术手段的,以乘法和加法相结合的形式,完成对一个宠大数值的压缩,以最简约的形式进行表达和存储。相当于算术方面使用的“RAR”软件。
十进制是一种逢十倍向前进一位的计量数值的技术方法。最直接适用于人脑对数值的思维。
二、二进制:
二进制也是一种计量数值的技术方法。相对于十进制而言,技术上完全等同。
电脑生来只能识别两种数:0和1,因为最初制造电脑时使用的电子真空管,只有开、关两种状态,并不是它只长了二个手指头。现在发展到了超大规模集成电路,也仍然延续着。
电脑数到我们人类的2这个数,用单一位数值已经不能表达,只能向前进位。2(十进制)=1×2^1+0×2^0=10(二进制)。
二进制四则运算规则:
加法 0+0=0,0+1=1+0=1,1+1=10
减法 0-0=0,1-0=1,1-1=0,0-1=-1
乘法 0×0=0,0×1=1×0=0,1×1=1
除法 0÷1=0,1÷1=1
二进制同样是“位权制”。同一个数码1,在不同数位上表示的数值是不同的。如11111,从右往左数,第一位的1就是一,第二位的1表示二,第三位的1表示四,第四位的1表示八,第五位的1表示十六。用大家熟悉的十进制说明这个二进制数的含意,有以下关系式:
11111(二进制)=1×2^4+1×2^3+1×2^2+1×2^1+1×2^0=31(十进制)
一个二进制整数,从右边第一位起,各位的计数单位分别是(十进制)1,2,4,8,…,2^n,…。
也即是:逢二倍向前进一位。
三、内存中使用的二进制:
1,64位的BANK。
现代PC中,CPU对内存的存取数据量,单通道的情况下,一次操作必须处理64位长度的二进制数值的数据,相当于十进制数值中的1844亿亿多种各不相同数值(64位的操作系统即是如此)。双通道则是这个数值的2次方值。雷死你的天文数字。
2,内存的选址方式和容量。
内存是一个模组,是由多个颗粒构成。而每个颗粒中,寻找每一个存储单元,是以行(ROW)与列(COLUMN)的乘积的形式表达的。
以一条128Mbytes容量的内存条为例:
单一的16位颗粒容量是32Mbytes,它的选址行数是13,即是13位长度的二进制数值,列数是9,即是9位长度的二进制数值,那么它的寻址能力就是22位长度的二进制数值。等于十进制数的4194304(寻址数量)。 电脑对内存进行寻址的同时,颗粒内部分为4个Bank的页面,它们是颗粒内部的逻辑构造。
该颗粒换算成
十进制
的容量计算方法如下:
4194304(寻址数量)×16bits(颗位位宽)=67108864bits(单元位);
67108864bits(单元位)÷1048576(1M)=64Mbits(单元位);
64Mbits(单元位)÷8bits(1字节)=8Mbytes(字节);
8Mbytes(字节)×4bank(颗粒内核的逻辑bank)=32Mbytes(颗粒总容量)。
采用与
二进制
相关进行计算时,上述的计算过程可以简化为:
{[2^22(寻址数量)×16bits(颗位位宽)]÷[2^20(1M)×8bits(1字节)]}×4(颗粒内核的逻辑bank)=32Mbytes(颗粒总容量)。
***
颗粒设计制造的原因:这种颗粒比8位的等容量颗粒寻址行数多了一个二进制位,寻址列数又少了一个二进制位,这就是为什么16位的颗粒不能做为8位颗粒直接降位替换的原因了。
登录/注册后看高清大图
登录/注册后看高清大图
登录/注册后看高清大图
登录/注册后看高清大图
作者:
贝贝
时间:
2009-7-27 02:01
本帖最后由 贝贝 于 2009-7-27 02:09 编辑
轻松片刻:万百千
从前,有一个人去拜师学习。第一天,老师教他学习一个的“一”他很快学会了。老师表扬了他。第二天,学习写“二”字,就是在一的上边画一横。他也学会了。第三天,老师教他写“三”就是画三横线。他很聪明。认为一就是画一横,二就是画二横,三就是画三横。原来这么简单啊!我何必要拜师学习呢?他就想,我已经会了,就可以教别人了。也去当老师。后来一个名叫“万百千”的学生,向他学习。他就教学生写“一”。学生开始写完后交作业时候,给老师说:“老师,你给我的作业上写个名字吧。”他听了后傻了眼,但是不写吧,又怕学生笑话他。就说,作业放在这儿吧,我回来就给你写。第二天,学生去拿作业本时候,一看,上边画了很多横,原来几张纸也没有画完。学生问:“老师这是什么呀?”他说:“你的名字啊,谁叫你起这样麻烦的名字呢?叫我画了一万一百零一千个横。
作者:
幸福小男人
时间:
2009-7-27 08:30
看了版主第一个贴 真的脑子都看疼了·
在看看第二个 豁然开朗·轻松了很多·
作者:
杨伟鹏
时间:
2009-7-27 15:10
本帖最后由 杨伟鹏 于 2009-7-27 15:17 编辑
贝哥多谢了,放松一下有益于记忆力的提高.
作者:
西北浪人
时间:
2009-7-30 02:06
((2^13×2^9×4)×16)/2^20/8
作者:
多多
时间:
2009-7-31 20:17
标题:
原贴有错误
12345(一万二千三百四十五)可以换算成:12345=1×10000+4×1000+3×100+4×10+5×1
正确的应该为
12345(一万二千三百四十五)可以换算成:12345=1×10000+
2
×1000+3×100+4×10+5×1
作者:
贝贝
时间:
2009-7-31 22:57
本帖最后由 贝贝 于 2009-7-31 22:59 编辑
已经更正,谢谢。很多朋友曾经提点,在此一并感谢!
作者:
小莫莫
时间:
2009-8-5 15:06
好难啊 版主 能不能简单点?
作者:
贝贝
时间:
2009-8-6 08:27
本帖最后由 贝贝 于 2009-8-6 08:30 编辑
这要比我教学时的内容简单多了。教学时对二进制的讲解除了原理,还要学生演算。需要一个课时的。
仅是帮助学生理解的笑话和典故,就有三个,“万百千”是其中的一个。
作者:
共同者
时间:
2009-8-7 21:44
好东西啊 ,值得收藏 !!!
作者:
贝贝
时间:
2009-11-28 07:56
置顶一周,方便初学者
欢迎光临 迅维网 (https://www.chinafix.com/)
Powered by Discuz! X3.4