欢迎进入“1”和“0”的花花世界,上篇给大家介绍的是逻辑门的一些逻辑关系,这篇我们来讨论一下由“1”和“0”组成的二进制是怎么回事?它俩又是怎样对数字、字母和字符等进行表示的呢?让我们一起来探个究竟吧!
二进制怎样表示十进制数字呢?
其实用二进制表示十进制的数字也是一串数字,只是这串数字只会出现0和1,而十进制可以出现0~9中的任何一个。
看个例子:用二进制表示十进制数字7,如下:
0111(二进制)=7(十进制)
十进制数字是遇9进1,二进制则是遇2进1。
那10110111(二进制)表示的十进制数字是多少呢?看下图
再看看二进制数的计算,不知道你还记得多少?看下图温故一下吧!
在二进制中,每个“1”或“0”叫做一个“比特(bit)”。在10110111(二进制)这个例子里,我们用了8个比特,8个比特可以表示数的范围为0~255共256个数字,最小数为0,即00000000。
最大数为255,即11111111。
我们经常会听到8位机或8-bit图像等,其实意思就是这些计算机大部分时候都是8位8位的来处理数据,因此,我们将8个比特叫一个字节(byte),那10个字节就是80个比特。
通常,我们将一个“千字节”用2^10个字节来表示,也就是1024个字节。
你使用的是32位?还是64位的计算机?不管是32位还是64位,都意味着计算机是一块块处理信息的,每块都是32位或64位的二进制,32位二进制,能表示的最大数差不多是43亿,用二进制表示的话,就是32个“1”,这就是为什么Instagram图片那么清晰的原因了。
当然,数字不光只有正数,还有负数,大部分计算机都是用第一个bit表示数值的正负,1为负,0为正,然后剩余位数表示数字。
这样,一个32位计算机可以表示的正负数范围就是:+20亿到-20亿,这个数字看起来很大,但是很多时候却是不够用的,因此,我们现在用的计算机差不多都是64位,64位可以表示的最大数是9.2 x 10^9。
除了负数和正数之外,计算机还要处理非整数,比如 12.7 和 3.14,或者“星历 43989.1”,像这种带有小数点的数字,我们叫它“浮点数”,因为小数点可以在数字之间移动。
关于浮点数的表示方法有很多,最常见的是IEEE 754标准,这个标准的本质上是用类似科学计数法的方法,来存储十进制值。
例如:625.9可以写成0.6259×10^3
注意:.
6259叫做“有效位数”,3是指数。
在32位浮点数中,第1位表示数字的正负,接下来8位表示指数,剩下23位表示有效位数。
再来看看字母的表示方法吧!
在计算机里,字母也是可以用数字表示的哦!最直接的方法是对字母进行编号:A为1,B为2,C为3,等等。
ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码发明于1963年,它可以表示128个不同的值,不仅可以表示大、小写字母,还可以表示数字0~9、标点符号和特殊字符。
举例:小写字母“a”用数字97表示,大写字母“A”是65,“:”是58,“)”是41。
除此之外,ASCII还包含特殊命令符号,例如换行符,用来告诉计算机换行。在老计算机系统中,如果没换行符,文字会超出屏幕边缘。
因为ASCII的使用,使不同公司的计算机能交换数据,这种通用交换信息的能力叫做“互用性”。
当时的ASCII是为英语设计的,只有7位,但是我们的字节有8位,从128到255的空字符,就可以根据各个国家的需要进行使用,这对大部分国家是够用。但是像咱们中国和日本这样有数千个字符的国家,8位根本没办法表示所有的字符!
为了解决这个问题,各个国家都发明了多字节编码方案,但又不相互兼容,所以1992年诞生了一种统一所有编码的标准——Unicode标准,它解决了不同国家不同字符编码方案的局限性。
Unicode把所有语言都统一到一套编码里,最常见的Unicode是16位的,它有超过一百万个位置,除了可以表示所有语言的每个字符外,还有位置表示数学符号,甚至Emoji这样的图形字符。
重要的是,这些标准归根到底是一长串比特:短信、视频、互联网上的每个网页,甚至操作系统,都只不过是一长串“1”和“0”。
感觉“1”和“0”的世界怎么样?欢迎下方告诉我哦!
-
二进制
+关注
关注
2文章
795浏览量
41643 -
十进制
+关注
关注
0文章
67浏览量
13207
原文标题:1+1=0?走进“1”和“0”的世界看个究竟吧
文章出处:【微信号:eda365wx,微信公众号:EDA365电子论坛】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论