集成电子技术基础教程LDC第二篇数字电路和系统第一章数字逻辑基础集成电子技术基础教程LDC第一章数字逻辑基础2.1.1数制、码制及相互间的转换2.1.2逻辑代数2.1.3逻辑代数化简2.1.4逻辑功能的硬件语言描述集成电子技术基础教程LDC2.1.1数制、码制及相互间的转换475.6=4×102+7×101+5×100+6×10-1“权”表示价值,同一数码在不同位上的权重不同一、数制及相互间的转换1.计数体制十进制数102——百位的“权”101——拾位的“权”100——个位的“权”10-1——拾分之一位的“权”“数码”:0、1、…、9“基数”:10,逢十进一集成电子技术基础教程LDCmmnnnnrrKrKrKrKrKrKrKrKN22110011222211r——任意进制数的基数Ki——某数中第i位的数码元素n——该数整数部分的位数m——小数部分的位数1)(nmiiirrKN任意进制数的通式:集成电子技术基础教程LDC二进制数(binaryNumber)基数r=2,逢二进一,只有0和1二个数码元素例:(1101.001)2二进制数从高位至低位的“位权”依次是:2n-1、2n-2、…、20、2-1、…、2-m=13.125=123+122+021+120+02-1+02-2+12-3集成电子技术基础教程LDC八进制数(octalNumber)例:(357.61)8或(357.61)O基数r=8,逢八进一,八个数码元素为0、1、…7从高位至低位的“位权”依次是:8n-1、8n-2、…、80、8-1、…、8-m=3×82+5×81+7×80+6×8-1+1×8-2=239.765625集成电子技术基础教程LDC十六进制数(hexadecimalNumber)十六个数码元素为0、1、…9、A、B、C、D、E、F基数r=16,逢十六进一例:(A8D.C6)16或(A8D.C6)H从高位至低位的“位权”依次是:16n-1、16n-2、…、160、16-1、…、16-m=A162+8161+D160+C16-1+616-2=2701.773438集成电子技术基础教程LDC几种常见数制间的关系6601106550101544010043300113220010211000110000000十六进八进二进十进7701117F17111115E16111014D15110113C14110012B13101111A121010109111001981010008十六进八进二进十进集成电子技术基础教程LDC2.各种进制数间的相互转换原因:数字电路运行在二值的二进制数字信号下,但为书写方便,常用八进和十六进制数表示,而日常又习惯于十进制数,所以要进行数制间的转换。二、八、十六进制数之间的相互转换十进制数转换为r进制数r进制数转换为十进制数数制转换包括:集成电子技术基础教程LDC十进制数转换为r进制数整数部分的转换采用除r取余法。将待转换的十进制数整数除以r,取余数,不断地进行,直至余数为零。第一次的余数为r进制数的最低位(LSB),最后的余数为转换后进制数的最高位(MSB)。以十进制数转换成二进制数为例:01101023100112321001122221110}])0(2[2{2}]22[2{2}2222{222222)(2KKKKKKKKKKKKKKKKKNnnnnnnnnnnN集成电子技术基础教程LDC【例2.1.1】将十进制数175转换成二进制,八进制和十六进制数。解:结果(175)10=(10101111)2=(257)8=(AF)162175K0=1287K1=1243K2=1221K3=1210K4=025K5=122K6=021K7=10817578215822016175K0=F1610K1=A0集成电子技术基础教程LDC十进制数转换为r进制数时,小数部分的转换采用乘r取整法。将待转换的十进制小数乘以r,取整数,不断地进行,直至积的小数部分为零。第一次的整数为转换后的最高位(MSB),最后一次的整数为最低位(LSB)。•小数部分的转换一个十进制小数可用二进制数表示如下:(N)r=K-12-1+K-22-2+…+K-m+12-m+1+K-m2-m必须注意:有时积的小数部分会达不到零,这时候,可按转换精度的要求来取位数。集成电子技术基础教程LDC0.1250.125×2×80.250K-1=01.0K-1=1×20.50K-2=00.125×2×161.0K-3=12.0K-1=2【例2.1.2】将十进制数小数(0.125)10转换成等值的二进制数、八进制数和十六进制数。结果(0.125)10=(0.001)2=(0.1)8=(0.2)16解:集成电子技术基础教程LDCr进制数转换成十进制数按权展开再相加2进制、8进制以及16进制数之间的转换用二进制数作为桥梁一个八进制数码元素用一组三位二进制数表示一个十六进制数码元素用一组四位二进制数表示集成电子技术基础教程LDC二、码制(编码)生活中用一组十进制数来代表一个特定对象的情况是很多的。如电话号码、邮政编码等等。用一组十进制数代替一个特定对象的过程称为编码。而在数字电路中,用一组二进制数来代替某一特定的对象,这组二进制数就是代表该对象的代码。代替的方法有非常多的种类。集成电子技术基础教程LDC二—十进制编码(BCD码)十进制数的0~9十个数字分别用一个四位的二进制编码表示,称十进制数的二进制编码,简称BCD码(BinaryCodedDecimal)。四位二进制数有十六种不同组合,只要选出其中的十种分别代替0、1、…、9十个数码进行组合。•有权码:8-4-2-1、5-4-2-1、…,分别表示这种代码方案中高位至低位的“权”,即每一位的1代表的十进制数值。•无权码:某一位代码没有具体十制数值的意义。集成电子技术基础教程LDC1100100111001111111111119101110001011111011101101810100111101001111101110071001011010010110110010016100001011000010110111000501110100010001000100011140110001100110011001101013010100100010001000100100201000001000100010001000110011000000000000000000000无权码余三码有权码8421542124212421*5211十进制数集成电子技术基础教程LDC如(359)10=(001101011001)84218421BCD码有时也简称为BCD码。=(001110001100)5421=(001101011111)2421=(010110001111)5211=(101100111)2=(011010001100)余三码集成电子技术基础教程LDC循环码(GrayCode)是一种可靠性编码。因为这种代码中任何二组相邻代码之间只相差一位码不同,其余码都相同。100015010071001140101610111301115101012011041110110010311111000112110190001111008000004位循环码十进制数4位循环码十进制数集成电子技术基础教程LDC字符代码ISO编码(InternationalStandardizationOrganization)ASCⅡ码(AmericanStandardCodeforInformationInterchange)国际标准组织制定的八位二进制代码,主要用于信息交换,它包括十进制数的10个数码,26个英文字母,以及+、-、×、÷、……等20个符号,共56种特定对象。是美国国家信息交换标准代码的简称,也是八位二进制代码,其中一位作奇偶校验位。集成电子技术基础教程LDC三、计算机中的正负数表示数字电路只认识二进制数,所以正负数肯定也用二进制数表示。其方法是在一个数的最高位前设置一位符号位。符号位为“0”时,表示该数为正数,符号位为“1”时为负数。这种带符号位的数称为机器数,原正负数又称真值一个机器数的表示形式有三种:原码,反码和补码集成电子技术基础教程LDC原码(TrueForm)由符号位加原数的数值部分,即[X]原=符号位+原数值特点:原码表示简单,直观。适用于两数相乘,因为乘积的符号位只要将两乘数符号位异或即可。但减法运算的符号位较难求出如x1=+1001010则[x1]原=01001010x2=-1001010则[x2]原=11001010集成电子技术基础教程LDC反码(One'sComplement)例x1=+1001010则[x1]反=01001010x2=-1001010则[x2]反=10110101正数的反码为符号位加上原数值部分,负数的反码为符号位加上原数值的反码(原数值按位求反)[x]反=符号位+原数值(正数)=符号位+原数值按位取反(负数)集成电子技术基础教程LDC补码(Two'sComplement)补码(补数)可以从生活中来认识。如早晨7:00起床时,发现时钟停在10:00上。要校准到7点,有二种方法:a.顺拨时钟9个小时,相当于10+9=12+7b.反拨时钟3个小时,相当于10-3=7对钟表走一圈为12的最大数而言,顺拨时的10+9和反拨的10-3是相等的。数学上+9和-3就称为最大数12的互为补数,或称+9和-3是对模12的补码(数学上最大数也称模)由上可见,通过补码,一个减法运算可以变换成加法运算。集成电子技术基础教程LDC一个n位的二进制数x的补码可用下式方法求取:[x]补=模-[x]=2n-[x]例如(1010)2=24-1010=10000-1010=0110补码有两种求法:a.反码加1;b.从原数值的最低位开始,在遇到1之前(包括该1)原数码不变,其后数码按位求反。[x]补=符号位+原数值(x为正数)=符号位+原数值的补码(x为负数)例如x1=+1001010的补码是[x1]补=01001010x2=-1001010的补码是[x2]补=10110110集成电子技术基础教程LDC补码的运算规则[x1]补+[x2]补=[x1+x2]补补码再求补=原码x1-x2=[x1]补+[-x2]补例如求12-9=?1100-1001=[1100]补+[-1001]补=01100+10111=100011其中,最高位为最大数,自然丢失(溢出),次高位0为符号位,运算结果为+3又如求9-12=?1001-1100=[1001]补+[-1100]补=01001+10100=11101结果是负数,再求补后得10011,所以是-3集成电子技术基础教程LDC小数反码[x]反=符号位+原数值(x为正数)=符号位+原数值的反码(x为负数)小数补码[x]补=符号位+原小数部分数值(x为正数)=符号位+原小数部分的补码(x为负数)小数的反码和补码:(指定点数)集成电子技术基础教程LDC几个数的真值、原码、反码、补码x[x]原[x]反[x]补x[x]原[x]反[x]补+1010010100101001010-1001110011011010111+0100001000010000100-0011100111110011101+0.10010.10010.10010.1001-0.10011.10011.01101.0111+0.00000.00000.00000.0000-0.00001.00001.11111.0000集成电子技术基础教程LDC2.1.2逻辑代数逻辑代数,又称布尔代数。由英国数学家乔治·布尔在1849提出。它用来描述客观事物中的逻辑关系,约100年后才用在开关电路中。用字母或符号表示变量,但是