八卦图与二进制的联想
易有太极,是生两仪,两仪生四象,四象生八卦!
计算机都涉及到哪些数制?二进制(Binary),八进制(Octal),十进制(Decimal),十六进制(Hexadecimal)
二进制用于电脑识别
十进制用于人来识别
而八进制与十六进制就是用来协调人和计算机矛盾的进制
二进制有极大的优势:易于物理实现,二进制运算规则简单,机器可靠性高,通用性强,可用于逻辑运算
二进制也拥有极大的弱点:书写冗长
那么各进制之间就涉及到如何转换:
权值(位值):由位置决定数值大小的值,比如十进制数1222拥有四个权值,10的三次方,10的二次方,10的一次方
计算机中的数据与数值的区别:
数据:泛指可存储在计算机内的数字,数值,声音,文字,图片等所有信息。
数值:可计算的定量的数据。
几个重要概念:
机器数:(含符号)数在机器中的编码表示
真值:机器数所对应的真实数值,一般用十进制数形式
a = 10, b = -10 这里10,-10就是真值,但是这样的真值是给我们人类来看的,那么计算机机器如何来表示他们啦,这就是机器数
10的机器数是00001010, -10的机器数就是10001010
模数:计数器所能计的数值的个数就是模数,模数=最大值+1(与0等价)
三种编码方式:原码,补码,反码,计算机根本不会做减法,对于任何一个负数,只要求出这个负数的补码,减法就可以变成加法。
原码:+10的原码是 00001010, -10的原码是10001010
反码:正数的反码就是原码,负数的反码就是把负数的原码除符号位以外的各位取反
+10的反码是00001010, -10的反码是11110101, +8的反码是00001000,-8的反码是11110111
补码:正数的补码就是原码本身,也就是说,正数的原码,反码,补码是一样的,而负数的补码是在该负数的反码的基础上 + 1
+10的补码是00001010, -10的补码是11110110, +2的补码是00000010,-2的补码是11111110
关于计算机中,计算机表示一个数值是按原码的方式在内存中表示的,但是计算机在数值之间的计算,就是按数值的补码来计算的,在计算的时候符号位和数值部分一样参加运算。