查看: 857|回复: 6

C++教学:二进制-风之神韵

[复制链接]

1

主题

342

帖子

7万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
75866
发表于 2015-9-30 21:31:46 | 显示全部楼层 |阅读模式




在继续内存的话题之前,我们不得不说到C++的各种类型的变量,说到变量就得了解各种类型变量在内存中所占的空间大小,而内存中或者其他存储设备存贮数据的方式都是以二进制来存储,所以最终我们还必须得先了解下计算机中的二进制到底是怎么回事。
  我们每个人都知道十进制,就是在数数的时候,逢十进一,在做减法的时候借一当十。小学生都会。但为什么我们对十进制这么了解,为什么不是九进制,不是十一进制,或许我们的祖先看到自己有十个手指头的原因吧。。。
  那么二进制可以按照同理推算,逢二进一,借一当二。
  十进制的0 对应二进制的0  十进制的1 对应二进制的1  十进制的2 对应二进制的10(逢二向高一位进1)  十进制的3 对应二进制的11  十进制的4 对应二进制的100(又进一位)
。。。5-1016-1107-1118-10009-100110-101011-101112-110013-110114-111015-1111。。。
  第一次接触二进制的朋友看到上面的一一对应第一反应就是,算起来有点使不上劲的感觉,写起来还麻烦,看起来不顺眼,为什么计算机的存储和计算会用这么麻烦的方式??原因是计算机用起来很顺手,为什么,通俗的讲下计算机没有像人类一样的大脑细胞组织,有的是一个个的小电子零件,每个零件可以通电或者放电,效果就像开关一开一关。开代表着1,关代表着0。而恰好这种开关成本很低,体积又小的看不到,稳定性又极好,那么可以为一个计算机配置超大数量的小开关,排列在那里,等待着我们把它们设置成一堆01001001101010100101。。。。。。
  这样的方式,计算机就可以为我们存数比如整数8这样的数字,在硬盘中就是把某片连续的四个小开关分别置为1000。
  当然存储几个数字还不够过瘾,我们存数一个游戏模型又是什么样的方式呢?  快速的介绍下:模型呈现在我们眼前是由一堆可见的面片堆到一起的物体。但是边再多的多边形面片都是由三角形组成,三角形由三条线组成,每条线由两个点组成,每个点都是float浮点型数值,每个float类型的数都是由32位组成,看以看做是32个小开关在构成一个float数值。  举个例子,模型的某个点的三维坐标是16,0,10,那么有三组小开关,每组32个,他们的闭合状态如下:
16: 00000000 00000000 00000000 000100000: 00000000 00000000 00000000 0000000010: 00000000 00000000 00000000 00001010
  你也许会怀疑一个模型这么多点,开关够用吧,答案是绝对够用,多的你都无法想象。很神奇。  那么最后就让我们不严格的来算一下你的硬盘有多少个小开关。  如果你的硬盘是1TB,那么:
1TB = 1024GB = 1024*1024MB = 1024*1024*1024KB=1024*1024*1024*1024 Byte (字节)=1024*1024*1024*1024*8 Bit(一个比特就是一个开关)=2的10次方 * 2的10次方 * 2的10次方 * 2的10次方 * 2的3次方=2的43次方=8796093022208
  我们查看硬盘空间通常是只精确到字节单位,所以上述结果除以8,就是字节的单位。
  这一节我们并没有涉及太多的二进制计算,只是在数数,目的就是了解我们的计算机大致是如何存数数据的。下一次我们继续深入。
微信订阅号搜索“风之神韵”,关注随时获取更多教学信息。
http://i.youku.com/u/UMTE5MzA2NDA0
回复

使用道具 举报

0

主题

898

帖子

2951

积分

vip会员

Rank: 1

积分
2951
发表于 2015-10-12 23:46:04 | 显示全部楼层
哈哈 好怕怕  我每次看帖必回的  藏了   
回复 支持 反对

使用道具 举报

0

主题

884

帖子

2975

积分

vip会员

Rank: 1

积分
2975
发表于 2015-10-13 01:20:08 | 显示全部楼层
青春就像卫生纸 看着挺多的,用着用着就不够了     
回复 支持 反对

使用道具 举报

0

主题

911

帖子

2978

积分

vip会员

Rank: 1

积分
2978
发表于 2015-10-13 03:59:57 | 显示全部楼层
ding   支持  
回复 支持 反对

使用道具 举报

0

主题

869

帖子

2835

积分

vip会员

Rank: 1

积分
2835
发表于 2015-10-13 08:30:18 | 显示全部楼层
楼主,是你让我深深地理解了‘人外有人,天外有天’这句话 谢谢侬     
回复 支持 反对

使用道具 举报

0

主题

935

帖子

3096

积分

vip会员

Rank: 1

积分
3096
发表于 2015-10-13 09:41:03 | 显示全部楼层
我怀疑楼主用的是金山快译且额外附带了中对中翻译   
回复 支持 反对

使用道具 举报

0

主题

808

帖子

2652

积分

vip会员

Rank: 1

积分
2652
发表于 2015-10-13 14:00:47 | 显示全部楼层
我怎么就踩不死你呢   
回复 支持 反对

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | enginedx注册

本版积分规则

 
 



邮件留言:


 
返回顶部