大家好奇为啥前言我用一张八卦图来做封面,这个图就是今天谈的主要内容
太极生两仪,两仪生四象,而后得八卦,八卦相重得六十四卦,这句话大家都听说过
两仪是阴阳我们用 - -表示阴,用---表示阳(应该是一条不间断的线)如果用0表示阴,用1表示阳,那么两仪就变成0或1来表示,两仪也是代表一位,也就是说,一个时候或状态只有一个值,要么是0要么是1,在计算机中就表示1位,也就是1bit
四象就是有两个阴阳组合在一起形成四种状态,分别为太阴、少阳、少阴和太阳,如果还是用01来表示,那么太阴就是00,少阳就是01,少阴就是10,太阳就是11,当然有人会说我少阳用10,少阴用01行不行?这个就在你的定义,至于这个问题我们稍后再讨论,先就按照我的定义来。
八卦就是一个四象一个太极相重而成上图的顺序按01表示:坤000、艮001坎010巽011震100离101兑110乾111,
六十四卦呢?就是两个八卦相重,有六爻,爻可以理解为位,那么六十四卦就可以用6位二进制来表示,就是可以定义为000000到111111
我们可以看到二、四、八、六十四,这个是状态数,位数对应1,2,3,6,根据我们的数学知识,两种状态不能同时出现,比如说一盏灯的亮灭,有两种可能要么亮,要么灭,但一个时刻只有一种状态,两盏灯会出现四种情况,一个位可以认为一盏灯,它的亮灭表示它的状态0、1,如果再有二进制不明白可以这样理解,或者想想八卦图。
初识二进制之后就是二进制的按序排列问题,我们十进制数是按照0,1,2,4,5,6,7,8,9,......这样的顺序每个加1,这样连续增加,1位十进制数有十个数字来表示,所以他有十种状态,可表示十个数,而二进制每个位只有两种状态,所以只能表示两个数0、1,如果要表示2怎么办?仿照十进制的进位,用两位二进制来表示,也就是10表示2,那么100表示十进制4,1000表示十进制8,10000表示十进制16,因此可以得到一个规律,凡是最高为1且其余位为0的均是2的整数次幂,不算1,后面有几个0就是几次幂,比如前面的16就是2的4次方。
如果要想深入学习计算机,二进制一定要学好,掌握到什么程度?最起码要知道0-16按顺序写出或背过二进制的表示
二进制 | 八进制 | 十进制 | 十六进制 | 二进制 | 八进制 | 十进制 | 十六进制 |
---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 1001 | 11 | 9 | 9 |
1 | 1 | 1 | 1 | 1010 | 12 | 10 | A |
10 | 2 | 2 | 2 | 1011 | 13 | 11 | B |
11 | 3 | 3 | 3 | 1100 | 14 | 12 | C |
100 | 4 | 4 | 4 | 1101 | 15 | 13 | D |
101 | 5 | 5 | 5 | 1110 | 16 | 14 | E |
110 | 6 | 6 | 6 | 1111 | 17 | 15 | F |
111 | 7 | 7 | 7 | 10000 | 20 | 16 | 10 |
1000 | 10 | 8 | 8 | 10001 | 21 | 17 | 11 |
到这里我们再看一下易经中的话
“乾卦”的具体象征意义如下:
乾为天,在古人看来,天上的日月星辰有周期性、规律性、轨迹性,所以天代表着“圆”的意思,是环绕一周之意。
乾卦所代表的方位为西北寒度,所以喻有寒、冰之意。
乾所代的天气为晴天,或是干旱之状。
乾卦所代表的颜色是红色,也是代表着旺盛的生命力、感情热烈的一种色彩。
乾所代表的动物为良马、老马、驳马等,也指象、天鹅、狮子。
乾代表的收获景色就是木果结于树梢,圆而在上,乾圆之象。
乾所对应的五行为金。
乾所代表的场所为首都、大郡、大广场等。
乾卦所代表的味道为辛、辣。
通过上面的文字描述,一个卦象居然有这么多解释?我们不算命,看这么多解释干嘛?上文中曾说过,少阴少阳如何定义10或01的问题,这个就看使用者如何定义,那么在计算机中有和这个乾卦解释相类似的东西吗?就是数据类型,基本数据类型一般有整形、字符型、浮点型,那么内存中能实际存字符吗?答案是不能,内存中只能存储01串,就像乾,既可以代表天气中的晴天,也可以表示颜色中的红色,如果们定义111为乾的符号,那么111可以表示颜色中的红色,也可以解释为天气中的晴天,计算机中一般以字节来作为存储单元,如果我们定义一个字符型变量,在内存中占一个字节,那么它怎么表示字符呢?就是用这种方式人为规定什么表示什么,定义字符型变量之后,那么该变量当中的01代码就被解释为字符,而不是直接存储字符,但是如果规定不一致,那么就会出现解释错误的现象,比如我们上网的时候,打开某个网页,会出现乱码就是因为你和服务器之间没有规定相同的编码,导致显示不正确,解决办法只有一个就是统一编码,我们现在英文常用编码为ASCII,中文为GB码,当然还有其它形式的编码,这个编码的目的就是使计算机内的01代码可以解释为相应的内容。不同的编码格式就会使相同的01代码串有不同的意义,所以我们不但有字符编码,还有整形数的编码,浮点数的编码,编码就是解释这个01代码串是表示在什么范围内表示何种意义。