第1章数制和码制本章从常用的十进制数开始,分析推导各种不同数制的表示方法及各种数制之间的转换方法。重点介绍了在数字设备中广泛使用的二进制数的运算问题,最后介绍几种常用的编码。81.1概述电子电路中的信号可分为两类:一类是模拟信号,随时间连续变化的信号,如模拟语言的音频信号和模拟图像的视频信号等。能够用来产生、传输、处理模拟信号的电路称为模拟电路:如图1(a)所示。另一类是数字信号,在时间和数值上都是不连续变化的离散信号,如欧诺个脉冲信号等。能够用来产生、传输、处理数字信号的电路称为数字电路。如图1(b)所示。uru图1(a)模拟信号图1(b)数字信号s1.2几种常用的数制数码:由数字符号构成且表示物理量大小的数字和数字的组合。数制:多位数码中每一位的构成方法,以及从低位到高位的进制规则。在数字电路中经常使用的计数进制除了我们熟悉的十进制之外,更多的是使用二进制和十六进制,有时也用到八进制。下面我们将对这几种进制数加以介绍。一、十进制数(D:Decimal)十进制是日常生活和工作中最常使用的进位进制数。在十进制数中,每一位有09十个数码,所以计数基数为10。低位和相邻高位间的进位关系是“逢十进一”,故称为十
第 1 章 数制和码制 本章从常用的十进制数开始,分析推导各种不同数制的表示方法及各种数制之间的 转换方法。重点介绍了在数字设备中广泛使用的二进制数的运算问题,最后介绍几种常 用的编码。 §1.1 概述 电子电路中的信号可分为两类: 一类是模拟信号,随时间连续变化的信号,如模拟语言的音频信号和模拟图像的视 频信号等。能够用来产生、传输、处理模拟信号的电路称为模拟电路;如图 1(a)所示。 另一类是数字信号,在时间和数值上都是不连续变化的离散信号,如欧诺个脉冲信 号等。能够用来产生、传输、处理数字信号的电路称为数字电路。如图 1(b)所示。 图 1(a)模拟信号 图 1(b)数字信号 §1.2 几种常用的数制 数码:由数字符号构成且表示物理量大小的数字和数字的组合。 数制:多位数码中每一位的构成方法,以及从低位到高位的进制规则。 在数字电路中经常使用的计数进制除了我们熟悉的十进制之外,更多的是使用二进 制和十六进制,有时也用到八进制。下面我们将对这几种进制数加以介绍。 一、十进制数(D:Decimal) 十进制是日常生活和工作中最常使用的进位进制数。在十进制数中,每一位有 0~9 十个数码,所以计数基数为 10。低位和相邻高位间的进位关系是“逢十进一”,故称为十
进制。数字符号:0,1,2,3,4,5,6,7,8,9计数规则:逢十进一基数:10权:10的幂对于任何一个十进制数N,都可以按权展开成如下形式:(N)1o =a,anjan-2..a,ao-a_ja-2..a-m=a,×10"+an--×10"-l+am-2×10n-2...+a,×10+ag×10°+a_×10-+a_×10-2...+am×10-mZa,x10例1:(244.76)=2×102+4×10+4×10+7×10+6×10-2上述十进制数的表示方法也可以推广到任意进制数。对于基数为R(R≥2)的R进制计数值,数N可以表示为:(N)=a,ar-an-2*,ao.a_a- *-a-m=a, ×R"+an- ×R"-+an-2 ×R"- ...+a,xR'+a×R°+a_,×R-+a-2×R-?..+a-m×R-"=a,×R-m式中,n代表整数位数,m代表小数位数,ai表示第i位数字,它是0、1、2.....R-1中的任意一个,Ri为第i位数字的权值。二、二进制数(B:Binary)目前在数字电路中应用最广泛的是二进制。在二进制数中,每一位仅有0和1两个可能的数码,所以计数基数为2。低位和相邻高位间的进位关系是“逢二进一”,故称为二进制。数字符号:0,1计数规则:逢二进一
进制。 数字符号:0,1,2,3,4,5,6,7,8,9 计数规则:逢十进一 基数:10 权:10 的幂 对于任何一个十进制数 N,都可以按权展开成如下形式: nm i i m m n n n n n n n n n m a a a a a a a a a a a a a a a a a 10 10 10 10 10 10 10 10 10 (N) . 2 2 1 1 0 0 1 1 2 2 1 1 10 1 2 1 0 1 2 + + 例 1: 2 1 0 1 2 10 (244.76) 2 10 4 10 4 10 7 10 6 10 + + + - + - 上述十进制数的表示方法也可以推广到任意进制数。对于基数为 R(R≥2)的 R 进 制计数值,数 N 可以表示为: nm i i m m n n n n n n n n m n a R a R a R a R a R a R a a a a a a a a a R a R a R 2 2 1 1 0 0 1 1 2 2 1 R 1 2 1 0 1 2 1 (N) . + + 式中,n 代表整数位数,m 代表小数位数,ai表示第 i 位数字,它是 0、1、2.R-1 中的任意一个,Ri 为第 i 位数字的权值。 二、二进制数(B:Binary) 目前在数字电路中应用最广泛的是二进制。在二进制数中,每一位仅有 0 和 1 两个 可能的数码,所以计数基数为 2。低位和相邻高位间的进位关系是“逢二进一”,故称为二 进制。 数字符号:0,1 计数规则:逢二进一
基数:2权:2的幂例2:(101011.011)=1×25+0×24+1×23+0×22+1×2+1×2°+0×2-+1×2-2+1×2-3=(43.375)1o三、八进制数(O:Octal)或Q在某些场合有时也使用八进制。八进制的每一位有0~7八个不同的数码,计数的基数为8,低位和相邻的高位之间的进位关系是“逢八进一”。数字符号:0,1,2,3,4,5,6,7计数规则:逢八进一基数:8权:8的幂例3:(125.04):=1×82+2×8+5×8°+0×8-+4×8-2=(85.0625)10四、十六进制(H:Hexadecimal)在编写程序时,常常使用十六进制数。十六进制数的每一位有十六个不同的数码,分别用0~9、A(10)、B(11)、C(12)、D(13)、E(14)、F(15)表示。数字符号:0~9,A,B,C,D,E,F计数规则:逢十六进一基数:16权:16的幕例4:(2F.6C)16=2×16'+15×16°+6×16-+12×16-2=(47.421875)1o不同进制数的对照表如表1所示:
基数:2 权:2 的幂 例 2: 10 3 5 4 3 2 1 0 1 2 2 1 2 43.375) (101011.011) 1 2 0 2 1 2 0 2 1 2 1 2 0 2 1 2 =( + + + + + + - - - 三、八进制数(O:Octal)或 Q 在某些场合有时也使用八进制。八进制的每一位有 0~7 八个不同的数码,计数的基 数为 8,低位和相邻的高位之间的进位关系是“逢八进一” 。 数字符号:0,1,2,3,4,5,6,7 计数规则:逢八进一 基数:8 权:8 的幂 例 3: 10 2 1 0 1 2 8 (125.04) 18 28 58 08 48 (85.0625) + + + - + - 四、十六进制(H:Hexadecimal) 在编写程序时,常常使用十六进制数。十六进制数的每一位有十六个不同的数码, 分别用 0~9、A(10) 、B(11) 、C(12) 、D(13) 、E(14)、 F(15)表示。 数字符号:0~9,A,B,C,D,E,F 计数规则:逢十六进一 基数:16 权:16 的幂 例 4: 10 1 0 1 2 16 (2F.6C) 216 1516 616 1216 (47.421875) + + - + - 不同进制数的对照表如表 1 所示:
表1几种进制数的对照表十进制二进制八进制十六进制000000011100012:2200103330011 444010055501016660110777011188101000991110011012A10101113B101112 14 c110015D13110116E14 1110F15171111
表 1 几种进制数的对照表 十进制 二进制 八进制 十六进制 0 0000 0 0 1 0001 1 1 2 0010 2 2 3 0011 3 3 4 0100 4 4 5 0101 5 5 6 0110 6 6 7 0111 7 7 8 1000 10 8 9 1001 11 9 10 1010 12 A 11 1011 13 B 12 1100 14 C 13 1101 15 D 14 1110 16 E 15 1111 17 F
S1.3不同数制间的转换一、二进制与十进制的转换1、二-十转换将二进制数转换为等值的十进制数称为二一十转换。转换时只要将二进制数按权展开,然后将所有各项的数值按十进制数相加,就可以得到等值的十进制数了。此方法也适用于任意进制数转换为等值的十进制数。例5:(1011.01)2=1×23+0×22+1×2+1×2°+0×2-+1×2-2=(11.25)102、十-二转换将十进制数转换为等值的二进制数称为十-二转换。整数部分:“除二倒取余”即十进制整数被2除,取其余数,商再被2除,取其余数..,直到商为0时结束运算,然后把每次的余数按倒序规则排列就得到等值的二进制数。小数部分:“乘二取整”即把十进制纯小数乘以2,取其整数(该整数部分不再参加后继运算),乘积的小数部分再乘以2,取整..,直到乘积的小数部分为0。然后把每次乘积的整数部分按正序规则排序,即为等值的二进制数。> 2例6:求(217)10=(解::21217...余1..余..2 1 108...余2 1 542127....余1.余.2 1 13.余.2 1 6
§1.3 不同数制间的转换 一、二进制与十进制的转换 1、二-十转换 将二进制数转换为等值的十进制数称为二-十转换。转换时只要将二进制数按权展 开,然后将所有各项的数值按十进制数相加,就可以得到等值的十进制数了。 此方法也适用于任意进制数转换为等值的十进制数。 例 5: 10 3 2 1 0 1 2 2 (1011.01) 1 2 +0 2 1 2 +1 2 +0 2 +1 2 (11.25) - - 2、十-二转换 将十进制数转换为等值的二进制数称为十-二转换。 整数部分:“除二倒取余” 即十进制整数被 2 除,取其余数,商再被 2 除,取其余数.直到商为 0 时结束运算, 然后把每次的余数按倒序规则排列就得到等值的二进制数。 小数部分:“乘二取整” 即把十进制纯小数乘以 2,取其整数(该整数部分不再参加后继运算), 乘积的小数 部分再乘以 2,取整.,直到乘积的小数部分为 0。然后把每次乘积的整数部分按正序规 则排序,即为等值的二进制数。 例 6:求(217)10 =( )2 解:∵ 2∣217 .余 1 2∣108 .余 0 2∣54 .余 0 2∣27 .余 1 2∣13 .余 1 2∣6 .余 0