分类: C/C++
2007-03-10 00:05:00
1.2 数制和码制
1 . 2 . 1数 制
一、十进制
1、表示法
与同学讨论二、八、十六进制的表示方法及特点
二、二进制
三、八进制和十六进制
1.八进制
逢八进一;系数0~7 ;基数8; 权8 n。
2.十六进制
逢十六进一;系数:0~9、A、B、C、D、E、F;基数16;权16n。
表1.2.1 十进制、二进制、八进制、十六进制对照表
1 . 2 . 2 不同数制间的转换
一、各种数制转换成十进制
二进制、八进制、十六进制转换成十进制时,只要将它们按权展开,求出各加权系数的和,便得到相应进制数对应的十进制数。
例:
二、十进制转换为二进制
将十进制数的整数部分转换为二进制数采用“除2取余法”;
将十进制小数部分转换为二进制数采用“乘2取整法”。
例1.1.1将十进制数(107.625)10转换成二进制数。
将十进制数的整数部分转换为二进制数采用“除2取余法”,它是将整数部分逐次被2除,依次记下余数,直到商为0。第一个余数为二进制数的最低位,最后一个余数为最高位。
解:① 整数部分转换
所以,
②小数部分转换
将十进制小数部分转换为二进制数采用“乘2取整法”,它是将小数部分连续乘以2,取乘数的整数部分作为二进制数的小数。
由此可得十进制数(107.625)10对应的二进制数为
(107.625)10=(1101011.101)2
三、二进制与八进制、十六进制间相互转换
1.二进制和八进制间的相互转换
(1) 二进制数转换成八进制数。
二
进制数转换为八进制数的方法是:整数部分从低位开始,每三位二进制数为一组,最后不足三位的,则在高位加0补足三位为止;小数点后的二进制数则从高位开
始,每三位二进制数为一组,最后不足三位的,则在低位加0补足三位,然后用对应的八进制数来代替,再按顺序排列写出对应的八进制数。
例1.1.2 将二进制数(11100101.11101011)2转换成八进制数。
(11100101.11101011)2=(345.726)8
(2) 八进制数转换成二进制数。
将每位八进制数用三位二进制数来代替,再按原来的顺序排列起来,便得到了相应的二进制数。
例1.1.3 将八进制数(745.361)8转换成二进制数。
(745.361)8= (111100101.011110001)2
2.二进制和十六进制间的相互转换
(1) 二进制数转换成十六进制数。
二进制数转换为十六进制数的方法是:整数部分从低位开始,每四位二进制数为一组,最后不足四位的,则在高位加0补足四位为止;小数部分从高位开始,每四位二进制数为一组,最后不足四位的,在低位加0补足四位,然后用对应的十六进制数来代替,再按顺序写出对应的十六进制数。
例1.1.4 将二进制数(10011111011.111011)2转换成十六进制数。
(10011111011.111011)2=(4FB.EC)16
(2)十六进制数转换成二进制数。
将每位十六进制数用四位二进制数来代替,再按原来的顺序排列起来便得到了相应的二进制数。
例1.1.5 将十六进制数(3BE5.97D)16转换成二进制数。
(3BE5.97D)16=(11101111100101.100101111101)2
1.2.3 二进制代码
讨论:码的作用;BCD码。
一、二-十进制代码
将十进制数的0~9十个数字用二进制数表示的代码,称为二-十进制码,又称BCD码。
表1.2.2 常用二-十进制代码表(重点讲解8421码、5421码和余3码)
注意:含权码的意义。
二、可靠性代码
1.格雷码
表1.2.3 格雷码与二进制码关系对照表
2.奇偶校验码
为了能发现和校正错误,提高设备的抗干扰能力,就需采用可靠性代码,而奇偶校验码就具有校验这种差错的能力,它由两部分组成。
表1.2.4 8421奇偶校验码
作业:P10 2.(1)(3)3.(1)(3)4. (4)5. (4)6. (4)
7.(4)