古人哲学居然与计算机信息编码不谋而合?
扫描二维码
随时随地手机看文章
首先我们看看《易传·系辞上传》,“易有太极,是生两仪,两仪生四象,四象生八卦。”从以下这个图就很好理解:
细心的你也许会发现,这是二进制的级数增长,这不就是1,2,4,8么!
道是独一无二的,道本身包含阴阳二气,阴阳二气相交而形成一种适匀的状态,万物在这种状态中产生。
类似的,还有纸鸢(风筝)。现在中国风筝有俩流派,即“北潍坊,南阳江”。
结绳
故夜战多火鼓,昼战多旌旗,所以变人之耳目也。
《孙子兵法》
欧洲的科学家在18世纪逐渐发现电的各种特质。同时开始有人研究使用电来传递讯息的可能。早在1753年,一名英国人便提出使用静电来拍发电报。
百度百科
摩尔斯电码也被称作摩斯密码,是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母、数字和标点符号。它发明于1837年,是一种早期的数字化通信形式。不同于现代化的数字通讯,摩尔斯电码只使用零和一两种状态的二进制代码,它的代码包括五种:短促的点信号“・”,读“滴”(Di)保持一定时间的长信号“—”,读“嗒”(Da)表示点和划之间的停顿、每个词之间中等的停顿,以及句子之间长的停顿。
百度百科
比特(bit):也可称为“位”,是计算机信息中的最小单位,是 binary digit(二进制数位) 的 缩写,指二进制中的一位
字节(Byte):计算机中信息计量的一种单位,一个位就代表“0”或“1”,每8个位(bit)组成一个字节(Byte)
字符(Character):文字与符号的总称,可以是各个国家的文字、标点符号、图形符号、数字等
字符集(Character Set):是多个字符的集合
编码(Encoding): 信息从一种形式或格式转换为另一种形式的过程
解码(decoding): 编码的逆过程
字符编码(Character Encoding): 按照何种规则存储字符
4位和6位也是在早期比较常用的,它们当时被用在美国陆军(FIELDATA)和海军常见的可打印图形模式。这些表示包括字母数字字符和特殊的图形符号。这些集合在1963年扩展为7位编码,称为美国信息交换标准代码(ASCII),称为联邦信息处理标准,取代了1960年代美国政府和大学不同部门使用的不兼容的电传打印机代码。 这个就是ASCII的由来。呵呵,ASCII字符其实用7位就够了,不是8位哦。
十进制 |
二进制 |
八进制 |
十六进制 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
2 | 10 |
2 | 2 |
3 |
11 | 3 |
3 |
4 |
100 |
4 |
4 |
5 |
101 |
5 |
5 |
6 |
110 |
6 |
6 |
7 |
111 | 7 |
7 |
8 |
1000 |
10 |
8 |
9 |
1001 |
11 |
9 |
10 |
1010 |
12 |
A |
11 |
1011 |
13 |
B |
12 |
1100 |
14 | C |
13 |
1101 |
15 |
D |
14 | 1110 |
16 |
E |
15 |
1111 |
17 |
F |
16 |
10000 |
100 |
10 |
'100', 2) > int(
4
'100', 3) > int(
9
'100', 4) > int(
16
'100', 7) > int(
49
'100', 8) > int(
64
'100', 10) > int(
100
'100', 16) > int(
256
'100', 17) > int(
289
'100', 35) > int(
1225
'100', 36) > int(
1296
'100', 55) > int(
Traceback (most recent call last):
File "
" , line 1, in <module>ValueError: int() base must be >= 2 and <= 36
BCD码(Binary-Coded Decimal),用4位二进制数来表示1位十进制数中的0~9这10个数码,是一种二进制的数字编码形式,用二进制编码的十进制代码。
如果不懂这个概念,要认真读几次上面这段话。简单地理解为,1位十进制数码用4位二进制数来表示,但根据这1位十进制数码和4位二进制数的对应关系(或者表达关系)不一样而有不同的形式,如8421码、2421码、5421码和余3码、余3循环码、格雷码,其中前面三种是有权码,后面三种是无权码。
有权码,自然二进制代码是按照二进制代码各位权值大小,以自然向下加一,逢二进一的方式来表示数值的大小所生成的代码。
显然,n位自然二进制代码共有2^n种状态取值组合,由于代码中各位的位权值分别为2^3,2^2,2^1,2^0,即8421,所以也称为8421码。这样每位二进制码元都有确定位权值的编码,称为有权码,属于恒权代码。相应的,没有确定位权值的编码叫无权码,也叫非恒权代码。
百度百科——有权码
5421和2421
十进制数 | 8421码 | 5421码 | 2421码 |
0 | 0000 | 0000 | 0000 |
1 | 0001 | 0001 | 0001 |
2 | 0010 | 0010 | 0010 |
3 | 0011 | 0011 | 0011 |
4 | 0100 | 0100 | 0100 |
5 | 0101 | 1000 | 1011 |
6 | 0110 | 1001 | 1100 |
7 | 0111 | 1010 | 1101 |
8 | 1000 | 1011 | 1110 |
9 | 1001 | 1100 | 1111 |
格雷码是一种具有反射特性和循环特性的单步自补码,其循环和单步特性消除了随机取数时出现重大错误的可能,其反射和自补特性使得对其进行求反操作也非常方便,所以,格雷码属于一种可靠性编码,是一种错误最小化的编码方式,因此格雷码在通信和测量技术中得到广泛应用。
格雷码属于可靠性编码,是一种错误最小化的编码方式。因为,虽然自然二进制码可以直接由数/模转换器转换成模拟信号,但在某些情况,例如从十进制的3转换为4时二进制码的每一位都要变,能使数字电路产生很大的尖峰电流脉冲。
格雷码Gray Code详解(https://www.cnblogs.com/zhuruibi/p/8988044.html)
-
对n位二进制的码字,从右到左,以0到n-1编号 -
如果二进制码字的第i位和i+1位相同,则对应的格雷码的第i位为0,否则为1(当i+1=n时,二进制码字的第n位被认为是0,即第n-1位不变)
-END-
来源 | 嵌入式软件实战派
作者 | 实战派掌门
| 整理文章为传播相关技术,版权归原作者所有 |
| 如有侵权,请联系删除 |
【1】飞机上一般是什么操作系统?
【2】高速CAN、容错CAN、LIN总线有什么区别?
【3】鸿蒙和安卓,到底有什么区别?
【4】大佬终于把鸿蒙OS讲明白了,收藏了!
【5】必看!影响嵌入式薪资的各种原因!
免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!