微机原理与单片机应用1-2 (2)_第1页
微机原理与单片机应用1-2 (2)_第2页
微机原理与单片机应用1-2 (2)_第3页
微机原理与单片机应用1-2 (2)_第4页
微机原理与单片机应用1-2 (2)_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第1 1章章 计算机基础知识计算机基础知识1.4 1.4 二进制数的运算及其加法电路二进制数的运算及其加法电路1.4.11.4.1二进制数据算术运算规则二进制数据算术运算规则(1) 加法运算规则加法运算规则 0+0=0 例如:例如: 0101 0+1=1 +) 0001 1+0=1 0110 1+1=0 并产生进位并产生进位(2) 减法运算规则减法运算规则 0-0=0 例如:例如: 1011 0-1=1 并产生借位并产生借位 -) 0101 1-0=1 0110 1-1=0(3)乘法运算规则乘法运算规则 例如:例如: 1101 0X X0=0 X X) 0101 0X X1=0 1101 1

2、X X0=0 1101 1X X1=1 1000001(4)除法运算规则除法运算规则 1101 例如:例如: 1110101/1001 1001 1110101 1001 1011 1001 01001 1001 0 00000000第第1 1章章 计算机基础知识计算机基础知识第第1 1章章 计算机基础知识计算机基础知识1.4.21.4.2半加器电路设计半加器电路设计问题描述:对两个二进制数进行加法运算,产生问题描述:对两个二进制数进行加法运算,产生1 1位和和位和和1 1位进位。位进位。定义输入输出变量:输入定义输入输出变量:输入x,y,x,y,输出输出S S(sumsum),C(carry

3、),C(carry)。真值表:真值表: x y C Sx y C S 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 1 0 0 1 1 0 0 1 1 1 1 0 1 1 1 0逻辑表达式:逻辑表达式: S=xy+xy,C=xyS=xy+xy,C=xy,由此可以化出逻辑图如下:,由此可以化出逻辑图如下:第第1 1章章 计算机基础知识计算机基础知识S Sy yC Cx x=1=1& &HAxysc 半加器电路图:半加器电路图: 半加器符号:半加器符号:第第1 1章章 计算机基础知识计算机基础知识1.4.31.4.3全加器电路设计全加器电路设计FAabscico1

4、位全加器框图位全加器框图1位全加器真值表:位全加器真值表:a b ci co s0 0 0 0 00 0 1 0 10 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 11位全加器逻辑表达式位全加器逻辑表达式(电路图见电路图见p13)S= /a/bci+/ab/ci+a/b/ci+abci=a b ciCo=/abci+a/bci+ab/ci+abci=ab+aci+bci 由多个一位全加器把进位信号串联而成,每个全加器都有由多个一位全加器把进位信号串联而成,每个全加器都有2级门的级门的延迟时间,故这种延迟时间,故这种n位加法器有位加法器有

5、2n级门的延迟时间。级门的延迟时间。abscicoabscicoabscicoFAabscicocicoabaaaabbbbsssss1.4.41.4.4二进制数的加法电路设计二进制数的加法电路设计第第1 1章章 计算机基础知识计算机基础知识FAFAFA第第1 1章章 计算机基础知识计算机基础知识1.4.51.4.5二进制数值数据的编码方法二进制数值数据的编码方法(1)(1)基本概念:无符号数、有符号数、机器数、真值。基本概念:无符号数、有符号数、机器数、真值。机器中,数的符号用机器中,数的符号用“0”0”、“1” 1” 表示,最高位作符号位,表示,最高位作符号位,“0”0”表示表示“+”+”

6、,“1”1”表示表示“-”-”。机器数:机器中数的表示形式,其位数通常为机器数:机器中数的表示形式,其位数通常为8 8的倍数。的倍数。真值:真值: 机器数所代表的实际数值。机器数所代表的实际数值。举例举例: :一个一个8 8位机器数与它的真值对应关系如下:位机器数与它的真值对应关系如下:真值:真值: X1=+84=+1010100B X2=-84= -1010100BX1=+84=+1010100B X2=-84= -1010100B机器数:机器数: X1X1机机= 01010100 X2= 01010100 X2机机= 11010100= 11010100有符号数通常使用三种表示方法有符号数

7、通常使用三种表示方法: :原码、反码和补码。原码、反码和补码。(2)(2)原码原码(True Form)(True Form):最高位为符号位,最高位为符号位,0 0表示表示 “ “+”+”,1 1表示表示“”,数值位与真值数值位相同,数值位与真值数值位相同。例例 8 8位原码机器数:位原码机器数: 真值:真值: x1 = +1010100B x1 = +1010100B x2 = x2 =1010100B1010100B 机器数:机器数:x1x1原原 = 01010100= 01010100 x2x2原原 = 11010100= 11010100原码表示简单直观原码表示简单直观, ,但但0

8、0的表示不唯一,加减运算复杂。的表示不唯一,加减运算复杂。第第1 1章章 计算机基础知识计算机基础知识1.4.51.4.5二进制数值数据的编码方法二进制数值数据的编码方法(3)(3)反码(反码(Ones ComplementOnes Complement): :正数的反码与原码表示相同。负数反码符号位为正数的反码与原码表示相同。负数反码符号位为1 1,数值位为原码数值各位,数值位为原码数值各位取反。取反。例例 8 8位反码机器数:位反码机器数: x= +4 x= +4 : xx原原= 00000100= 00000100 xx反反= 00000100= 00000100 x= -4 x= -4

9、 : xx原原= 10000100= 10000100 xx反反= 11111011= 11111011(4)(4)补码(补码(Twos ComplementTwos Complement): :正数的补码表示与原码相同。负数补码的符号位为正数的补码表示与原码相同。负数补码的符号位为1 1,数值位等于反码加,数值位等于反码加1 1。例:求例:求 8 8位补码机器数:位补码机器数:x=+4x=+4 x x原原=x=x反反=x=x补补= 00000100= 00000100 x=-4x=-4 x x原原 = 10000100= 10000100 x x反反 = 11111011 = 1111101

10、1 x x补补 = 11111100= 11111100补码表示的优点:补码表示的优点:0 0的表示唯一,加减运算方便。的表示唯一,加减运算方便。8 位机器数有符号数十六进制二进制无符号数原码反码补码00017F80FEFF00000000000000010111111110000000111111101111111101127128254255+0+1+127- 0-126-127+0+1+127- 127- 1- 0+0+1+127-128- 2- 1第第1 1章章 计算机基础知识计算机基础知识1.4.51.4.5二进制数值数据的编码方法二进制数值数据的编码方法(5)8(5)8位机器数表示

11、的真值位机器数表示的真值: :第第1 1章章 计算机基础知识计算机基础知识1.4.51.4.5二进制数值数据的编码方法二进制数值数据的编码方法(6)(6)各种编码方法的表数范围各种编码方法的表数范围: : n+1 n+1位二进制编码位二进制编码x x表示的整数范围:表示的整数范围: 原码、反码:原码、反码:-2-2n nx x2 2n n 补码:补码:-2-2n nxx2 2n n例如:例如:8 8位原码、反码的表数范围是位原码、反码的表数范围是-127-127+127+127,补码的表数范围是,补码的表数范围是-128-128+127+127;1616位原码、反码的表数范围是位原码、反码的表

12、数范围是-32767-32767+32767+32767,补码的表数范围是,补码的表数范围是-32768-32768+32767+32767(7)(7)各种编码之间的相互转换:各种编码之间的相互转换:xx原原 xx补补: x0, xx0, x补补= x= x原原 ;x;x0,0,符号位不变,数值位取反符号位不变,数值位取反+1+1。例例1 1:X1X1原原=01111111=7FH=01111111=7FH,X1X1补补=01111111=7FH=01111111=7FH X2 X2原原=11111111=FFH=11111111=FFH,X2X2补补=10000001=81H=1000000

13、1=81H例例2 2:X1X1原原=59H=59H,X2X2原原=D9H=D9H,求真值?,求真值? X1=+1011001B=+89 X2=-1011001B=-89X1=+1011001B=+89 X2=-1011001B=-89例例3 3:X1X1补补=59H=59H,X2X2补补=D9H=D9H,求真值?,求真值? X1=+1011001B=+89 X2=-0100111B=-39X1=+1011001B=+89 X2=-0100111B=-39第第1 1章章 计算机基础知识计算机基础知识1.4.51.4.5二进制数值数据的编码方法二进制数值数据的编码方法v原码、反码、补码表示小结:原

14、码、反码、补码表示小结:正数的原码、反码、补码表示均相同,正数的原码、反码、补码表示均相同,符号位为符号位为0 0,数值位同数的真值。,数值位同数的真值。零的原码和反码均有零的原码和反码均有2 2个编码,补码只有个编码,补码只有1 1个编码。个编码。负数的原码、反码、补码表示均不同,负数的原码、反码、补码表示均不同,符号位为符号位为1 1,数值位:原码为数的绝对值,数值位:原码为数的绝对值 反码为每一位均取反码反码为每一位均取反码 补码为反码再在最低位补码为反码再在最低位+1+1由由XX补补求求-X-X补补:每一位取反后:每一位取反后, ,再在最低位再在最低位+ +1 1第第1 1章章 计算机

15、基础知识计算机基础知识1.4.61.4.6补码加法器补码加法器/ /减法器电路减法器电路(1)(1)补码加减法的运算规律补码加减法的运算规律: :X+YX+Y补补=X=X补补+Y+Y补补X-YX-Y补补=X=X补补+-Y+-Y补补-Y-Y补补= =对对YY补补逐位取反逐位取反( (包括符号位包括符号位),),再在最低位加再在最低位加1 1。例:设例:设x=1010 x=1010,y=-0101,y=-0101,则则xx补补=01010=01010,yy补补=11011, =11011, x x补补+y+y补补=00101=00101 x+y x+y补补= 1010-0101= 1010-010

16、1补补= 0101= 0101补补=00101,=00101, 由此可见由此可见x+yx+y补补= x= x补补+y+y补补例:设例:设x=0101x=0101,则,则-x=-0101,x-x=-0101,x补补=00101,-x=00101,-x补补=11011,=11011, 所以所以-x-x补补= =对对xx补补逐位取反逐位取反, ,再在最低位加再在最低位加1 1。第第1 1章章 计算机基础知识计算机基础知识1.4.61.4.6补码加法器补码加法器/ /减法器电路减法器电路(2)(2)补码加减法的电路实现补码加减法的电路实现: :8 8位二进制加法器电路:位二进制加法器电路:第第1 1章

17、章 计算机基础知识计算机基础知识8 8位二进制数补码减法器电路:位二进制数补码减法器电路: 可控的可控的8 8位二进制数补码加减法器位二进制数补码加减法器(SUB=0,(SUB=0,加法加法,SUB=1,SUB=1,减法减法):):第第1 1章章 计算机基础知识计算机基础知识1.4.61.4.6补码加法器补码加法器/ /减法器电路减法器电路(3)(3)加减法运算的溢出问题:加减法运算的溢出问题:当运算结果超出机器数所能表示的范围时,称为溢出。显然,当运算结果超出机器数所能表示的范围时,称为溢出。显然,两个异号数相加或两个同号数相减,其结果是不会溢出的。仅当两个异号数相加或两个同号数相减,其结果

18、是不会溢出的。仅当两个同号数相加或者两个异号数相减时,才有可能发生溢出的现两个同号数相加或者两个异号数相减时,才有可能发生溢出的现象,一旦溢出,运算结果就不正确了,因此必须将溢出的情况检象,一旦溢出,运算结果就不正确了,因此必须将溢出的情况检查出来。查出来。判别溢出的方法:判别溢出的方法:无符号数溢出判断无符号数溢出判断最高位是否产生进位或借位。最高位是否产生进位或借位。 计算机设置进位标志位计算机设置进位标志位 Cy Cy 判断无符号数溢出:判断无符号数溢出: 当数据加当数据加/ /减最高位产生进位减最高位产生进位/ /借位,借位,Cy=1Cy=1;否则;否则,Cy=0,Cy=0。补码溢出判

19、断补码溢出判断符号位和最高数值位进位是否相同。符号位和最高数值位进位是否相同。 计算机设置溢出标志位计算机设置溢出标志位 OV OV 判断补码溢出。判断补码溢出。逻辑关系:逻辑关系: OV=Cy6OV=Cy6 Cy7 Cy7 当补码加当补码加/ /减产生溢出减产生溢出 OV=1OV=1,否则,否则OV=0OV=0。第第1 1章章 计算机基础知识计算机基础知识1.4.71.4.7其它编码其它编码(1)(1)西文字符编码:美国标准信息交换码西文字符编码:美国标准信息交换码ASCIIASCII码,用于计算机与计算机、计码,用于计算机与计算机、计算机与外设之间传递信息。用一个字节表示一个字符,其中低算机与外设之间传递信息。用一个字节表示一个字符,其中低7 7位为字符的编位为字符的编码值,最高位一般用作校验位。码值,最高位一般用作校验位。第第1 1章章 计算机基础知识计算机基础知识1.4.71.4.7其它编码其它编码(2)(2)汉字编码:汉字编码: GB2312-80GB2312-80国标码,用两个字节表示一个汉字的编码。国标码,用两个字节表示一个汉字的编码。 汉字的区号汉字的区号+A0H=+A0H=汉字机内码的高字节汉字机内码的高字节 汉字的位号汉字的位号+A0H=+A0H=汉

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论