1.3 数制
按照进位规则进行计数,即进位的制度,称为数制。一个数制所包含的数字符号的个数,称为该数制的基数(radix)。人们在日常生活中使用的是十进制,有时也采用十二进制、二十四进制、六十进制,比如用于计时的时钟。而在数字系统中多采用二进制,有时也采用八进制或十六进制。
1.十进制(Decimal)
十进制有10个数字符号:0,1,2,3,4,5,6,7,8,9,基数为10,逢10进1,即9+1=10。任何一个十进制数都可以用这10个代码按一定规律排列起来表示。一个数的大小由它的数码大小和数码所在的位置决定。每个数码所处的位置称为“权”,权由基数的乘方表示,十进制的权由100,101,102,…以及10-1,10-2,10-3,…表示。例如,8596.41按权展开为
(8596.41)10=8×103+5×102+9×101+6×100+4×10-1+1×10-2
数字电路的计数规则一般不直接采用十进制,因为构成计数电路的基本思路是把电路的状态与数码对应起来,如果采用十进制,则需要有10个不同的电路状态来与之对应,从而会使数字电路的结构复杂,错误概率增大,工作可靠性变差。数字电路通常采用二进制进行计数。
2.二进制(Binary)
二进制的基数为2,只有两个数码0和1,逢2进1,即1+1=10。二进制数各位的权为基数2的乘方(见表1.1)。
表1.1 二进制数的权
二进制数(101101.101)2可表示为
(101101.101)2=1×25+1×23+1×22+1×20+1×2-1+1×2-3
数字电路中通常采用二进制,是因为二进制数只有0和1两个数码,正好对应于低电平和高电平两种电路状态。
3.八进制(Octal)
八进制的基数为8,有8个数码0,1,2,3,4,5,6,7,逢8进1,即7+1=10。八进制数各位的权为基数8的乘方。例如八进制数(374.25)8按权展开为
(374.25)8=3×82+7×81+4×80+2×8-1+5×8-2
4.十六进制(Hexadecimal)
十六进制的基数为16,有16个数码0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,其中A~F分别表示10~15,逢16进1,即F+1=10。各位的权为基数16的乘方。例如十六进制数(D5E8.A3)16按权展开为
(D5E8.A3)16=13×163+5×162+14×161+8×160+10×16-1+3×16-2
5.任意进制
r进制的基数为r,有r个数码0,1,2,…,(r-1),逢r进1。各位的权为r的乘方。一个r进制数N可以按权展开为
式中,n为整数部分的位数,m为小数部分的位数,ri为各位的权,ki为系数,是各位的数码。注意,整数部分从右向左第n位的权为rn-1,系数为kn-1;小数部分从左向右第m位的权为r-m,系数为k-m。
例如,七进制数(345.61)7按权展开为
(345.61)7=3×72+4×71+5×70+6×7-1+1×7-2
表1.2列出了十进制数0~17所对应的二进制数、八进制数和十六进制数。
表1.2 几种数制之间的关系对照表