计算机的运算方法_第1页
计算机的运算方法_第2页
计算机的运算方法_第3页
计算机的运算方法_第4页
计算机的运算方法_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

计算机的运算方法第一页,共三十六页,编辑于2023年,星期一3.1数据的表示方法和转换一.十进制,二进制,八进制,十六进制的功能及特点.1.十进制数是人们最习惯使用的数值,在计算机中一般把十进制数作为输入输出的数据形式。2.二进制数使用的数码少,只有0和1,在计算机内部存储和运算中使用,也表示计算机元件的状态,运算简单,工作可靠。特点:用十个数码表示——0、1、2、3、4、5、6、7、8、9遵循“逢十进一”的规则用两个数码表示——0、1遵循“逢二进一”的规则特点:第二页,共三十六页,编辑于2023年,星期一3.八进制接近十进制,且与二进制转换方便,常用来对二进制数的“缩写”,如:将(110111001101)2写成(6715)8,便于对二进制数的表示和记忆。4.在表示同一量值时,十六进制最短如:(110111001101)2写成(DCD)16,且与二进制转换方便,因此十六进制数常用来在程序中表示二进制数或地址。用八个数码表示——0、1、2、3、4、5、6、7遵循“逢八进一”的规则特点:用十六个数码表示——0、1、2、3、4、5、6、7、 8、9、A、B、C、D、E、F遵循“逢十六进一”的规则特点:二.各进制之间的转换.(略)三.各进制的加减运算.(略)第三页,共三十六页,编辑于2023年,星期一(100101)2+(101101)2=(2)(3FD)16+(284)16=(3)(437)8+(252)8=(1010010)2(681)16(711)8第四页,共三十六页,编辑于2023年,星期一四.二----十进制数.(BCD码,8421码)1.概念:二进制编码形式的十进制数,用4位的二进制数来表示一位十进制数.2.特点:a.它是一种有权码,根据代码的组成便可知道它所代表的十进制数,简单直观.

b.每个数位内部满足二进制规则,数位之间满足十进制规则.c.用0000,0001,0010….1001分别表示0….93.举例说明:(258)D=?BCD258001001011000(258)D=(001001011000)BCD第五页,共三十六页,编辑于2023年,星期一4.BCD码的加法运算.规则:1.BCD码相加,将每位数字转换成其对应的四位二进制数相加.2.如果两个一位BCD码相加之和小于或等于1001,不需要修正,如果相加之和大于1001,则要加6(0110)进行修正.例:完成下列BCD码的运算.(1)1+8=0001+10001001不需修正9(2)4+9=0100+10011101大于1001需修正

10011加6(0110)进行修正进位1300010011+0110第六页,共三十六页,编辑于2023年,星期一(3)(28)D+(55)D=00101000+0101010111010111+01100011

1000001183(83)D1000加6(0110)进行修正第七页,共三十六页,编辑于2023年,星期一8位0~25516位0~655353.2带符号数在计算机中的表示方法及运算计算机中参与运算的数无符号数(正整数)有符号数存放于寄存器中无符号数在寄存器中的每一位均可用来存放数值,当存放有符号数时,则需留出位置存放符号,在机器字长相同时,无符号数和有符号数的表数范围是不同的.注意一.概述无符号数的表数范围:第八页,共三十六页,编辑于2023年,星期一带正负号的数符号数字化的数+0.10110

1011小数点的位置+11000

1100小数点的位置–

11001

1100小数点的位置–0.10111

1011小数点的位置真值机器数1.机器数与真值二、有符号数(机器数)P19第九页,共三十六页,编辑于2023年,星期一2.原码表示法(1)形式如x=+1110[x]原

=01110[x]原

=11110x=

1110一个数,其符号用0或1进行编码,叫原码.用0表示+,用1表示-x=+0.1101[x]原

=0.1101x=0.1101[x]原

=1.1101[+0]原=00000[-0]原=10000第十页,共三十六页,编辑于2023年,星期一(2)原码的优点:简单、直观用原码做加法时,会出现如下问题:在计算机中正+正/负+负结果符号位很好确定,但正+负/负+正结果符号位很难确定,容易出错。计算机将原码转换成反码或补码进行计算.加法正正加加法正负加法负正加法负负减减加要求数1数2实际操作结果符号正可正可负可正可负负缺点:进行加减法运算时,比较复杂.第十一页,共三十六页,编辑于2023年,星期一3.反码表示法(1)形式:正数的反码与原码相同,负数的反码为其原码的符号位不变,其余各位按位变反,即0变为1,1变为0如:真值原码反码+1001-1001+0.1101-0.1101[+0]反=00000[-0]反=11111(2)反码的运算010010100111001101100.11010.11011.11011.0010第十二页,共三十六页,编辑于2023年,星期一规则:1.反码运算时,其符号位与数值一起参加运算.2.反码的符号位相加后如果有进位出现,则需把它送到最低位去相加.3.反码的运算形式:[X+Y]反=[X]反+[Y]反[X-Y]反=[X]反+[-Y]反例1已知:X=+0.1011,Y=-0.0100,求X+Y分析:1.题目中给出的两个数均为真值,且分别是正数和负数,在计算机中真值均被转换成其他码制计算.思考:能否将X,Y转换成原码,直接相加?为什么?不能,因为原码中正数和负数相加符号位不能确定2.可以将两数转换成反码相加,结果再转换成真值.第十三页,共三十六页,编辑于2023年,星期一(1)将X=0.1011,Y=-0.0100转换成反码.[X]反=0.1011[Y]反=1.1011

(2)求[X+Y]反

[X+Y]反=[X]反+[Y]反

=0.1011+1.10110.1011+1.101110.0110产生进位,将其送到最低位相加+1

0.0111

=0.0111(3)求[X+Y]原结果为正数,反码形式与原码形式相同.[X+Y]原=0.0111则X+Y=+0.0111第十四页,共三十六页,编辑于2023年,星期一补码的形式正数的补码与原码相同,负数的补码为其反码的末位加一可得4.补码表示法真值原码反码补码+1010-1010+0.1001-0.1001[+0]补=[-0]补=00000(2)补码的运算规则:1.其符号位与数值部分一起参加运算

2.补码的符号位相加后如果有进位出现,则需把这个进位舍去.3.补码的运算形式:[X+Y]补=[X]补+[Y]补[X-Y]补=[X]补+[-Y]补0101001010010101101010101101100.10010.10010.10011.10011.01101.0111第十五页,共三十六页,编辑于2023年,星期一例2已知:X=-0.1010,Y=-0.0010,求X+Y和X-Y(用补码运算完成)(1)将X=-0.1010,Y=-0.0010转换成补码.[X]补=1.0110[Y]补=1.1110(2)求[X+Y]补

[X+Y]补=[X]补+[Y]补

=1.0110+1.11101.0110+1.111011.0100产生进位,将进位去掉

=1.0100(3)求[X+Y]原结果为负数,则末位减1,然后除符号位外按位变反.[X+Y]原=1.1100则X+Y=-0.11001.求X+Y:第十六页,共三十六页,编辑于2023年,星期一2.求X-Y:(1)将X=-0.1010,-Y=0.0010转换成补码.[X]补=1.0110[-Y]补=0.0010(2)求[X-Y]补

[X-Y]补=[X]补+[-Y]补

=1.0110+0.00101.0110+0.0010

1.1000

=1.1000(3)求[X-Y]原结果为负数,则末位减1,然后除符号位外按位变反.[X-Y]原=1.1000则X-Y=-0.1000第十七页,共三十六页,编辑于2023年,星期一5.移码.(1).移码的形式无论正数还是负数,移码与补码的数字位相同,符号位相反.例4已知:X=-0.0011011,求[X]移分析:将其转换成补码,再转换成移码.X=-0.0011011=[1.0011011]原

=[1.1100100]反

=[1.1100101]补

=[0.1100101]移[+0]移=[-0]移=10000用移码表示浮点数的阶码,能方便地判断浮点数的阶码大小第十八页,共三十六页,编辑于2023年,星期一(2)移码的运算:规则:1.[x+y]移=[x]移+[y]补[x-y]移=[x]移+[-y]补

2.移码的符号位相加后如果有进位出现,则需把这个进位舍去例5已知:x=+0101y=+0110,求[x+y]移,[x-y]移[x]移=[y]补=[-y]补=101010011011010[x+y]移=[x]移+[y]补=10101+00110=[x-y]移=[x]移+[-y]补=10101+11010=01111(溢出)11011第十九页,共三十六页,编辑于2023年,星期一若两正数采用反码、补码、移码相加,结果为负,或两负数相加,结果为正,则为“溢出”,此时运算结果出错,由CPU自动进行纠错处理.如:0.1110+0.0011,(11100)+(10111)注意注意1.原码在计算机数中表示一般的数据;反码、补码可以用于机器数的加法、减法、乘法、除法运算;移码只能进行加法运算。2.用移码表示浮点数的阶码,能方便地判断浮点数的阶码大小。第二十页,共三十六页,编辑于2023年,星期一000000000000000100000010…011111111000000010000001111111011111111011111111…128129-0-1-128-127-127-126二进制代码无符号数对应的真值原码对应的真值补码对应的真值反码对应的真值012127…253254255…-125-126-127…-3-2-1…-2-1-0…+0+1+2+127…+0+1+2+127…+0+1+2+127…设机器数字长为8位(其中一位为符号位)对于整数,当其分别代表无符号数、原码、补码和反码时,对应的真值范围如下表6.变形码(P29)第二十一页,共三十六页,编辑于2023年,星期一采用变形码计算好处:既能判断是否有溢出,又能判断结果的符号位。符号位

含义解读00无溢出,结果符号为正01正溢出,结果真正符号为正(正数+正数)10负溢出,结果真正符号为负(负数+负数)11无溢出,结果真正符号位为负数如:用变形补码计算:X=+0.1110,Y=+0.0011,求[X+Y]补X变补=00.1110Y变补=00.001100.1110+00.0011

01.0001正溢出X+Y的结果产生正溢出,由CPU自动处理第二十二页,共三十六页,编辑于2023年,星期一三.定点数与浮点数P16-P181.定点数.概念:小数点固定在某一个位置上的数据.形式小数整数0

1011小数点的位置0.10111

1100小数点的位置-1100第二十三页,共三十六页,编辑于2023年,星期一2.浮点数(1)概念:小数点位置可以浮动的数据(2)形式:N=M×RE尾数基数阶码科学计数法的表达方式(3)举例:N1=3.14159(D)=0.314159×101=0.0314159×102N2=0.011(B)=0.11×2-1=0.00011×22第二十四页,共三十六页,编辑于2023年,星期一(4)浮点数在计算机中的格式:EfESM阶码符号位阶码尾数符号位尾数移码表示原码表示按照IEEE754标准,对上面格式进行简化:

(阶符采用隐含式,包括阶码符号位和阶码)S(1位)E(1+7位)M(23位)第二十五页,共三十六页,编辑于2023年,星期一根据IEEE754标准,常用的浮点数有两种格式:1.单精度浮点数共32位,阶码8位(内含1位符号位),尾数24位(其中1位符号位提到最前面)2.双精度浮点数共64位,阶码11位(内含1位符号位),尾数53位(其中1位符号位提到最前面)例题1按单精度浮点数,阶符隐含式格式表示N=-0.01101×23B1数符阶符和阶码(8位)0000011101101000000000000000000尾数(23位)阶码的移码(8位):10000011第二十六页,共三十六页,编辑于2023年,星期一例题2将(100.25)10转换成单精度浮点数格式。1.将该十进制数转换成对应的二进制数。(100.25)10=(1100100.01)22.规格化二进制数(1100100.01)2=0.110010001×273.求阶码的移码。(8位)移码:100001114.求该数单精度浮点数格式(32位)01000011111001000100000000000000数符阶符阶码尾数(23位)第二十七页,共三十六页,编辑于2023年,星期一3.3数据校验码一.数据校验码的引入.1.定义:计算机系统中的数据,在读写、存取、传送过程中,可能产生错误,为了减少/避免这类错误,既要提高硬件的可靠性,又要采用某种数据编码方法,应用于少量附加电路,而发现错误,并确定错误所在的位置,实现自动纠错能力,这种编码也叫数据校验码。

2.分类:奇偶校验码海明校验码循环冗余校验码(CRC)开销最小,能发现数据中一位出错情况,用于读写检查,ASCII字符传送过程的检查。能发现哪些位出错,并能纠正一位错误能发现并纠正信息存储或传输过程中的多位错误,用于磁介质和计算机间通信。第二十八页,共三十六页,编辑于2023年,星期一3.实现原理:数据校验码是在合法的数据编码之间,加进一些冗余编码,使合法的数据编码在出现错误时成为非法编码。这样就可以通过检测编码的合法性达到发现错误的目的。二.奇偶校验码。实现原理:它是在被传送的n位信息组上,加上一个二进制位作为校验位,使配置后的n+1位二进制代码中1的个数为奇数(奇校验)或偶数(偶校验)。

开销最小,能发现一位出错情况.奇、偶校验包括数据位和校验位,校验位是0还是1由1的个数决定,具体情况如下表:数据位校验位奇校验奇数个10(反之为1)偶校验偶数个10(反之为1)第二十九页,共三十六页,编辑于2023年,星期一例:数据 奇校验编码 偶校验编码

00000000 100000000 000000000 01110101 00111010110111010101111111

001111111101111111其中,最高一位为校验位,其余低八位为数据位。已知下表中左面一栏有5个字节的数据。请分别用奇校验和偶校验进行编码,填在中间一栏和右面一栏。(要求最低位为校验位,其余高八位为数据位)

数据偶校验编码C奇校验编码C1010101001010100000000000111111111111111练习101010100010101001000000000011111111111111110101010101010101000000000001011111110111111111第三十页,共三十六页,编辑于2023年,星期一三.海明校验码。1.原理在数据位中加入几个校验位,将数据代码的码距均匀地拉大,并把数据的每个二进制位分配在几个奇偶校验组中。当某一位出错后,就会引起有关的几个校验位的值发生变化,不但可以发现错误,还能指出是哪一位出错,为进一步自动纠错提供依据。2.有关海明校验码的参数校验位的个数:r表示信息位:k

海明码的总位数为:m=r+k位假设欲检测的有效信息为k位,需增加的校验位为r位,则校验码的长度为r+k位,且满足:2r≥r+k+1,欲检测的信息位k与r的对应关系:(见表)第三十一页,共三十六页,编辑于2023年,星期一校验位位数r与信息位位数k的关系信息位位数k校验位位数r1-445-11512-26627-57758-1208第三十二页,共三十六页,编辑于2023年,星期一3.编码规则若海明码最高位号为m,最低位号为1,即HmHm-1…H2H1,则海明码的编码

温馨提示

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

评论

0/150

提交评论