版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章数码与码制电子电气基础课程规划教材数字电子技术(第2版)数字电路所处理的各种数字信号都是以数码形式给出的。不同的数码既可表示不同数量的大小,又可表示不同的事物或事物的不同状态。用数码表示数量大小时,一位数码往往不够用,因而经常需要使用多位数码。多位数码中,每一位的构成方法和从低到高位的进位规则称为进位计数制,简称数制。我们日常生活中有许多不同的数制,如最早釆用、也是使用最广泛的十进制,即“逢十进一”;钟表计时釆用的是60进制,如60秒为1分钟,60分钟为1小时;12个月为一年这种情况,则釆用的是12进制;也有釆用二进制的,像两只筷子为一双,中国古代的八卦等,都是釆用二进制来表示的。当两个数码分别表示两个数量大小时,可以进行数量间的算术运算。数字电路中的算术运算,最终都是以二进制运算的方式进行的,所以在这一章中,我们将比较详细地介绍在数字电路中是采用什么方式完成二进制算术运算的。当用不同数码表示不同事物或事物的不同状态时,这些数码就不再具有表示数量大小的含义,它们只是不同事物的代号而已。我们将这些数码称之为代码。例如,我习惯给班上每一位同学编一个号码作为学号。显然,这些号码仅仅表示不同的学生而已,没有数量大小的含义。而为了便于记忆和查找,在编辑代码时总要遵循一定的规则,这些规则就称为码制。01进位计数制PARTONE十进制数的表示十进制是日常生活中最常使用的进位计数制。在十进制中,每一位有0〜9十个数码,所计数的基数为10。它的计数规律是“逢十进一”。每位数累计不能超过10,计满10就应向高位进l。例如,512.32这个数,它的最左边第一位为百位,第二位为十位,第三位为个位,小数点后面第一位为十分位,第二位为百分位。这里百、十、个、十分之一和百分之一都是10的7次幕,它取决于系数所在的位置,称之为“权二十进制数512.32从左至右各位的权分别是102,101,100,10-1,10-2因此,将512.32按权展开的形式如下:512.32=5×102+1×101+2×100+3×10-1+2×10-2等式左边的表示方法称之为位置记数法,等式右边则是其按权展开式。-般说来,对于任意一个十进制数S,可用位置记数法表示为
(S)10=(an-1an-2…a1a0a-1a-2…a-m)10
(1.1.1)十进制数的表示也可用按权展开式表示为式中,ai为0〜9这10个数码中的任意一个;n为整数部分的位数;为小数部分的位数。二进制数的表示数字系统中最常使用的进位计数制是二进制。在二进制中,每一位只有0或1两个数码,所以计数的基数为2。二进制的计数规则是每位计满2就向高位进一,即“逢二进一”。例如,(1001),就是一个二进制数,不同位置的数码表示的值不同,各位的权值是以2为底的连续整数幕,从右向左递增。对于任意一个二进制数S,用位置计数法表示为用按权展开式表示为式中,ai为数码0或1;n为整数部分的位数;m为小数部分的位数。八进制数和十六制数的表示八进制数的基数是8,采用的数码是0〜7这8个数。计数规则是“逢八进一”,各位的权值是以8为底的连续整数幕。例如,数(47.6)8就表示一个八进制数。十六进制数的基数为16,分别用0〜9,A(10),B(ll),C(12),D(13),E(14),F(15)表示。十六进制的计数规则是“逢十六进一”,各位的权值是以16为底的连续整数蓦。例如,数(54AF.8B)16就是一个十六进制数。与二进制数一样,任意一个八进制数和十六进制数均可用位置计数法的形式和按权展开式的形式表示。为了便于区分各种不同的进制,通常在数字的右下角标注10、2、8、16,或用字母D(Decimal)、B(Binary)、O(Octal)、H(Hexadecimal)替代。一般来说,对于任意的数S,都能表示成以r为基数的r进制数。数S的表示方法也有两种形式,即位置记数法和按权展开式。用位置记数法表示为八进制数和十六制数的表示用按权展开式表示为式中,ai为数码。0〜r-1数码中的一个;r为该进位制的基数;n为整数部分的位数;m为小数部分的位数。r进制的计数规则是“逢r进一"。不同数制的各种数码见表1.1.1,该表列岀了当r为10、2、8、16时,各种进位计数制中开始的16个自然数。八进制数和十六制数的表示二进制数的算术运算当用两个二进制数码表示两个数量大小时,它们之间可以进行数值运算,这种运算就称为算术运算,算术运算的结果是得到一个数量(算术)值。二进制数的运算规则是:(1)加法规则
0+0=0
0+0=1
1+0=11+1=0(同时向相邻高位进1)(2)减法规则
0-0=0
0一1=1(同时向相邻高位借1)
1-0=1
1-1=0(3)乘法规则
0×0=0
0×1=0
1×0=0
1×1=1(4)除法规则
0÷1=0
1÷1=1二进制数的算术运算下面举几个二进制数运算的例子。例1.1.1对1001+1011进行加法运算。解:由此可见,二进制数的加法运算和十进制数的加法运算相似,但釆用“逢二进一”的法则,即每位数累计到2时,本位就记为0,且向相邻高位进1。二进制数的算术运算例1.1.2对10100-1110进行减法运算。解:在二进制数的减法中釆用了“借一当二”的原则,减法运算从低位起按位进行,在遇到0减1时,就要向相邻咼位借1,也就是从相邻高位减去1。二进制数的算术运算例1.1.3
对1011X1001进行乘法运算。解:从二进制数的乘法运算过程中可以看出,二进制数的乘法运算和十进制数的乘法运算相似,只不过对乘积部分进行累加时要按“逢二进一”的原则来运算。二进制数的算术运算例1.1.4
对10100101-1001进行除法运算。解:从二进制数的除法运算过程中可以看出,二进制数的除法运算与十进制数的除法运算相类似,但釆用二进制数的除法运算规则。02数制转换PARTTWO二进制数和十进制数之间的转换在计算机和其他数字系统中,最常使用的是二进制数,而人们日常习惯于使用十进制数,所以,在数据处理过程中首先要把十进制数转换成计算机能加工和处理的二进制数,经计算机加工处理后,再将二进制数的计算结果转换成人们习惯的十进制数。这里就存在一个不同数制的相互转换问题。二进制数转换成等值的十进制数称之为二一十转换。转换时只需将二进制数写成按权展开式,并将展开式中各乘积项的积算岀来,然后各项相加,即可得到与该二进制数等值的十进制数,例如:将十进制数转换成等值的二进制数称之为十一二转换。转换时,需要将待转换的十进制数分成整数部分和小数部分,并分别转换成二进制数,然后再将两部分加起来。第一步先讨论整数部分的转换。假如有十进制整数(S)10,其等值的二进制数为(anan-1…a0)2,若将二进制数按权展开,则有二进制数和十进制数之间的转换上式表明,若将(S)10除以2,则得到的商为
,余数则为a0若再将得到的商依次除以2,所得的余数分别是a1,a2,…,an。所以,将一个十进制整数转换成二进制数时,十进制数的整数部分釆用“除2取余”法进行转换,即把十进制整数除以2,取出余数1或0作为相应二进制数的最低位,把得到的商再除以2,再取余数1或0作为二进制数的次低位,依次类推,继续上述过程,直至商为0,最后所得余数为最高位。例如,要将十进制整数157转换为二进制整数,就要把它写成如下形式:上式两边同乘以2得到
,从结果可以看岀,将小数乘以2所得乘积的整数部分即a-1。同理,将乘积的小数部分再乘以2又可得
,即可得乘积的整数部分a-2。依次类推,将每次乘以2后所得的乘积的小数部分再乘以2,直至小数部分为0,便可求出二进制小数的每一位。例1.2.1 将(0.8125)10转换为二进制小数。解:所以(0.8125)10=(0.1101)2。二进制数和十进制数之间的转换第二步讨论小数部分的转换。若(S)10是一个十进制小数
,则有八进制数、十六进制数与二进制数的转换由于二进制数简单、容易实现,所以它是数字系统中、特别是计算机中广泛采用的一种数制。但如用二进制表示一个十进制数时,需用4位二进制数才能表示1位十进制数,所用的位数比用十进制数表示的位数多得多,因此读写很不方便,所以在实际工作中人们常釆用八进制或十六进制来替代二进制。八进制数的基数是8(8=23),十六进制数的基数为16(16=24)由于二进制数、八进制数和十六进制数之间具有2的整指数倍的关系,因而可十分方便地直接进行转换。八进制数、十六进制数与二进制数的转换将二进制整数转换成八进制或十六进制整数的方法是:从右边第一位起,分别向左按3位(转换成八进制)或4位(转换成十六进制)分组,最后不满3位或4位的,则需加0。将每组以对应的八进制数或十六进制数代替,即为等值的八进制数和十六进制数。例如:将八进制数或十六进制数转换成二进制数时,可按上述方法的相反过程进行,即将每一位八进制数或十六进制数分别转换成3(或4)位二进制数,再按高位到低位组合起来。03带符号数的代码表示PARTTHREE真值与机器数上述讨论的过程中都没有考虑二进制数的符号,一般认为其为正数,但在算术运算过程中,总会出现负数。实际上不带符号的数是数的绝对值,在绝对值前加上表示正负的符号(+/-)就成了带符号数。它可由两部分组成:一部分表示数的符号,另一部分表示数的数值。由于数的符号是一个具有正、负两种值的离散信息,所以它可以用1位二进制数来表示。通常是以0表示正数,以1表示负数。对于一个n位二进制数,如果数的第一位为符号位,那么余下的n-1位就表示数的数值部分。一般,直接用正号“+”和负号“-”来表示符号的二进制数,称为符号数的真值。数的真值形式是一种原始形式,无法直接用在数字计算机中。但是,当将符号数值化之后,便可以在计算机中使用它了。因此在计算机中使用的符号数便称为机器数。如二进制正数+1011在机器中可表示为01011,二进制负数-1011在机器中可表示为11011。机器数有3种常用的表示形式,即原码、反码和补码。原码原码又被称为“符号一数值表示”。当用原码形式表示正数和负数时,第1位是符号位。对于正数,符号位表示为0,对于负数,符号位表示为1,其余各位表示数值部分。假如两个带符号的二进制数分别为S和£,其真值形式为S1=+11001
S2=-01011则S1和S2的原码表示形式为[S1]原=+11001 [S2]原=-01011根据上述原码形成规则,一个n位整数S(包括一位符号位)的原码一般表达式为原码对于定点小数而言,一般将小数点定在最高位的左边,此时,数值小于1。定点小数原码一般表达式为由原码的一般表达式可以得出:(1)当S为正数时,[S]原和S的区别只是增加一位用0表示的符号位。由于在数的左边增加一位。对该数的数值并无影响,所以[S]原就是S本身。(2)当S为负数时,[S]原和S的区别是增加了一位用1表示的符号位。(3)在原码表示中,有两种不同形式的0,即反码反码又被称为“对1的补数”。当用反码表示时,左边第1位即为符号位,符号位为0代表正数,符号位为1代表负数。对于正数,反码和原码相同。而对于负数,反码的数值是将原码数值按位求反,即原码的某位为1,则反码的相应位便为0,或者原码的某位为0,反码的相应位便为1。所以,反码数值的形成与它的符号位有关。反码又被称为“对1的补数”。当用反码表示时,左边第1位即为符号位,符号位为0代表正数,符号位为1代表负数。对于正数,反码和原码相同。而对于负数,反码的数值是将原码数值按位求反,即原码的某位为1,则反码的相应位便为0,或者原码的某位为0,反码的相应位便为1。所以,反码数值的形成与它的符号位有关。假如两个带符号的二进制数分别为S1和S2,其真值形式为
S1=+11001
S2=一01011则S1和S2的反码表示形式为
[S]反=011001
[S]反=110100根据上述的反码形成规则,一个n位的整数S(包括一位符号位)的反码一般表达式为反码同样,对于定点小数,如果小数部分的位数为物,则它的反码一般表达式为从反码的一般表达式可以看出:(1)正数S的反码[S]反与原码[S]原相同。(2)对于负数S,其反码[S]反的符号位为1,数值部分是将原码数值按位求反。(3)在反码表达式中,0的表示有两种不同的形式,即补码补码又被称为“对2的补数”。在补码表示方法中,正数的表示与原码和反码的表示是一样的,而负数的表示却不相同。对于负数,将原码转变成补码的规则是:符号位不变,仍为1,数值部分变反加1,即逐位变反,在最低位加1。如两个带符号的二进制数分别为S1和S2,其真值表达式为
S1=+11OO1
S2=-01011则S和S2的补码表示形式为根据上述补码形成规则,一个n位的整数S(包括一位符号位)的补码一般表达式为补码同样,对于定点小数,补码的一般表达式可写成由补码的一般表达式可以看出:(1)正数S的补码[S]补、反码[S]反和原码[S]原是相同的。(2)对于负数,补码[S]补的符号位为1,其数值部分为反码的数值末位加1。(3)在补码表示法中,0的表示形式是唯一的。即机器数的运算前面介绍了带符号数的3种表示法,由于形成规则不同,加、减运算的规律也不相同。下面分别加以介绍。1.原码运算原码中的符号位仅用来表示数的正、负,不参加运算。进行运算的只是数值部分。原码运算时,应首先比较两个数的符号,若两数的符号相同,则可将两个数的数值相加,最后在结果前附上相应的符号;若两个数的符号不同,则需比较两个数的数值大小,然后将数值较大的数减去数值较小的数,并将数值较大的数的符号作为最后结果的符号。下面举例说明。例1.3.1
己知S1=0.1001,S2=-0.0101,求[S2+S1]原和[S2-S1]原。解:由于S1和S2的符号不同,并且S的绝对值大于&的绝对值,因此要进行S1减S2的运算,其结果为正。机器数的运算运算结果为原码,即故其真值为又由于S1和-S2的符号相同,因此,实际上要进行S加S的运算,其结果为负。运算结果为原码,即
故其真值为机器数的运算2.反码运算由反码的定义可以得到反码加、减运算规则如下:反码的加、减运算规则表明:两数和的反码等于两数的反码之和,而两数差的反码也可以用加法来实现。运算时,符号位和数值位一样参加运算,如果符号位产生进位,则需将此进位加到和数的最低位,称之为“循环进位”。运算结果的符号位为0时,说明是正数的反码,与原码相同;运算结果的符号位为1时,说明是负数的反码,应再对运算结果求反码,才得到原码。下面举例说明。机器数的运算例1.3.2
已知S1=0.1001,S2=一0.0101,求[S2+S1]反和[S2-S1]原。解:由于符号位产生了进位,因此要进行“循环进位”,即由于其符号位为0,则其真值为$2+S=0.0100。
又由于符号位产生了进位,因此要进行“循环进位”,即由于其符号位为1,则其真值为&-Si=-0.1110。机器数的运算3.补码运算补码运算同反码运算一样,两数差的补码可以用两数补码的加法来实现。补码加、减运算规则如下:运算时,符号位和数值位一样参加运算,如果符号位产生了进位,则此进位可“略去”。运算结果符号位为0时,说明是正数的补码,与原码相同。运算结果符号位为1,说明是负数的补码,应对结果再求补码才得原码。下面举例说明。机器数的运算机器数的运算机器数的运算从上述的讨论可以看出,原码、反码和补码各有优缺点。原码表示法简单方便,但原码减法必须做真正的减法,不能用加法来代替,因此实现原码运算所需的逻辑电路比较复杂。反码和补码的优点是只需用加法逻辑电路便可实现。并且用补码进行减法运算很方便,它只需进行一次算术相加。而用反码进行减法运算,若符号位产生进位就需进行两次算术相加。而且反码还有一个缺点,就是具有两个零值,这容易在计算过程中产生歧义。04数码和字符的代码表示PARTFOUR十进制数的二进制编码简称为二一十进制码或BCD码,所谓BCD码是指用若干位二进制数来表示1位十进制数。十进制数有0〜9共10个数码,所以表示1位十进制数,至少需要4位二进制数。但4位二进制数可以产生24=16种组合,用4位二进制数表示1位十进制数,有6种组合是多余的。十进制数的二进制编码可以有许多种方法,即有许多种不同的编码方案。表1.4.1列举了目前常用的几种编码方案。十进制数的二进制编码十进制数的二进制编码下面分别介绍几种常用编码。高长调:5级差以上的对比,令人感觉刺激、对比强烈,视觉感快速明了,反差大,形象清晰度高,有积极、活泼、刺激、明快的感觉。高中调:3〜5级差的对比,视觉感明快、活泼,中强度对比,效果明亮。高短调:3级差以内的对比,视觉感优雅,形象对比小,给人优雅、高贵、柔软、朦胧的感觉,在设计中常作为女性色彩。1.8421码8421码是最基本、最常用的一种编码方案。在这种编码方式中,每一位二进制代码都代表一个固定的数值,把每一位的1代表的十进制数加起来,得到的结果就是它所代表的十进制数码。由于代码中从左到右每一位的1分别表示8、4、2、1,所以把这种代码称为8421码。在8421码中每一位1代表的十进制数称为这一位的权。由于8421码中的每一位的权是固定不变的,它属于恒权代码。恒权码的按权展开式如下:因而,代码1001表示十进制数9。2.余3码余3码是一种特殊的8421码,它是由8421码加3后形成的,所以称为余3码。例如,十进制数7在8421码中是0111,在余3码中就成为1010。余3码的各位无固定的权。余3码是一种“对9的自补”代码。它的0和9、1和8、2和7、3和6、4和5互为反码,即对应码位中,当其中一个为0时,另一个就为1。用余3码能很方便地求得某数“对9的补数”,即把该数的余3码自身按位取反,就得到该数“对9的补数”的余3码。如十进制数4的余3码代码为0111,其“对9的补数”是5,则5的余3码代码为1000。当两个余3码表示的数相加时,由于每个余3码都余3,其和就余6。因此,在用余3码做十进制加法时,若两数之和为10,正好等于二进制数的16,于是便向高位自动产生进位信号。如十进制数4和6的余3码分别是0111和1001,当两数相加时,即向高位产生进位信号。十进制数的二进制编码十进制数的二进制编码高长调:5级差以上的对比,令人感觉刺激、对比强烈,视觉感快速明了,反差大,形象清晰度高,有积极、活泼、刺激、明快的感觉。高中调:3〜5级差的对比,视觉感明快、活泼,中强度对比,效果明亮。高短调:3级差以内的对比,视觉感优雅,形象对比小,给人优雅、高贵、柔软、朦胧的感觉,在设计中常作为女性色彩。3.2421码2421码也是一种恒权码,它的0和9、1和8、2和7、3和6、4和5互为反码,这一点和余3码相似。只要将2421码自身按位求反,就能方便地得到其“对9的补数”的2421码。2421码用4位二进制数表示1位十进制数,其权为
W3=2,W2=4,W1=2,W0=1例如,2421码的0100,其按权展开式为
0x2+lx4+0x2+0xl=4因而,代码0100表示十进制数4。而其“对9的补数”是5,根据反码的定义,其代码为lOllo2421码的这一特性在计算机中对十进制数进行运算时很有用处。4.余3循环码余3循环码是一种变权码,每一位的1在不同代码中并不代表固定的数值。它的主要特点是相应的两个代码之间仅有一位的状态不同。因此,按余3循环码连接计数器时,每次状态翻转过程中只有一个触发器翻转,因此译码时不会引发竞争一冒险现象。在数字通信中,代码在形成和传送过程中,都可能发生错误,例如1001变成了1000;也会因处理该代码的逻辑电路有故障而出现了错误的结果,例如正确的结果是1110,但由于电路故障而输出的是HOOo与原始信息不同的代码称为误码。为了使代码在形成和传送中不易出错,或者出现误码时便于发现,甚至能查出错误的位置,因此产生了被称为可靠性编码的方法。1.格雷码(Gray)格雷码又称循环码,它有多种编码形式,但它们有一个共同的特点,就是任意两个相邻的代码之间,它们的格雷码仅有一位不同,其余各位均相同。表1.4.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年清新县招教考试备考题库附答案解析
- 2026年南京旅游职业学院单招职业适应性测试题库及答案详解(有一套)
- 2026年信阳学院单招职业倾向性测试题库附参考答案详解(突破训练)
- 饮品培训课件教学
- 2025年永泰县幼儿园教师招教考试备考题库附答案解析(夺冠)
- 2026年南充职业技术学院单招职业适应性考试题库附参考答案详解(巩固)
- 2026年南阳工艺美术职业学院单招职业适应性考试题库含答案详解(培优b卷)
- 2026年南京铁道职业技术学院单招职业倾向性测试题库带答案详解(研优卷)
- 2026年南京交通职业技术学院单招职业倾向性考试题库带答案详解(b卷)
- 2026年内蒙古通辽市单招职业适应性测试题库附答案详解(培优b卷)
- GB/T 20513.1-2025光伏系统性能第1部分:监测
- 2025年ESG广告的危机公关价值
- 社区工作者岗前培训
- 2026年普通高中学业水平合格性考试政治必背知识点考点提纲
- 2025年及未来5年中国税收信息化未来发展趋势分析及投资规划建议研究报告
- 光伏支架销售基本知识培训课件
- 火炬设计计算书
- 2025-2026学年人教版(2024)七年级地理第一学期第一章 地球 单元测试(含答案)
- 宇树科技在智能家居控制系统的研发
- 应急救援装备项目实施承诺及质量保障方案
- 传染性疾病影像学课件
评论
0/150
提交评论