《第一章+数字概念与数制系统.ppt》由会员分享,可在线阅读,更多相关《第一章+数字概念与数制系统.ppt(86页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数字逻辑:应用与设计数字逻辑:应用与设计计算机学院计算机学院余余 波波1 1教学内容n第1章 数字概念与数制系统n第2章 布尔开关代数n第3章 组合逻辑原理n第4章 组合逻辑的分析与设计n第5章 触发器、简单计数器与寄存器n第6章 时序电路介绍2参考书籍3第一章第一章 数字概念与数制系统数字概念与数制系统计算机学院计算机学院余余 波波4 4Content数字和模拟数字和模拟1位数系统2数制系统的转换3二进制编码4算术运算5基 本 概 念数字离散数字 模拟连续时间温度电量6基 本 概 念RC电路和电路和Vc的连续曲线的连续曲线7基 本 概 念两种形式表示的正弦波电压两种形式表示的正弦波电压8基
2、本 概 念模拟伏特表模拟伏特表数字伏特表数字伏特表9数字系统的历史17世纪世纪19世纪世纪20世纪现代PascalGottfriedJacquardCharles BabbageGeorge BooleIntel:第一:第一个个微微处理器理器生生产、通信、通信、娱乐、科技、生活、科技、生活10定义问题 算法简介设计数字系统的问题定义的方法设计数字系统的问题定义的方法n1)确定处理任务na)确定每个任务的输入nb)确定每个任务的输出n2)为完成任务而指定成员函数11 第四级:复杂的功能逻辑单元第三级:功能逻辑单元第二级:功能逻辑门单元第一级:电子元件VLSIMSI 与 LSISSI元件级第五级:
3、复杂系统数字系统综述12数制系统简介数制数制n人们对数量计数的一种统计规则n如“半斤八两”数制的两个基本要素数制的两个基本要素n基数:计数制中所用到的数码的个数,r;n例:十进制:r=10;二进制:r=2n位权:不同数位上的固定常数n例:十进制个位的权:1,十位的权:1013Content数字和模拟1位数系统位数系统2数制系统的转换3二进制编码4算术运算5十进制十进制数(十进制数(DecimalDecimal)n组成:0、1、2、3、4、5、6、7、8、9n进位规则:逢十进一。n不同位置数的权不同,可用10i表示,i在(n-1)至-m间取值,n为十进制数的整数位位数,m为小数位位数。536.1
4、5910=(5102)+(3101)+(6100)+(110-1)+(510-2)+(910-3)15十进制数一个十进制数按权展开为一个十进制数按权展开为16二进制二进制数(二进制数(Binary)n组成:0、1n进位规则:逢二进一 例:(101101.10)2=125+024+123+122+021+120+12-1+02-2 (in decimal)=32+0+8+4+0+1+0 =(45.5)10Most Significant Bit(MSB)Least SignificantBit(LSB)17二进制数例:试标出二进制数11011.011的LSB,MSB位,写出各位的权和按权展开式,
5、求出其等值的十进制数(11011.011)2=124+123+022+121+120+02-1+12-2+12-3=16+8+0+2+1+0+0.25+0.125=27.37510MSBLSB18八进制八进制数(八进制数(Octal)n组成:0、1、2、3、4、5、6、7、n进位规则:逢八进一例:(312.64)8=382+181+280+68-1+48-2 =192+8+2+0.75+0.0625=202.8125 19八进制例:用位置计数法写出八进制数231.25(231.25)8=282+381+180+28-1+58-2=264+38+11+20.125+50.015625=128+2
6、4+1+0.25+0.078125=153.32812520十六进制十六进制(十六进制(Hexadecimal)n组成:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、FnAF的等值十进制数分别为10、11、12、13、14、15n进位规则:逢十六进一例:(21A.5)16=2162+1161+A160+516-1=512+16+10+0.3125=538.312521十六进制例:用位置计数法写出A59C.3A(A59C.3A)16=A163+5162+9161+C160+316-1+A16-2=A4096+5256+916+C+3/16+A/256=40960+1280+133+
7、12+0.1875+0.0390625=42396.226562522任意进制任意进制任意进制r(N)N)r r=(c=(cn-1n-1r rn-1n-1+c+cn-2n-2r rn-2n-2+c+c1 1r r1 1+c+c0 0r r0 0+c+c-1-1r r-1-1+c+c-2-2r r-2-2+c c-m-mr r-m-m)r:r:数制的基数制的基c:c:该基的字符集合中的字符该基的字符集合中的字符N:N:要用要用r r进制表示的数进制表示的数n:Nn:N整数部分的位数整数部分的位数m:Nm:N小数部分的位数小数部分的位数23用基用基r进行计数进行计数n字符集合中的字符排序n进位规则
8、,逢r进一例:以3为基从0计到910解:字符集=0,1,2 0,1,2,10,11,12,21,22,100000,001,002,010,011,012,021,022,10024Content数字和模拟1位数系统2数制系统的转换数制系统的转换3二进制编码4算术运算5十进制、二进制、八进制、十六进制十进制、二进制、八进制、十六进制26二进制二进制十六进制十六进制n特点:因16=24,所以4位二进制数代表一位十六进制数n方法:将二进制数从小数点处开始,分别向左、右按每向左、右按每四位分为一组四位分为一组,不足四位则以不足四位则以0补上补上,每组用相应的十六进制数表示,组合后可得到相应的十六进制
9、数例:例:将10101111.00010110112转换成十六进制数。解:1010 1111.0001 0110 1100=A F .1 6 C 10101111.00010110112=AF.16C1627练习1:将二进制数(11101.01)2转换成十六进制数解:11101.01 =0001 1101.0100 =1 D .4 (11101.012)2=(1D.416)16练习2:将二进制数(11010101000.1111010111)2转换成十六进制数解:11010101000.1111010111 =0110 1010 1000.1111 0101 1100 =6 A 8.F 5 C
10、(11010101000.1111010111)2=(6A8.F5C)1628十六进制十六进制二进制二进制n方法:将每个十六进制字符换为相应的四位二进制数,连接起来,(去掉首尾多余的0)。例:例:将(785.4AF)16转换成二进制数。解:7 8 5.4 A F=0111 1000 0101.0100 1010 1111=11110000101.01001010111(785.4AF)16=(11110000101.01001010111)229练习:将练习:将(3BE1.27)16转换为二进制数转换为二进制数解:3 B E 1.2 7 =0011 1011 1110 0001.0010 01
11、11 =11101111100001.00100111(3BE1.27)16=(11101111100001.00100111)230二进制二进制八进制八进制n特点:因8=23,所以3位二进制数代表一位八进制数n方法:将二进制数从小数点处开始,分别向左、右按每分别向左、右按每三位分为一组,不足三位则以三位分为一组,不足三位则以0补上补上,每组用相应的八进制数表示,组合后可得到相应的八进制数例:例:将10101111.00010110112转换成八进制数。解:010 101 111.000 101 101 100=2 5 7.0 5 5 4 (10101111.0001011011)2=(257
12、.0554)831练习:将二进制数练习:将二进制数11101.01转换成八进制数转换成八进制数解:11101.01 =011 101.010 =3 5 .2 (11101.01)2=(35.2)832八进制八进制二进制二进制n方法:将每个八进制字符换为相应三位二进制数,连接起来,(去掉首尾多余的0)。例:例:将(325.744)8转换成二进制数。解:3 2 5.7 4 4=011 010 101.111 100 100=11010101.1111001(325.744)8=(11010101.1111001)233数字系统简介八八进制制十六十六进制制二二进制制34练习:将练习:将(3BE1.2
13、7)16转换为八进制数转换为八进制数解:3 B E 1.2 7 =0011 1011 1110 0001.0010 0111 =11101111100001.00100111 =011 101 111 100 001.001 001 110 =3 5 7 4 1.1 1 6 =(35741.116)8 练习练习:将将(325.744)8转换成十六进制数。转换成十六进制数。解:3 2 5.7 4 4=011 010 101.111 100 100=1101 0101.1111 0010=D 5 .F 3 =(D5.F3)1635二进制二进制十进制十进制n方法:将二进制数按权展开,计算出相应的十进
14、制值(bn-1b0.b-1b-m)2=bn-12n-1+b020+b-12-1+b-m2-m=(N)10例:将(10110.0101)2转换成十进制数。(10110.0101)2=1(24)+0(23)+1(22)+1(21)+0(20)+0(2-1)+1(2-2)+0(2-3)+1(2-4)=24+22+21+2-2+2-4=16+4+2+0.25+0.0625=22.312536练习:将(1001.011)2转换成十进制(1001.011)2=1(23)+0(22)+0(21)+1(20)+0(2-1)+1(2-2)+1(2-3)=23+20+2-2+2-3=8+1+0.25+0.125=
15、9.37537十进制十进制二进制二进制n整数部分转换为二进制n小数部分转换为二进制n结果相加38(1 1)整数部分转换)整数部分转换设N10的整数部分转换成的二进制数为 bn-1bn-2b1b0可列成下列等式:N10=bn-12n-1+bn-22n-2+b121+b020 将上式两边同除以2,两边的商和余数相等商=bn-12n-2+bn-22n-3+b221+b1余数=b0,经整理后有39二进制与十进制再将上式两边同时除以2,可得余数b1,依次类推,便可求出二进制数的整数部分的每一位系数bn-1、b1、b0。在转换中注意除以2一直进行到商数为0止。这就是所谓除基取余法除基取余法(Radix D
16、ivide Method)。40二进制与十进制41练习:将练习:将7710转换为二进制数转换为二进制数42(2)小数部分转换)小数部分转换设N10的小数部分转换成二进制数为b-1b-2b-m,可写成等式:N10=b-12-1+b-22-2+b-m2-m 将上式两边同时乘以2得 2N10=b-120+b-22-1+b-m2-m+1 上式中乘积的整数部分就是系数b-1,而乘积的小数部分为:2N10-b-1=b-22-1+b-m2-m+1 432N10-b-1=b-22-1+b-m2-m+1 对上式两边再同乘以2,则积的整数部分为系数b-2,依次类推,便可求出二进制数的小数部分的每一位系数,这就是所
17、谓乘基取整法乘基取整法(Radix Multiply Method)。在转换过程中,乘2过程一直继续到所需位数或达到小数部分为0止。44例:将0.2510转为二进制数。解:0.25102=0.5 整数=0 MSB 0.5102=1.0 整数=1 LSB即0.2510=0.012 由上两例可得119.2510=1110111.01245练习:将练习:将0.62510转换为二进制数转换为二进制数解:0.625102=1.25 整数=1 MSB 0.25102=0.5 整数=0 0.5102=1.0 整数=1 LSB0.62510=0.1012练习:将练习:将39.510转换为二进制数转换为二进制数
18、解:整数部分:3910=1001112 小数部分 0.510=0.1239.510=100111.1246基转换算法基转换算法输入N与rN/r=Q,R将R存为LSDQ/r=Q,R保存RQ=0?R=MSD(以r为基)输 出 以 r为 基 的数结束开始YESNO输入N与r(r)(Nf)=IpFpIp=MSD(r)(Fp)=IpFp保存IpFp=0?Ip=LSD输 出 以 r为 基 的数结束开始YESNO逐次除法逐次除法逐次乘法逐次乘法47 十进制到任意进制的转换十进制到任意进制的转换n整数部分:逐次除法n小数部分:逐次乘法48例:将(235.2)10转换为四进制数整数部分:小数部分:0.2 4=0
19、.8 00.8 4=3.2 30.2 4=0.8 00.8 4=3.2 3.(0.2)10=(0.0303.)4(235.2)10=(3223.0303.)449任意进制到十进制任意进制到十进制n方法:将r进制数按权展开,计算出相应的十进制值(cn-1cn-2,c0c-1c-m)r=(cn-1rn-1+cn-2rn-2+c1r1+c0r0+c-1r-1+c-2r-2+c-mr-m)例:将(324.2)5转换为10进制解:(324.2)5=352+251+450+2/5=75+10+4+0.4=89.4(324.2)5 =(89.4)1050Content数字和模拟1位数系统2数制系统的转换3二
20、进制编码二进制编码4算术运算5BCD码BCD码码Binary Coded Decimaln用四位二进制代码表示一个十进制位n其本质是十进制,表现形式为二进制码n是一种编码方案,并非一种数制n转换方法n十进制数-BCD码:把十进制数的每一位数码分别用BCD码取代nBCD码-十进制数:BCD码以小数点为起点向左、向右每四位分一组,然后写出每一组代码代表的十进制数,并保持原顺序即可。52BCD码加权加权BCD码码n每个位置都分配了权或值n8421码n8421码是最常用的一种BCD码,舍去四位二进制码的最后六个码,十位数和其二进制数有对应关系,为恒权码。n余3码n特点是每个余3码所表示的二进制数要比它
21、对应的十进制数多3,是一种自补码自补码n84-2-1,5311,5421码n映像性n53BCD码例:将9275.610转换成8421BCD码9=10012=00107=01115=01016=0110(9275.6)10=(1001001001110101.0110)8421BCD注意:BCD编码与二进制数相比,需要更多的位数54BCD码例:将8421 BCD码(100100000011.10000101)8421BCD转换成对应的十进制数。解:1001=9 0000 =0 0011 =3 1000 =8 0101 =5(100100000011.10000101)8421BCD=(903.8
22、5)1055BCD码BCD自补码自补码n自补码即算数补码和逻辑补码相同的编码,即:其中0和9,1和8,2和7,3和6,4和5各对码组相加均为1111n算数补码n基数补码:x=(b)-an减1基数补码:x-1=(b-1)-a其中,b是被求补的数a的基例:610 的算数基数补码为10-6=410 610 的算数减1基数补码为(10-1)-6=310n逻辑补码n与原值相反的值,0的逻辑补为1,1的逻辑补为056间隔位编码间隔位编码n问题提出两个连续值之间只有一位发生变化?两个连续值之间只有一位发生变化?57格雷码n主要优点是相邻两组编码只有一位状态不同。n以中间为对称的两组代码只有最左边一位不同。n
23、无权码58格雷码的产生格雷码的产生59ASCII码码nASCII是American National Standard Code for Information Interchange美国国家信息交换标准代码的简称。常用于通讯设备和计算机中。n它是一组八位二进制代码,用17这七位二进制代码表示十进制数字、英文字母及专用符号。第八位作奇偶校验位(在机中常为0)。EBCDICn在一个EBCDIC的文件里,每个字母或数字字符都被表示为一个8位的二进制数(一个0、1字符串)。256个可能的字符被定义(字母,数字和一些特殊字符)6061带符号的二进制编码带符号的二进制编码n可提供表示正负数的方法n二进制
24、带符号数规定:使用最高为表示符号而使用其它较低位表示数量。n原码n反码n补码62原码原码n又称为“符号-数值”表示n第一位表示符号位:正数:0;负数:1n其余各位表示数值部分例:N1=+10011,N2=-10011,写出其各自的原码表示形式。解:N1原=0 10011 N2原=1 10011n一个n位的整数N的原码一般表示为63反码(以反码(以1为基的补码)为基的补码)n以反码的表示规则:n正数N的反码N反与原码N原相同n对于负数N,其反码的符号位为1,数值部分将原码数值按位求反按位求反(0-1,1-0)n在反码中有两种不同形式表示零n以四位二进制数表示为例:n+0反=00000n-0反=1
25、111164例:如两个带符号二进制数真值形式分别为例:如两个带符号二进制数真值形式分别为N1=+10011,N2=-01010,求其以1为基的补码(反码)。解:N1原=010011 N1反=010011 N2原=101010 N2反=11010165补码(以补码(以2为基的补码)为基的补码)n补码的表示规则:n正数的补码N补与原码N原相同;n负数的补码N补的符号位为1,数值部分为反码数值加1n在补码表示法中,0的表示是唯一的n+0=00000n-0=0000066例:如两个带符号二进制数真值形式分别为例:如两个带符号二进制数真值形式分别为N1=+10011,N2=-01010,求其补码表示形式
26、。解:N1原=010011 N1补=N1原=010011 N2原=101010 N2反=110101 N2补=11011067练习:写出下列各数的原码,以练习:写出下列各数的原码,以1为基的补为基的补码,以码,以2为基的补码。为基的补码。(1)+1011 (2)-10110解:(1)+1011原=1011 +1011反=1011 以1为基的补码 +1011补=1011 以2为基的补码(2)-10110原=110110 -10110反=101001 以1为基的补码 -10110补=101010 以2为基的补码68任意任意r进制的补数进制的补数n对给定的r进制数N,求其以r为基的补数为:Nr补=r
27、n-(N)r算法1:1.对r进制数N,从最低有效位向最高有效位进行转换2.遇到的第一个不为0的位转换为r-ai3.将剩余位转换为r-ai-1,直到最高有效位。算法2:1.对r进制数N,从最低有效位向最高有效位进行转换2.将每一位转换为r-ai-13.将由步骤2得到的结果+1。69例:(56700)10 的以10为基的补数是(43300)10例:(10100)2 的以2为基的补数是(01100)2例:求N=(10110)2 的8位以2为基的补数解:将N补齐为8位二进制数 N=00010110N2补=(11101010)2例:N=(01100101)2 的以2为基的补数 N=01100101 10
28、011010 +1 N2补=(10011011)270Content数字和模拟1位数系统2数制系统的转换3二进制编码4算术运算算术运算5二进制算数运算二进制算数运算n加法:0+0=0,0+1=1,1+1=10=(1)0(逢二进一,本位为0)n减法:0-0=0,1-0=1,0-1=(1)0-1=1(借位)n乘法:00=0,01=0,11=1n除法:与十进制相似,实质上是由减法和移位两种操作实现的。72例:计算二进制数例:计算二进制数(10011)2与与(01010)2的和的和解:解:例:计算二进制数例:计算二进制数(10011)2与与(01010)2的差的差解:解:11(借位)73例:计算二进制
29、数例:计算二进制数(10011)2与与(01010)2的乘积的乘积解:解:74例:计算二进制数例:计算二进制数(10011)2与与(01010)2的商的商解:解:循环75练习:计算两个二进制数练习:计算两个二进制数10110.12与与00111.12的和、差。的和、差。和:10110.12 +00111.12 =11110.02 =22.5+7.5=30 差:10110.12 -00111.12 =01111.02 =22.5-7.5=1576带符号数的二进制运算加法加法将加数与被加数用补码形式表示,进行相加;注意溢出的产生。减法减法将减数与被减数用补码形式表示,进行相减;减去一个数等于加上该
30、数的补数(基补码)。区分:求带符号数的补码形式与求一个数的补数区分:求带符号数的补码形式与求一个数的补数77例:求加法(例:求加法(+1101.12)+(+1011.02)0 1101.1+0 1011.0=1 1000.1正数正数+正数正数=负数?负数?错误原因:产生了溢出,即没有足够的存储位。错误原因:产生了溢出,即没有足够的存储位。0 01101.1+0 01011.0=0 11000.1 78例:求(例:求(-810)+(-1010)的和)的和 -810 1 1000 -1010 1 0110 =(1)0 1110 两负数相加等于正数?错误!错误原因:产生了溢出,没有足够存储位。1 1
31、000 1 0110 =1 0 1110101110的原码?1100102=-1810 (补码补码)79溢出的产生溢出的产生产生条件:两个数加在一起,而表示的和所需的位数超出了这两个数的位数,这时就发生了溢出。溢出发生在两个数都是正数或都是负数的情况下。80 例:计算例:计算(+1210)+(-810)的值的值+1210 0 1100 -810 1 1000 =(1)0 0100不对进位值处理。Ans:+481例:从例:从X(+810)中减去中减去Y(-610).+810 01000 -610 11010 -610的补数:0011001000 11010=01000+00110 =01110A
32、ns:X-Y=+1482十六进制算数运算十六进制算数运算n加法(逢 16 进 1)n将两个十六进制数看成它们的十进制值n如果这两个数字的和室1510或更小些,记下相应的十六进制数字n如果这两个数字的和大于1510,记下超出1610的量,并在下一列进一。n减法:逢-1 借16n乘法,除法:与十进制相似。83例:把下面的十六进制数相加:例:把下面的十六进制数相加:(1)2316+18162316+1816 =3B16(2)DF16+AC16 DF16 +AC16 =18B16184例:对下面的十六进制数进行减法运算例:对下面的十六进制数进行减法运算(1)8416-2A16(2)C316-0B16(1)8416-2A16 =5A16(2)C316 -0B16 =B816 85练习:练习:(1)计算两个二进制数之和计算两个二进制数之和(10010)2+(1011)2(2)计算两个带符号二进制数之和计算两个带符号二进制数之和 (+1011)2+(+0110)2(3)计算两个十六进制数之和计算两个十六进制数之和(A4)16+(1C)16Ans:(1)(11101)2(2)(+10001)2 (3)(C0)16 86