《数制和码制页课件.ppt》由会员分享,可在线阅读,更多相关《数制和码制页课件.ppt(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数制和码制页第1页,此课件共34页哦图图1-1所示的为各种模拟信号所示的为各种模拟信号数字信号数字信号:是是表示数字量的信号,数字量是在表示数字量的信号,数字量是在时间和数值上都时间和数值上都是离散的是离散的。实现数字信号的产生、传输和处理的电路称为。实现数字信号的产生、传输和处理的电路称为数字电路。数字信号包括脉冲型(归数字电路。数字信号包括脉冲型(归0型)和电平型(不归型)和电平型(不归0型)。如图型)。如图0-2-2所示所示(a)正弦波(a)正弦波(b)矩形波(方波)(b)矩形波(方波)(c)尖脉冲(c)尖脉冲(d)锯齿冲(d)锯齿冲图1-1 几种模拟信号的波形图1-1 几种模拟信号的波
2、形1 1 1 1 1 11 11 1 1 1(a)电平型数字信号(a)电平型数字信号0 01 11 11 11 11 10 00 00 00 00 0(b)脉冲型数字信号(b)脉冲型数字信号图1-2 两种数字信号波形图1-2 两种数字信号波形第2页,此课件共34页哦 数字信号数字信号是用数码表示的,其数码中只有是用数码表示的,其数码中只有“1”和和“0”两两个数字,个数字,而而“1”和和“0”没有数量的意义,表示事物的两个没有数量的意义,表示事物的两个对立面对立面。数码数码可以表示数字信号的大小和状态,如可以表示数字信号的大小和状态,如1010可表示数可表示数量量“10”,也可以表示某个事物的
3、代号,如运动员的编号,也可以表示某个事物的代号,如运动员的编号,这时将这些数码称为这时将这些数码称为代码代码。数码的编写形式数码的编写形式是多样的,其是多样的,其遵循的原则称为码制遵循的原则称为码制。码。码制的编写不受限制,但有一些通用的码制,如制的编写不受限制,但有一些通用的码制,如十进制、二进十进制、二进制、八进制和十六进制制、八进制和十六进制等等。下面就介绍这几种常用的码制等等。下面就介绍这几种常用的码制。第3页,此课件共34页哦数制:数制:就是数的表示方法,把多位数码中每一位的构成方法以及按就是数的表示方法,把多位数码中每一位的构成方法以及按从低位到高位的从低位到高位的进位规则进位规则
4、进行计数称为进位计数制,简称进行计数称为进位计数制,简称数制数制 最常用的是十进制,除此之外在数字电路和计算机中常用的是二最常用的是十进制,除此之外在数字电路和计算机中常用的是二进制、八进制和十六进制进制、八进制和十六进制一、一、十进制十进制 进位规则是进位规则是。任意一个。任意一个n位整数、位整数、m位小位小数的十进制可表示为数的十进制可表示为 1110111021101010101010)(nmiiimmonnmnnkkkkkkkkkkD第4页,此课件共34页哦称为数制的称为数制的系数系数,表示第,表示第i位的系数,十进制位的系数,十进制的取值为的取值为0 9十个数,十个数,i 取值从取值
5、从(n-1)0的所有正整数到的所有正整数到-1-m的所有负整的所有负整数数10 i表示表示第第i位的权值位的权值,10为基数,即采用数码的个数为基数,即采用数码的个数n、m为正整数,为正整数,n为整数部分的位数,为整数部分的位数,m为小数部分的位数为小数部分的位数1110111021101010101010)(nmiiimmonnmnnkkkkkkkkkkD第5页,此课件共34页哦例如:例如:(249.56)102102 4101 9100 +5101 2102其中其中n3,m2若用若用N表示任意进制(称为表示任意进制(称为N进制)的基数,则展成十进制进制)的基数,则展成十进制数的通式为数的通
6、式为1110111021nmiiimmonnmnnNNkNkNkNkNkkkkkkD)(如如N10为十进制,为十进制,N2为二进制,为二进制,N8为八进制,为八进制,N16为十六进制。其中为十六进制。其中N为为基数基数,为第为第i位的位的系数系数,N i表示第表示第i位位的的权值权值第6页,此课件共34页哦二、二进制二、二进制:其中其中2i为二进制的权,基数为为二进制的权,基数为2 n、m为正整数为正整数如(如(11011.101)2=124+123+022+121+120 +121+02-2+123 =(27.625)101110111021222222nmiiimmonnmnnkkkkkk
7、kkkkD)(进位规则是进位规则是任意一个任意一个n位整数、位整数、m位小位小数的二进制可表示为数的二进制可表示为第7页,此课件共34页哦 一个数码的进制表示一个数码的进制表示,可用下标,如(,可用下标,如(N)2表示二进制;表示二进制;(N)10表示十进制;表示十进制;(N)8表示八进制,表示八进制,(N)16表示十六进制表示十六进制 有时也用字母做下标,如(有时也用字母做下标,如(N)B表示二进制,表示二进制,BBinary;(;(N)D表示十进制,表示十进制,DDecimal;(;(N)O表示八进制,表示八进制,OOctal;(;(N)H 表示十六进制,表示十六进制,HHexadecim
8、al;三、八进制三、八进制 进位规则是进位规则是任意一个任意一个n位整位整数、数、m位小数的八进制可表示为位小数的八进制可表示为1110111021888888nmiiimmonnmnnkkkkkkkkkkN)(第8页,此课件共34页哦8i为八进制的权,基数为为八进制的权,基数为8 n、m为正整数为正整数如(如(13.74)8=181+380+781+48-2=(11.9375)10其中其中1110111021888888nmiiimmonnmnnkkkkkkkkkkN)(四、十六进制四、十六进制 进位规则是进位规则是任意一个任意一个n位位整数、整数、m位小数的十六进制可表示为位小数的十六进制
9、可表示为1110111021161616161616nmiiimmonnmnnkkkkkkkkkkN)(第9页,此课件共34页哦1110111021161616161616nmiiimmonnmnnkkkkkkkkkkN)(16 i为十六进制的权,基数为为十六进制的权,基数为16 n、m为正整数为正整数如(如(F9.1A)16=15161+9160+1161+1016-2 =(249.1015625)10其中其中目前在计算机上常用的是目前在计算机上常用的是8位、位、16位和位和32位二进制数表示和位二进制数表示和计算,由于计算,由于8位、位、16位和位和32位二进制数都可以用位二进制数都可以用
10、2位、位、4位和位和8位位十六进制数表示,故在编程时用十六进制书写非常方便十六进制数表示,故在编程时用十六进制书写非常方便第10页,此课件共34页哦十进制二进制八进制16进制十进制二进制八进制16进制DBOHDBOH000000008100010810001011910011192001002210101012A3001103311101113B4010004412110014C5010105513110115D6011006614111016E7011107715111117F表表1.2.1表表1.2.1为为015个数码的不同进制表示。个数码的不同进制表示。第11页,此课件共34页哦1.3
11、不同数制间的转换不同数制间的转换一、一、二进制数、八进制数和十六进制数转换成十进制数二进制数、八进制数和十六进制数转换成十进制数数制转换:数制转换:不同进制的数码之间的转换叫做不同进制的数码之间的转换叫做数制转换数制转换1110111021nmiiimmonnmnnNNkNkNkNkNkkkkkkD)(例如:例如:DB).(.).(752725050128162121212120212111110112101234 即将二进制数、八进制数和十六进制数转换成十进制数,方法即将二进制数、八进制数和十六进制数转换成十进制数,方法是将二进制数、八进制数和十六进制数按下列公式进行展开即可是将二进制数、八
12、进制数和十六进制数按下列公式进行展开即可第12页,此课件共34页哦a.十进制的整数转换:十进制的整数转换:DO).(.).(64126015625062506566481858687815117621012二、十进制数转换成二进制数:二、十进制数转换成二进制数:D).(.)EC.AF(2H816880546875075015160512161416121615161016221012 将十进制的整数部分用基数将十进制的整数部分用基数2去除,保留余数,再用商除去除,保留余数,再用商除2,依次下,依次下去,直到商为去,直到商为0为止,其余数即为对应的二进制数的整数部分为止,其余数即为对应的二进制数
13、的整数部分 即将十进制数转换成二进制数,即将十进制数转换成二进制数,原则是原则是“整数除整数除2,小数乘,小数乘2”第13页,此课件共34页哦b.十进制的小数转换十进制的小数转换 将小数用基数将小数用基数2去乘,保留积的整数,再用积的小数继续乘去乘,保留积的整数,再用积的小数继续乘2,依次下去,直到乘积是,依次下去,直到乘积是0为或达到要求的精度,其积的整数部为或达到要求的精度,其积的整数部分即为对应的二进制数的小数部分分即为对应的二进制数的小数部分例例1.3.1 将(将(173.39)D转化成二进制数转化成二进制数,要求精度为要求精度为1%。a.整数部分整数部分1731732 22 2868
14、61 10 02 243431 121211 12 210102 20 02 25 52 22 21 11 11 10 02 20 0)(0k)(1k)(2k)(3k)(4k)(5k)(6k)(7k解:其过程如下解:其过程如下即即(173)D=(10101101)B第14页,此课件共34页哦b.小数部分小数部分由于精度要求为由于精度要求为1,故应该令,故应该令%12m取对数,可得取对数,可得210%12m1002m2100lg2lg1010m6.6m取取m7 满足精度要求,过程如下满足精度要求,过程如下0.392=0.780.392=0.780.782=1.560.782=1.56010.56
15、2=1.120.562=1.1210.122=0.240.122=0.2400.242=0.480.242=0.4800.482=0.960.482=0.9600.962=1.920.962=1.921)(1k)(2k)(3k)(4k)(5k)(6k)(7k即即(0.39)D=(0.0110001)B故(故(173.39)D =(10101101.0110001)B 倒数为倒数为第15页,此课件共34页哦三、三、二进制转换成八进制和十六进制二进制转换成八进制和十六进制方法:由于方法:由于3位二进制数可以有位二进制数可以有8个状态,个状态,000111,正好是,正好是8进制,而进制,而4位二进制
16、数可以有位二进制数可以有16个状态,个状态,00001111,正好是,正好是16进制,进制,依此类推,对于十进制转换成其它进制,只要把基数依此类推,对于十进制转换成其它进制,只要把基数2换成其换成其它进制的基数即可。它进制的基数即可。若将八进制或十六进制转换成二进制,即若将八进制或十六进制转换成二进制,即按三位或四位转成二进制数展开即可。按三位或四位转成二进制数展开即可。第16页,此课件共34页哦解:解:(1011110.1011001)B(001 011 110.101 100 100)2 (136.544)O(1011110.1011001)B(0101 1110.1011 0010)2
17、(5E.B2)H例例1.3.2 将(将(1011110.1011001)2转换成八进制和十六进制。转换成八进制和十六进制。解:解:例例1.3.3 将(将(703.65)O 和(和(9F12.04A)H 转换成二进制数转换成二进制数(703.65)O(111000011.110101)B(9F12.04A)H=(1001111100010010.00000100101)B第17页,此课件共34页哦例例1.3.4 将将(87)D 转换成八进制数和十六进制数转换成八进制数和十六进制数解:解:先将先将87转化成二进制,再转到其他进制,过程如图转化成二进制,再转到其他进制,过程如图,则则2 287871
18、 12 243431 121211 12 210102 20 02 25 52 22 21 11 11 10 02 20 0)(0k)(1k)(2k)(3k)(4k)(5k)(6k(87)D(1010111)B=(001 010 111)B (0101 0111)B=(127)O =(57)H若要将十进制转换成八进制或若要将十进制转换成八进制或16进制,可先转换成进制,可先转换成二进制,再分组,转换成八进制或十六进制。二进制,再分组,转换成八进制或十六进制。第18页,此课件共34页哦1.4.1.二进制算术运算的特点二进制算术运算的特点 当两个二进制数码表示两个数量的大小,并且这两个当两个二进制
19、数码表示两个数量的大小,并且这两个数进行数值运算,这种运算称为数进行数值运算,这种运算称为。其规则是。其规则是“逢二逢二进一进一”、“借一当二借一当二”。算术运算包括。算术运算包括“加减乘除加减乘除”,但减,但减、乘、除最终都可以化为带符号的加法运算。、乘、除最终都可以化为带符号的加法运算。如两个数如两个数1001和和0101的算术运算如下的算术运算如下1001100101010101+111011101001100101010101-01000100100110010101010110011001000000001001100100000000010110101011011001100101
20、0101011 10101010110001000.1 1010101010110011001010101001000101 1第19页,此课件共34页哦1.4.2 原码、反码、补码和补码运算原码、反码、补码和补码运算 在用二进制数码表示一个数值时,其正负是怎么区别的在用二进制数码表示一个数值时,其正负是怎么区别的呢?二进制数的正负数值的表述是在二进制数码前加一位呢?二进制数的正负数值的表述是在二进制数码前加一位符符号位号位,用,用“0”表示正数,用表示正数,用“1”表示负数,这种带符号位表示负数,这种带符号位的二进制数码称为原码。的二进制数码称为原码。一、原码:一、原码:(数值的最高位表示符
21、号、不是数值)(数值的最高位表示符号、不是数值)例如:例如:17的原码为的原码为010001,17的原码为的原码为110001二、反码二、反码 除符号位除符号位以外,数值部分逐位取反以外,数值部分逐位取反反码是为了在求补码时不做减法运算。二进制的反码求反码是为了在求补码时不做减法运算。二进制的反码求法是:法是:正数的反码与原码相同,负数的原码除了符号位外的正数的反码与原码相同,负数的原码除了符号位外的数值部分按位取反,即数值部分按位取反,即“1”改为改为“0”,“0”改为改为“0”,第20页,此课件共34页哦例如例如7和和7的原码和补码为:的原码和补码为:7的的原码为原码为0 111,反码为,
22、反码为0 1117的的原码为原码为1 111,反码为,反码为1 000原码和反码相加的结果为原码和反码相加的结果为 1 111注:注:0的反码有两种表示,的反码有两种表示,0的反码为的反码为0 000,0的反码为的反码为1 111 感觉感觉0的反码为的反码为0000更舒服些!更舒服些!三、补码:三、补码:1.模(模数)的概念:模(模数)的概念:把一个事物的循环周期的长度,叫做这个事件的模或把一个事物的循环周期的长度,叫做这个事件的模或模模数数。当做二进制减法时,可利用补码将减法运算转换成加当做二进制减法时,可利用补码将减法运算转换成加法运算。在将补码之前先介绍模(或模数)的概念法运算。在将补码
23、之前先介绍模(或模数)的概念第21页,此课件共34页哦如一年如一年365天,其模数为天,其模数为365;钟表是以;钟表是以12为一循环计数的,故模数为为一循环计数的,故模数为12。十进制计数就是。十进制计数就是10个数码个数码09,的循环,故模为,的循环,故模为10。以表为例来介绍补码运算的原理:对于图以表为例来介绍补码运算的原理:对于图1.4.1所示的钟表所示的钟表12126 63 39 91 12 24 45 57 78 81010111110+7-12=510+7-12=510-5=510-5=5图1.4.1 补码的原理图1.4.1 补码的原理 当在当在5点时发现表停在点时发现表停在10
24、点,若点,若想拨回有两种方法:想拨回有两种方法:a.逆时针拨逆时针拨5个格,即个格,即 1055,这是做减法。,这是做减法。b.顺时针拨七个格,即顺时针拨七个格,即 10717,由于模是,由于模是12,故,故1相当于进位相当于进位12,1溢出,故为溢出,故为7格,也是格,也是17125,这是做加法。,这是做加法。第22页,此课件共34页哦 由此可见由此可见107和和105的效果是的效果是一样的,而一样的,而5712,将故,将故7称为称为5的补数,即补码,也可以说减法可以的补数,即补码,也可以说减法可以由补码的加法来代替由补码的加法来代替12126 63 39 91 12 24 45 57 78
25、 81010111110+7-12=510+7-12=510-5=510-5=5图1.4.1 补码的原理图1.4.1 补码的原理2.补码的表示补码的表示正数的补码和原码相同,负数的正数的补码和原码相同,负数的补码是符号位为补码是符号位为“1”,数值位,数值位按位取反加按位取反加“1”,即,即“反码加反码加1”例如:例如:+5-5原码原码0 1011 101反码反码0 1011 010补码补码0 1011 011第23页,此课件共34页哦 对于对于2进制的同一数值的正负数,不计进位:进制的同一数值的正负数,不计进位:连同符号位:连同符号位:正数原码正数原码+负数反码负数反码=模数模数-1 连同符
26、号位:连同符号位:正数原码正数原码+负数补码负数补码=模数模数=0 例如反码:例如反码:5=0101B -5=1010B 相加得相加得 1111 (16-1)例如补码:例如补码:5=0101B -5=1011B 相加得相加得 0000 太好了!太好了!例如补码:例如补码:5=0101B -6=1010B 得得-1补码补码 1111 太好了太好了!-3=1101B 得得+1原码原码 0010 太好了!太好了!第24页,此课件共34页哦注意:注意:1.采用补码后,可以方便地将减法运算转换成加法运算,而乘法和除法通采用补码后,可以方便地将减法运算转换成加法运算,而乘法和除法通过移位和相加也可实现,这
27、样可以使运算电路结构得到简化;过移位和相加也可实现,这样可以使运算电路结构得到简化;2.正数的补码既是它所表示的数的真值,负数的补码部分不是它所示的数的正数的补码既是它所表示的数的真值,负数的补码部分不是它所示的数的真值。真值。3.与原码和反码不同,与原码和反码不同,“0”的补码只有一个,即的补码只有一个,即(00000000)B4.已知原码,求补码和反码:正数的原码和补码、反码相同;负数的已知原码,求补码和反码:正数的原码和补码、反码相同;负数的反码是符号位不变,数值位取反,而补码是符号位不变,数值位取反反码是符号位不变,数值位取反,而补码是符号位不变,数值位取反加加“1”。如:原码为如:原
28、码为10110100,其反码为,其反码为11001011,补码为,补码为1100100。第25页,此课件共34页哦5.已知补码,求原码:正数的补码和原码相同;负数的补码应该是数值已知补码,求原码:正数的补码和原码相同;负数的补码应该是数值位减位减“1”再取反,但对于二进制数来说,先减再取反,但对于二进制数来说,先减“1”取反和先取反再加取反和先取反再加“1”的结果是一样的。故由负数的补码求原码就是数值位取反加的结果是一样的。故由负数的补码求原码就是数值位取反加“1”。如已知某数的补码为(如已知某数的补码为(11101110)B,其原码为(,其原码为(10010010)B6.如果二进制的位数为如
29、果二进制的位数为n,则可表示的有符号位数的范围为(,则可表示的有符号位数的范围为(2n 2n11),如),如n8,则可表示,则可表示(128127),故在做加法时,注意两个数的绝,故在做加法时,注意两个数的绝对值不要超出它所表示数的范围。对值不要超出它所表示数的范围。第26页,此课件共34页哦例例1.4.1 用二进制补码计算用二进制补码计算:7528 、7528、7528、7528 (75)D(01001011)B (28)D(00011100)B (75)D(11001011)B (28)D(10011100)B 原码原码7 52 81 0 30 10010110 0011100 0 110
30、0111(75)D(10110101)B;(28)D(11100100)B;解:先求两个数的二进制原码和补码(用解:先求两个数的二进制原码和补码(用8位代码)位代码)补码补码第27页,此课件共34页哦7 52 8 4 70 10010111 11001001 0 0101111 7 52 810 31 01101011 11001001 1 0011001溢出溢出 7 52 8 4 71 01101010 0011100 1 1010001溢出溢出补码补码补码补码第28页,此课件共34页哦表表41为为4位带符号位二进制代码的原码、反码和补码对照位带符号位二进制代码的原码、反码和补码对照表表十进
31、制数原码反码补码十进制数原码反码补码7011101110111110011110111160110011001102101011011110501010101010131011110011014010001000100411001011110030011001100115110110101011200100010001061110100110101000100010001711111000100100000000000008100011111000相同不同第29页,此课件共34页哦1.5 二进制编码二进制编码1.5.1三个术语三个术语数码数码:代表一个确切的数字,如二进制数,八进制数等。:代表
32、一个确切的数字,如二进制数,八进制数等。代码代码:特定的二进制数码组,是不同信号的代号,不一定:特定的二进制数码组,是不同信号的代号,不一定有数的意义有数的意义编码编码:n 位二进制数可以组合成位二进制数可以组合成2n 个不同的信息,给每个个不同的信息,给每个信息规定一个具体码组,这种过程叫编码。信息规定一个具体码组,这种过程叫编码。数字系统中常数字系统中常用的编码有两类,一类是二进制编码,另一类是用的编码有两类,一类是二进制编码,另一类是 二二-十进制十进制编码。另外无论二进制编码还是二十进制编码,都可分成编码。另外无论二进制编码还是二十进制编码,都可分成有有权码权码(每位数码代表的权值固定
33、)和(每位数码代表的权值固定)和无权码无权码第30页,此课件共34页哦1.5.2 十进制代码十进制代码 用用4位二进制代码表示十进制的位二进制代码表示十进制的09个数码,即个数码,即二十进二十进制制的编码。的编码。4位二进制代码可以有位二进制代码可以有00001111十六个状态,则十六个状态,则表示表示09十个状态可以有多种编码形式,其中常用的有十个状态可以有多种编码形式,其中常用的有8421码、码、余余3码、码、2421码、码、5211码、码、余余3循环码循环码等,其中等,其中8421码、码、2421码、码、5211码为码为有权码有权码,即每一位的,即每一位的1都代表固定的都代表固定的值。值
34、。表表1.5.1为几种编码形式为几种编码形式第31页,此课件共34页哦表表1.5.1编码种类编码种类十进制数十进制数8421码8421码(BCD代码)(BCD代码)余3码余3码2421码2421码5211码5211码余3循环码余3循环码0 01 12 23 34 45 56 67 78 89 9权权000000000001000100100010001100110100010001010101011001100111011110001000100110018421842100110011010001000101010101100110011101111000100010011001101010
35、1010111011110011000000000000010001001000100011001101000100101110111100110011011101111011101111111124212421000000000001000101000100010101010111011110011001100010001100110011011101111111115211521100100010011001100111011101010101010001001100110011011101111111111110111010101010返回返回A返回返回B第32页,此课件共34页哦说明:
36、说明:1.8421码码:又称又称BCD码,是最常用的十进制编码。其每码,是最常用的十进制编码。其每位的权为位的权为8、4、2、1,按公式,按公式 展开,即可得展开,即可得对应的十进制数,如(对应的十进制数,如(0101)21241 205iikD22.余余3码不是有权码,由于它按二进制展开后十进制数比所表码不是有权码,由于它按二进制展开后十进制数比所表示的对应的十进制数大示的对应的十进制数大3。如。如0101表示的是表示的是2,其展开十进制,其展开十进制数为数为5,故称为余,故称为余3码。采用余码。采用余3码的好处是:利用余码的好处是:利用余3码做加码做加法时,如果所得之和为法时,如果所得之和
37、为10,恰好对应二进制,恰好对应二进制16,可以自动产,可以自动产生进位信号。如生进位信号。如0110(3)1010(7)1111(10);另外);另外0和和9、1和和8、2和和7是互为反码,这对于求补很方便。是互为反码,这对于求补很方便。链接链接A第33页,此课件共34页哦3.2421码是有权码,其每位的权为码是有权码,其每位的权为2、4、2、1,如,如(1100)2=12146,与余,与余3码相同码相同0和和9、1和和8、2和和7是是互为反码。另外当任何两个这样的编码值相加等于互为反码。另外当任何两个这样的编码值相加等于9时,结果时,结果的的4个二进制码一定都是个二进制码一定都是1111。4.5211码也是有权码,其每位的权为码也是有权码,其每位的权为5、2、1、1,如,如(0111)2=1211114,主要用在分频器上,主要用在分频器上5.余余3循环码是无权码,它的特点是相邻的两个代码之间只循环码是无权码,它的特点是相邻的两个代码之间只有一位状态不同。这在译码时不会出错(竞争冒险)有一位状态不同。这在译码时不会出错(竞争冒险)链接链接B第34页,此课件共34页哦