数制系统

来源:互联网 发布:mac上常用的软件 编辑:程序博客网 时间:2024/05/29 10:31

引入:为表示数值的大小,往往采用进位计数的方法组成多位数码,且每一位数码的构成及由低位向高位的进位都遵循一定的规则,这种计数制度称为进位计数制。在日常生活中有各种各样的数制,但在数制计数中经常使用的有二,八,十和十六进制。


基本概念

1.数码:如十进制中的1,2,3,4,5,6,7,8,9,0。
2.基数:数制所使用数码的个数。如二进制的基数为2。
3.位权:数制中某一位上的1所表示数值的大小(所处位置的价值)。例如:对于十进制的123,1的位权是100,2的位权是10,3的位权是1。按权展开为:

 (123)10=1*10^2+2*10^1+3*10^0

4.数制:计数的规则。
5.十进制:人们日常生活中最熟悉的进位计数制,逢十进一。
6.二进制:计算机系统中采用的进位计数制,逢二进一。
7.十六进制:人们在计算机指令代码和数据书写中经常使用的数制。


二进制的优点:二进制数的物理实现比较容易,例如,可以用二进制数的0和1表示电子器件中有脉冲和无脉冲。另外二进制数的物理实现比其他进制的物理实现要节省电子器件,再如,晶体管导通和截止时的电平用0和1表示;用0和1表示脉冲波形;使用触发器存储0和1页比较方便,因此在数字系统中都是采用二进制计数。


十六进制与十进制对照表(左10右16):

10-A,11-B,,,,,,15-F,16-10。

换算:

  1. 二,八,十六进制转换为十进制数:
    a. 1101(2)=1+0+4+8=13(10)
    b. 173(8)=3+56+64=123(10)
    c. 126(16)=6+32+256=294(10)

    2.十进制数转换为二,八,十六进制数:
    a. 100(10)=64+32+4=01100100(2)
    b. 100(10)=64+32+4=144(8)
    c. 100(10)=96+4=64(16)

    3.二进制转化为八进制和十六进制:
    a. 11010010(2)=(011)(010)(010)=322(8)
    b. 11010010(2)=(1101)(0010)=d2(16)

    4.十进制数转化为二进制数(小数情形):
    整数部分用“除二取整”法;小数部分采用“乘二取整”的方法。
    0.6875
    x 2
    1.3750 十分位=1 小数高位
    0.3750
    x 2
    0.7500 百分位=0
    x 2
    1.5000 千分位=1 小数低位
    所以十进制小数0.6875转化为二进制为0.101(按精确度要求取整)
    若需要将十进制数转化为任意R进制数(N)R,整数部分用乘R取余法计算,小数部分用除R取整法计算。


有符号的二进制数的编码表示

数字系统中人们经常在二进制数前用正号和负号表示二进制数的正负,这种二进制数称为真值;真值由符号和数值两部分组成,一般正号用“0”表示,负号用“1”表示,这样真值符号就数字化了。将真值的符号数字化以及真值的数值部分编码表示,称为机器数。符号部分和数值部分分别称为符号位和尾数。

1.原码:采用原码表示有符号的二进制数时,符号位用0表示二进制整数,用1表示二进制负数。位数部分与真值的数值部分相同,因此采用原码表示二进制数时,仅是符号位数字化了。

2.反码:采用反码表示二进制数时,符号位用0表示整数,用1表示负数,当符号位为0时,位数与真值的数值部分相同,当符号位为1时,尾数按位取反。

3.补码:采用补码表示二进制数时,符号位用0表示整数,用1表示负数,当符号位为0时,位数与真值的数值部分相同,当符号位为1时,尾数按位取反,然后在尾数的最低位再加1。


二进制编码

  1. BCD:二进制编码的十进制。
  2. 8421 BCD码。
  3. 2421 BCD码。
  4. 余三 BCD码:在每一个四位 8421 BCD码加上“0011”。
  5. 奇偶校验码。
  6. 格雷码:把一个二进制数从低位到高位按0-n排序,格雷码就是把原来二进制数(从第0位开始)的第n位和第n-1位做模二加法,所得结果作为格雷码的第n位。
  7. ASCII码。