版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章计算机中数据信息的表示第二章计算机中数据信息的表示1第二章计算机中数据信息的表示本章学习的主要内容:1、计算机中常用进位计数制及其转换2、符号数的编码方法3、数的定、浮点表示4、非数值数据的表示5、十进制数串的表示6、数据校验码第二章计算机中数据信息的表示本章学习的主要内容:22.1计算机中常用的进位计数制及其相互转换一、进位计数制的基本概念----两个基本因素:基值和位权值二、计算机中常用的进位计数制
1、计算机以二进制为基础,广泛采用二进制计数。二进制计数的优点:1)状态简单,易于实现。2)算法简单。3)信息的存储和传输可靠。4)节省设备。5)有数学工具----布尔代数2.1计算机中常用的进位计数制及其相互转换3
二进制的缺点:1)人们不熟悉、不易懂。2)书写太长,使用不便。2、十进制计数计算机中十进制数的主要用途有两个仅用于输入、输出----需二–十进制转换用于直接进行十进制运算----需BCD码常用的BCD码有下面几种:8421码余3码2421码二进制的缺点:4十进制值8421码余3码2421码0000000110000100010100000120010010100103001101100011401000111010050101100010116011010011100701111010110181000101111109100111001111十进制值8421码余3码2421码00000001100005
3、八进制、十六进制计数八进制数二进制数十六进制二进制数十六进制二进制数0000000008100010011000191001201020010A1010301130011B1011410040100C1100510150101D1101611060110E1110711170111F11113、八进制、十六进制计数八进制数二进制数十六进制二进制6三、不同进位计数制数间的等值转换1、任意的R进制数转换为十进制数----按权相加法2、十进制整数转换为任意的R进制整数----除R取余法3、十进制小数转换为任意的R进制小数----乘R取整法4、二进制数与八进制、十六进制数间的等值转换三、不同进位计数制数间的等值转换72.2符号数的编码方法
一、机器数与真值
机器数是指数在计算机内部的二进制表示形式。是把一个数的数值部分和符号均用二进制代码表示以后机器所能表示的数。真值是指用一般书写形式表示的数。
机器数的特点:⑴数的符号二进制代码化。
“0”代表+,“1”代表-,且放在数据的最高位。⑵小数点隐含在数据的某一固定位置上,不占用存储空间。⑶机器数与机器的硬件规模有关,即与机器字长有关。2.2符号数的编码方法8
二、原码表示:
原码表示保持数据原有的数值部分的形式不变,只将符号用二进制代码表示。原码表示是最简单的机器数表示方法。1、原码定义:2、在原码表示中,“0”有“+0”和“-0”之分。[+0]原=00……0[-0]原=10……0二、原码表示:9三、补码表示
1、补码的定义2、补码的求法3、特殊数的补码4、补码的几个关系1)补码与真值的关系2)补码与原码的关系3)机器正数与机器负数的关系4)补码的移位规则5、补码的几何性质三、补码表示10[修改]第二章计算机中数据信息的表示课件11从上面图中可以看出:1)正数的补码就是其本身;负数补码表示的实质是将负数映像到正值区域。因此,加上一个负数或减去一个正数可以用加上另一个数即补数来代替。2)从表示符号的角度,符号位的值代表了数的正确的符号;从映像值来看,符号位的值是映像值的一个数位,因此在补码运算中,符号位与数值位一样参加运算。从上面图中可以看出:1201234567-1-2-3-4-5-6-7-80000001001001000101011001110011000010011010110011011110111110111移码的几何性质真值移码01234567-1-2-3-4-5-6-7-800000013[修改]第二章计算机中数据信息的表示课件14例1、设某机字长为8位且采用整数表示。现已知机器数,试将其在不同的数据表示形式中所对应的十进制真值填入表内。表示形式机器数无符号数表示原码表示补码表示反码表示移码表示00110100110010111000000011111111例1、设某机字长为8位且采用整数表示。现已知机器数,试将其在15例2、单项选择题已知[X1]原=11001010,[X2]补=11001010 [X3]反=11001010则X1、X2、X3的关系是:1)X1
>X2
>X32)X2
>X3
>X13)X3
>X1>X24)X3>X2>X1例3、设一个六位二进制小数X=0.a1a2a3a4a5a6请回答下面问题。1)若X≥1/8,则a1a2a3a4a5a6要满足什么条件?2)若X>1/2,则a1a2a3a4a5a6要满足什么条件?3)若1/4≥X>1/16,则a1a2a3a4a5a6要满足什么条件?010000或001XXX或0001且a5a6至少有一个1例2、单项选择题162.3数的定点表示与浮点表示
任何一个数均可表示为:
(N)R=S×ReR:基值。计算机中常用的R可取2、8、16等。S:尾数。代表数N的有效数字。计算机中一般表示为纯小数。e:阶码。代表数N的小数点的实际位置。一般表示为纯整数。2.3数的定点表示与浮点表示17一、定点表示
1、定点表示:约定计算机中参加运算的所有数据的小数点位置均是相同的而且是固定不变的。定点表示是一种阶码e的取值固定不变的机器数表示。2、定点数表示格式及数据表示范围:定点数有两种表示方法。定点小数和定点整数。尾数数符尾数数符..(1位)(n位)(1位)(n位)纯小数纯整数一、定点表示尾181)原码表示的定点数表示范围机器数真值数符尾数(n位)定点小数定点整数最小正数000…01+2-n+1最大正数011…111-2-n2n-1最大负数100…01-2-n-1最小负数111…11-(1-2-n)-(2n-1)1)原码表示的定点数表示范围机器数真值数符尾数(n位)定点小19机器数真值数符尾数(n位)定点小数定点整数最小正数000…01+2-n+1最大正数011…111-2-n2n-1最大负数111…11-2-n-1最小负数100…00-1-2n2)补码表示的定点数的表示范围机器数真值数符尾数(n位)定点小数定点整数最小正数000…203、比例因子的选择与溢出与溢出的概念在定点运算中,参加运算的数据必须是定点小数或定点整数。因此在运算之前,必须选择一个恰当的比例因子,将所有参加运算的数均化成纯小数或纯整数,然后再进行运算。运算结果再根据所选的比例因子转换成正确的值。比例因子必须选择恰当。选择太大,将会影响运算精度;选择太小,会使运算结果超出机器所能表示的数据范围,即出现溢出。溢出:运算结果超出机器所能表示的数据范围。当出现溢出时,机器必须及时识别并进行处理,一般采用中断的方法进行处理。3、比例因子的选择与溢出与溢出的概念21二、浮点数据表示1、浮点表示定义:浮点数据表示是指参加运算的各数的小数点位置不是固定不变的,而是可以浮动的。即(N)R=S×Re中的e值是可变的。由于e的取值可变,因此在机器中必须将e表示出来。二、浮点数据表示222、浮点数据表示格式和数据表示范围两种格式:1位m位1位n位
1位1位m位n位2、浮点数据表示格式和数据表示范围1位m233、浮点数的规格化表示
1)规格化表示的目的:充分利用尾数的位数,表示更多的有效数字,以提高精度。2)规格化数的定义:4、在浮点表示中,阶码和尾数位数的选择:在浮点数据表示中,一个浮点数由阶码和尾数两个部分组成。其中阶码的位数决定数据表示的范围;尾数的位数决定数据表示的精度。为了保证更大的数据表示范围和更高的数据表示精度,在计算机中通常都存在单精度浮点数、双精度浮点数等多种浮点数格式。
3、浮点数的规格化表示245、IEEE754浮点数标准:IEEE754标准在表示浮点数时,每个浮点数均由三部分组成:符号位S,指数部分E和尾数部分M。浮点数可采用以下四种基本格式:(1)单精度格式(32位):E=8位,M=23位。(2)扩展单精度格式:E≥11位,M=31位。(3)双精度格式(64位):E=11位,M=52位。(4)扩展双精度格式:E≥15位,M≥63位。
SEM
数符阶码尾数
5、IEEE754浮点数标准:S25重点以32位单精度浮点数为例,介绍浮点754标准:尾数23位,采用原码表示且采用隐藏位表示法;阶码8位,采用特殊的移码,为移127码,即[E]移=127+E并规定如下:若E=0,且M=0,则N为0(真0)。若E=0,且M≠0,则N=(-1)S·2-126·(0.M),为非规格化数。为避免下溢而损失精度,允许采用比最小规格化数小的非规格化数表示.若1≤E≤254,则N=(-1)S·2E-127·(1.M)。为规格化数。若E=255,且M≠0,则N=NaN(“非数值”)。若E=255,且M=0,则N=(-1)S∞(无穷大)。重点以32位单精度浮点数为例,介绍浮点754标准:26例1:已知某机浮点数格式如下:数符阶符阶码尾数012。。。56。。。。。。。111、该机所能表示的规格化最小正数、最大正数、最小负数、和规格化最大负数的机器数的形式和它们所对应的十进制值分别是什么?2、已知用十六进制书写的机器数1ECH、EC0H和FFFH,它们所表示的十进制值是多少。3、试将十进制数–12.25和35/2048表示为机器数并用十六进制书写。例1:已知某机浮点数格式如下:数符阶符阶27例2:已知IEEE—754单精度浮点数C4480000H和3F600000H,试求其所表示的十进制值。例3:将下列十进制数表示为IEEE754单精度浮点数并用十六进制书写。(1)78.125(2)-567(3)-9/512例2:已知IEEE—754单精度浮点数C4480000H和328三、定点表示与浮点表示的比较1.在字长相同的条件下,浮点表示的数据范围大,精度高。2.浮点运算算法复杂,所需设备量大,运算速度慢。三、定点表示与浮点表示的比较292.4非数值型数据的表示
一、逻辑数—二进制串在计算机中一个逻辑数是用一个二进制串来表示的。逻辑数具有下面几个特点:(1)逻辑数没有符号的问题。逻辑数中各位之间是相互独立的,既没有位权问题,也没有进位问题。(2)逻辑数中的“0”与“1”不代表值的大小,仅代表一个命题的真与假、是与非等逻辑关系。(3)逻辑数只能参加逻辑运算,并且是按位进行的。2.4非数值型数据的表示30二、字符与字符串字符与字符串数据是计算机中用得最多的符号数据,它是人和计算机联系的桥梁。为使计算机硬件能够识别和处理字符,必须对字符按一定规则用二进制编码。目前广泛使用的是ASCII码(美国国家信息交换标准字符码)和EBCDIC码(扩展的二—十进制交换码)。ASCII码是用七位二进制表示一个字符,它包括10个数字(0~9),52个英文大、小写字母(A~Z,a~2),34个专用字符(如,、%、#等)和32个控制字符(如NUL、LF、CR、DEL等)共128个字符。ASCII字符编码符号的排列次序为b6b5b4b3b2blb0,其中b6b5b4为高位部分,b3b2blb0为低位部分。二、字符与字符串31在计算机中,通常用一个字节表示一个字符。由于ASCII编码为七位二进制,字节的最高位的作用:①用作奇偶校验位,用来检测错误。②用于表示字符,形成扩展的ASCII码。如EBCDIC码。EBCDIC(EstendedBinaryCodedDecimalInterchangeCode)是IBM公司常用的一种字符编码。它采用八位二进制数表示一个字符。③在我国用于区分汉字和字符。如规定字节的最高位为“0”表示ASCII码,为“1”表示汉字编码。在计算机中,通常用一个字节表示一个字符。由于ASCII编码为32字符串字符串是连续的一串字符,通常占用主存中多个连续的字节进行存放.一般一个字长可容纳多个字符,因此在计算机中,字符串有两种存放方式:低位字节存放方式高位字节存放方式……字节字节字节AA+1A+L-1字符串……字节字节字节A33三、汉字信息的表示为使计算机能够处理各种汉字信息,必须对汉字进行编码。汉字在计算机中的表示比较特殊。因为在计算机中使用汉字,需要涉及到汉字的输入,存储与处理、汉字的输出等几方面的问题,因此汉字的编码也有多种类型。汉字输入码汉字内码汉字字形码汉字交换码键盘输入存储、处理交换汉字信息显示、打印三、汉字信息的表示汉字输入码汉字内码汉字字形码汉字交换码键盘34汉字交换码:汉字交换码:用于不同汉字系统间交换汉字信息,具有统一的标准。1981年国家标准总局公布了《信息交换用汉字编码字符集》,即GB2312—80,简称国标码。该标准共收集汉字6763个,其中一级汉字3755个,二级汉字3008个,再加上各种图形符号682个,共计7445个。国标码规定每个汉字、图形符号都用两个字节表示,每个字节只使用最低七位。汉字交换码:汉字交换码:用于不同汉字系统间交换汉字信息,具有35汉字内码:用于汉字信息的存储、交换、检索等操作的机内代码,一般采用两个字节表示。英文字符的机内代码是七位的ASCII码,当用一个字节表示时,最高位为“0”。为了与英文字符能相互区别,目前我国的计算机系统中汉字内码都是以国标码为基础,在国标码基础上把每个字节的最高位置“1”,作为汉字标识符。即机内码=国标码+8080H有些系统中,字节的最高位作为奇偶校验位,在这种情况下就用三个字节表示汉字内码。汉字内码:用于汉字信息的存储、交换、检索等操作的机内代码,一36字形码:用点阵表示的汉字字形代码,它是汉字的输出形式。又称字模。根据汉字输出的要求不同,点阵的多少也不同。简易型汉字为16×16点阵,多用于显示。提高型汉字为24×24点阵、32×32点阵,48×48点阵、64×64点阵、128×128点阵,甚至更高,多用于打印。字形码:用点阵表示的汉字字形代码,它是汉字的输出形式。又称字37例:16×16的汉字字形点阵,每个汉字要占用32个字节。例:16×16的汉字字形点阵,每个汉字要占用32个字节。382.5十进制数串的表示十进制数串在机器内部的表示有两种形式:
1、字符串形式
将十进制数串以字符串形式表示,即一个字节表示一个十进制数字或符号。每个数字或符号的二进制编码就是它的ASCII码。
根据数串中符号所处位置,又分为前分隔数字串和后嵌入数字串两种表示形式。在前分隔数字串表示形式中,符号位占用单独一个字节,放在数字位之前。在后嵌入数字串表示形式中,符号位不单独占用一个字节,而是嵌入到最低一位数字里面。其规则是:若数串的符号为正,则最低一位数字0~9的ASCII编码不变(30H~39H);若数串的符号为负,则在最低数字位的ASCII码上加上40H,此时数字编码为(70H~79H)。2.5十进制数串的表示39十进制数的字符串表示主要应用于非数值处理,如显示、打印。但对十进制数的算术运算很不方便,因为每一字节只有低4位表示数值,而高4位在算术运算时不具有数值的意义。
2、压缩的十进制数串:用一个字节存放两个十进制数位,其值用BCD码表示,符号占半个字节,并存放在最低数值位之后。通常用1100表示正号,1101表示负号。在这种表示中,规定数字个数加符号位之和必须是偶数,否则在最高位之前补一个0。压缩的十进制数串既节省了存储空间,又便于直接进行十进制算术运算,是广泛采用的十进制数串表示方式。
十进制数的字符串表示主要应用于非数值处理,如显示、402.6数据校验码
数据校验码:具有检测某些错误或带有自动纠正错误能力的数据编码。数据校验码的基本原理是在合法的编码中加入一些冗余码,使合法编码出现某些错误时,就成为非法编码。通过检测编码的合法性达到检错的目的。常用的数据校验码有奇偶校验码、海明校验码、循环校验码。2.6数据校验码41一、奇偶校验码奇偶校验码是一种最简单、最常用的校验码,广泛用于主存的读写校验或ASCII码字符传送过程中的检查。1、基本原理:在n位有效信息位上增加一个校验位P,构成n十1位的奇偶校验码。校验位P的取值(0或1)使n+l位的奇偶校验码中“1”的个数为奇数(称为奇校验Odd)或为偶数(称为偶校验Even)。校验位的位置在有效信息位的最高位之前或者在最低位之后。
校验时,若n+1位的奇偶校验码中,“1”的个数不是奇数(奇校验)或不是偶数(偶校验)即表示有错。一、奇偶校验码422、编码方程与校验方程:设有效信息位为Dn-1Dn-2Dn-3………D1D0
其编码方程为:Peven=Dn-1⊕Dn-2⊕Dn-3⊕………⊕D1⊕D0Podd=Dn-1⊕Dn-2⊕Dn-3⊕………⊕D1⊕D0+1校验方程为:Eeven=Dn-1⊕Dn-2⊕Dn-3⊕………⊕D1⊕D0⊕PevenEodd=Dn-1⊕Dn-2⊕Dn-3⊕………⊕D1⊕D0⊕Podd+1
2、编码方程与校验方程:433、奇偶校验的硬件实现:
1)编码电路:=1=1=1=1=1=11pevenpoddD6D5D4D3D2D1D0o3、奇偶校验的硬件实现:=1=1=1=1=1=144
2)校验电路:=1=1=1=1=1=1=11偶校错奇校错D6D5D4D3D2D1D0Po2)校验电路:=1=1=1=1=1=1=11454、奇偶校验的校错能力:奇偶校验码只能发现奇数位个错误,而无法发现偶数位个错误,而且即使发现奇数位个错误也无法确定出错的位置;因而无法自动纠正错误。但由于现代计算机可靠性比较高,出错概率很低,而出错中只有一位出错的概率最高,因此用奇偶校验检测一位出错,能够满足一般可靠性要求。在CPU与主存的信息传送过程中,奇偶校验被广泛应用。4、奇偶校验的校错能力:46
二、海明校验码:
海明校验码的实质是在奇偶校验的基础上,增加校验位的位数,构成多组奇偶校验,使每个有效信息位都被两个或多个校验位校验,这样不仅可以发现错误而且还可确定出错位置并自动纠正错误。
1、海明校验码校验位数的选择设有效信息位的位数为n,校验位数为k,则能够检测一位出错并能自动纠正一位错误的海明校验码应满足下面关系:2k≥n+k+1由此式可计算出具有检1纠1错能力的海明校验码中n与k的关系,如下表所示。二、海明校验码:47有效信息位与校验位的关系有效信息位与校验位的关系48
2、海明校验码的编码方法1)n位有效信息选择k个校验位,构成n+k位的海明校验码。若校验码位号从左向右(或从右向左)按从1到n+k排列,则校验位的位号分别为2i,i=0,1,2…k-1,有效信息位按原排列次序安排在其它位号中。
2)k个校验位构成k组奇偶校验,每个有效信息位都被2个或2个以上的校验位校验。并且被校验的位号等于校验它的校验位的位号之和。3)统计参与各组奇偶校验的位号,按奇偶校验原理,由已知的有效信息求出各个校验位,进而形成海明校验码。2、海明校验码的编码方法49
3、海明校验码的校验方法校验时,K个校验位进行K组奇偶校验,校验结果形成K位的“指误字”EkEk-1…E2E1。若某组校验结果正确,指误字相应位为0;若校验结果错误,指误字相应位为1。若校验结果EkEk-1…E2E1=全0,则表示无错;EkEk-1…E2E1≠全0,则表示有错,并且指误字代码所对应的十进制值就是出错位的位号。将该位取反,错误码即得到自动纠正。
指误字指示出错的前提是代码中只存在一个错。若有多个错,可能查不出来。3、海明校验码的校验方法50
4、检2纠1错海明校验码为了满足检2纠1错的要求,在检1纠1错海明校验码的基础上再加一个校验位P0,使其对整个n+k位的海明码进行奇偶校验。编码时,首先按检1纠1错海明校验码的规则编制n+k位的海明码,然后根据n+k位中“1”的个数形成P0值,从而形成n+k+1位的检2纠1错海明校验码。
4、检2纠1错海明校验码51校验时首先由P0对整个n+k+1位海明校验码进行校验,校验结果为E0。然后再按检一纠一错海明校验码对各组进行校验,得到指误字EkEk-1…E2E1。若校验结果E0=0,EkEk—l…E1=00…0表示无错。E0=1,EkEk—l…E1≠00…0表示有一位出错,根据EkEk—l…E1的值确定出错位号并自动纠正。E0=0,EkEk—l…E1≠00…0表示有两位出错,此时无法确定出错位置,也无法纠错。E0=1,EkEk—l…E1=00…0表示P0出错。校验时首先由P0对整个n+k+1位海明校验码进行校验,校验结52
5、校错能力的讨论*码距的概念:在一组合法的编码中,任何两个编码中代码不同的位数,称为这两个编码的距离,其中最小的距离称为这组编码的码距,记作d。码距决定了一组编码的检错纠错的能力,校验位越多,码距越大,检错纠错的能力越强。若d≥e+1,则可检测e个错误;若d≥2t+1,则可纠正t个错误;若d≥e+t+1且e>t,则可检测e个错误,纠正t个错误。5、校错能力的讨论53
三、循环冗余校验码(CRC码)
循环冗余校验码(CyclicRedundancyCheck)简称为CRC码。是一种具有很强检错纠错能力的校验码,广泛用于磁盘、磁带等辅助存储器的校验,在计算机网络和通信中亦被广泛采用。
1、基本原理若有效信息表示为多项式M(x),选择一个约定的多项式G(x),则有如果对于一个M(x),事先按某一G(x)求得Q(x)和R(x)。传送时,把M(x)-R(x)作为编好的校验码传送,当收到该校验码后仍用原约定的多项式G(x)去除,若能整除,即余数为0,则表示该校验码正确;若余数不为0,表明有错,并可根据余数值确定出错位号,进行自动纠正。把G(x)称为生成多项式。三、循环冗余校验码(CRC码)54
2、编码方法1)已知n位待编码信息(有效信息)为M(x),选择某一约定的k+1位生成多项式G(x),构成n+k位的CRC码。2)将M(x)左移k位,然后按模2除法规则除以G(x),得到k位的余数R(x).3)将k位的余数R(x)倂接到M(x)后面即得到CRC码。3、CRC校验方法
将接收到的n+k位的CRC码,除以原来约定的生成多项式G(x),若除得余数为0,表示无错;若除得余数不为0,则表示有错,根据余数的值确定出错位置并自动纠正错误。2、编码方法55A7A6A5A4A3A2A1余数出错位正确码1101001000无110100000111101011010211011011003错误码11000010114111100111051001001111601010011017(7,4)码的出错模式(G(x)=1011)A7A6A5A4A3A2A1余数出错位正确56
4、生成多项式G(x)的条件:
(1)任何一位发生错误都应使余数不为0;(2)不同位发生错误应当使余数不同;(3)对余数作模2除法,应能使余数循环。选择不同的生成多项式,CRC码的码距不同,因而检错、校错能力也不同。生成多项式不同,CRC码的出错模式也不同。4、生成多项式G(x)的条件:57第二章计算机中数据信息的表示第二章计算机中数据信息的表示58第二章计算机中数据信息的表示本章学习的主要内容:1、计算机中常用进位计数制及其转换2、符号数的编码方法3、数的定、浮点表示4、非数值数据的表示5、十进制数串的表示6、数据校验码第二章计算机中数据信息的表示本章学习的主要内容:592.1计算机中常用的进位计数制及其相互转换一、进位计数制的基本概念----两个基本因素:基值和位权值二、计算机中常用的进位计数制
1、计算机以二进制为基础,广泛采用二进制计数。二进制计数的优点:1)状态简单,易于实现。2)算法简单。3)信息的存储和传输可靠。4)节省设备。5)有数学工具----布尔代数2.1计算机中常用的进位计数制及其相互转换60
二进制的缺点:1)人们不熟悉、不易懂。2)书写太长,使用不便。2、十进制计数计算机中十进制数的主要用途有两个仅用于输入、输出----需二–十进制转换用于直接进行十进制运算----需BCD码常用的BCD码有下面几种:8421码余3码2421码二进制的缺点:61十进制值8421码余3码2421码0000000110000100010100000120010010100103001101100011401000111010050101100010116011010011100701111010110181000101111109100111001111十进制值8421码余3码2421码000000011000062
3、八进制、十六进制计数八进制数二进制数十六进制二进制数十六进制二进制数0000000008100010011000191001201020010A1010301130011B1011410040100C1100510150101D1101611060110E1110711170111F11113、八进制、十六进制计数八进制数二进制数十六进制二进制63三、不同进位计数制数间的等值转换1、任意的R进制数转换为十进制数----按权相加法2、十进制整数转换为任意的R进制整数----除R取余法3、十进制小数转换为任意的R进制小数----乘R取整法4、二进制数与八进制、十六进制数间的等值转换三、不同进位计数制数间的等值转换642.2符号数的编码方法
一、机器数与真值
机器数是指数在计算机内部的二进制表示形式。是把一个数的数值部分和符号均用二进制代码表示以后机器所能表示的数。真值是指用一般书写形式表示的数。
机器数的特点:⑴数的符号二进制代码化。
“0”代表+,“1”代表-,且放在数据的最高位。⑵小数点隐含在数据的某一固定位置上,不占用存储空间。⑶机器数与机器的硬件规模有关,即与机器字长有关。2.2符号数的编码方法65
二、原码表示:
原码表示保持数据原有的数值部分的形式不变,只将符号用二进制代码表示。原码表示是最简单的机器数表示方法。1、原码定义:2、在原码表示中,“0”有“+0”和“-0”之分。[+0]原=00……0[-0]原=10……0二、原码表示:66三、补码表示
1、补码的定义2、补码的求法3、特殊数的补码4、补码的几个关系1)补码与真值的关系2)补码与原码的关系3)机器正数与机器负数的关系4)补码的移位规则5、补码的几何性质三、补码表示67[修改]第二章计算机中数据信息的表示课件68从上面图中可以看出:1)正数的补码就是其本身;负数补码表示的实质是将负数映像到正值区域。因此,加上一个负数或减去一个正数可以用加上另一个数即补数来代替。2)从表示符号的角度,符号位的值代表了数的正确的符号;从映像值来看,符号位的值是映像值的一个数位,因此在补码运算中,符号位与数值位一样参加运算。从上面图中可以看出:6901234567-1-2-3-4-5-6-7-80000001001001000101011001110011000010011010110011011110111110111移码的几何性质真值移码01234567-1-2-3-4-5-6-7-800000070[修改]第二章计算机中数据信息的表示课件71例1、设某机字长为8位且采用整数表示。现已知机器数,试将其在不同的数据表示形式中所对应的十进制真值填入表内。表示形式机器数无符号数表示原码表示补码表示反码表示移码表示00110100110010111000000011111111例1、设某机字长为8位且采用整数表示。现已知机器数,试将其在72例2、单项选择题已知[X1]原=11001010,[X2]补=11001010 [X3]反=11001010则X1、X2、X3的关系是:1)X1
>X2
>X32)X2
>X3
>X13)X3
>X1>X24)X3>X2>X1例3、设一个六位二进制小数X=0.a1a2a3a4a5a6请回答下面问题。1)若X≥1/8,则a1a2a3a4a5a6要满足什么条件?2)若X>1/2,则a1a2a3a4a5a6要满足什么条件?3)若1/4≥X>1/16,则a1a2a3a4a5a6要满足什么条件?010000或001XXX或0001且a5a6至少有一个1例2、单项选择题732.3数的定点表示与浮点表示
任何一个数均可表示为:
(N)R=S×ReR:基值。计算机中常用的R可取2、8、16等。S:尾数。代表数N的有效数字。计算机中一般表示为纯小数。e:阶码。代表数N的小数点的实际位置。一般表示为纯整数。2.3数的定点表示与浮点表示74一、定点表示
1、定点表示:约定计算机中参加运算的所有数据的小数点位置均是相同的而且是固定不变的。定点表示是一种阶码e的取值固定不变的机器数表示。2、定点数表示格式及数据表示范围:定点数有两种表示方法。定点小数和定点整数。尾数数符尾数数符..(1位)(n位)(1位)(n位)纯小数纯整数一、定点表示尾751)原码表示的定点数表示范围机器数真值数符尾数(n位)定点小数定点整数最小正数000…01+2-n+1最大正数011…111-2-n2n-1最大负数100…01-2-n-1最小负数111…11-(1-2-n)-(2n-1)1)原码表示的定点数表示范围机器数真值数符尾数(n位)定点小76机器数真值数符尾数(n位)定点小数定点整数最小正数000…01+2-n+1最大正数011…111-2-n2n-1最大负数111…11-2-n-1最小负数100…00-1-2n2)补码表示的定点数的表示范围机器数真值数符尾数(n位)定点小数定点整数最小正数000…773、比例因子的选择与溢出与溢出的概念在定点运算中,参加运算的数据必须是定点小数或定点整数。因此在运算之前,必须选择一个恰当的比例因子,将所有参加运算的数均化成纯小数或纯整数,然后再进行运算。运算结果再根据所选的比例因子转换成正确的值。比例因子必须选择恰当。选择太大,将会影响运算精度;选择太小,会使运算结果超出机器所能表示的数据范围,即出现溢出。溢出:运算结果超出机器所能表示的数据范围。当出现溢出时,机器必须及时识别并进行处理,一般采用中断的方法进行处理。3、比例因子的选择与溢出与溢出的概念78二、浮点数据表示1、浮点表示定义:浮点数据表示是指参加运算的各数的小数点位置不是固定不变的,而是可以浮动的。即(N)R=S×Re中的e值是可变的。由于e的取值可变,因此在机器中必须将e表示出来。二、浮点数据表示792、浮点数据表示格式和数据表示范围两种格式:1位m位1位n位
1位1位m位n位2、浮点数据表示格式和数据表示范围1位m803、浮点数的规格化表示
1)规格化表示的目的:充分利用尾数的位数,表示更多的有效数字,以提高精度。2)规格化数的定义:4、在浮点表示中,阶码和尾数位数的选择:在浮点数据表示中,一个浮点数由阶码和尾数两个部分组成。其中阶码的位数决定数据表示的范围;尾数的位数决定数据表示的精度。为了保证更大的数据表示范围和更高的数据表示精度,在计算机中通常都存在单精度浮点数、双精度浮点数等多种浮点数格式。
3、浮点数的规格化表示815、IEEE754浮点数标准:IEEE754标准在表示浮点数时,每个浮点数均由三部分组成:符号位S,指数部分E和尾数部分M。浮点数可采用以下四种基本格式:(1)单精度格式(32位):E=8位,M=23位。(2)扩展单精度格式:E≥11位,M=31位。(3)双精度格式(64位):E=11位,M=52位。(4)扩展双精度格式:E≥15位,M≥63位。
SEM
数符阶码尾数
5、IEEE754浮点数标准:S82重点以32位单精度浮点数为例,介绍浮点754标准:尾数23位,采用原码表示且采用隐藏位表示法;阶码8位,采用特殊的移码,为移127码,即[E]移=127+E并规定如下:若E=0,且M=0,则N为0(真0)。若E=0,且M≠0,则N=(-1)S·2-126·(0.M),为非规格化数。为避免下溢而损失精度,允许采用比最小规格化数小的非规格化数表示.若1≤E≤254,则N=(-1)S·2E-127·(1.M)。为规格化数。若E=255,且M≠0,则N=NaN(“非数值”)。若E=255,且M=0,则N=(-1)S∞(无穷大)。重点以32位单精度浮点数为例,介绍浮点754标准:83例1:已知某机浮点数格式如下:数符阶符阶码尾数012。。。56。。。。。。。111、该机所能表示的规格化最小正数、最大正数、最小负数、和规格化最大负数的机器数的形式和它们所对应的十进制值分别是什么?2、已知用十六进制书写的机器数1ECH、EC0H和FFFH,它们所表示的十进制值是多少。3、试将十进制数–12.25和35/2048表示为机器数并用十六进制书写。例1:已知某机浮点数格式如下:数符阶符阶84例2:已知IEEE—754单精度浮点数C4480000H和3F600000H,试求其所表示的十进制值。例3:将下列十进制数表示为IEEE754单精度浮点数并用十六进制书写。(1)78.125(2)-567(3)-9/512例2:已知IEEE—754单精度浮点数C4480000H和385三、定点表示与浮点表示的比较1.在字长相同的条件下,浮点表示的数据范围大,精度高。2.浮点运算算法复杂,所需设备量大,运算速度慢。三、定点表示与浮点表示的比较862.4非数值型数据的表示
一、逻辑数—二进制串在计算机中一个逻辑数是用一个二进制串来表示的。逻辑数具有下面几个特点:(1)逻辑数没有符号的问题。逻辑数中各位之间是相互独立的,既没有位权问题,也没有进位问题。(2)逻辑数中的“0”与“1”不代表值的大小,仅代表一个命题的真与假、是与非等逻辑关系。(3)逻辑数只能参加逻辑运算,并且是按位进行的。2.4非数值型数据的表示87二、字符与字符串字符与字符串数据是计算机中用得最多的符号数据,它是人和计算机联系的桥梁。为使计算机硬件能够识别和处理字符,必须对字符按一定规则用二进制编码。目前广泛使用的是ASCII码(美国国家信息交换标准字符码)和EBCDIC码(扩展的二—十进制交换码)。ASCII码是用七位二进制表示一个字符,它包括10个数字(0~9),52个英文大、小写字母(A~Z,a~2),34个专用字符(如,、%、#等)和32个控制字符(如NUL、LF、CR、DEL等)共128个字符。ASCII字符编码符号的排列次序为b6b5b4b3b2blb0,其中b6b5b4为高位部分,b3b2blb0为低位部分。二、字符与字符串88在计算机中,通常用一个字节表示一个字符。由于ASCII编码为七位二进制,字节的最高位的作用:①用作奇偶校验位,用来检测错误。②用于表示字符,形成扩展的ASCII码。如EBCDIC码。EBCDIC(EstendedBinaryCodedDecimalInterchangeCode)是IBM公司常用的一种字符编码。它采用八位二进制数表示一个字符。③在我国用于区分汉字和字符。如规定字节的最高位为“0”表示ASCII码,为“1”表示汉字编码。在计算机中,通常用一个字节表示一个字符。由于ASCII编码为89字符串字符串是连续的一串字符,通常占用主存中多个连续的字节进行存放.一般一个字长可容纳多个字符,因此在计算机中,字符串有两种存放方式:低位字节存放方式高位字节存放方式……字节字节字节AA+1A+L-1字符串……字节字节字节A90三、汉字信息的表示为使计算机能够处理各种汉字信息,必须对汉字进行编码。汉字在计算机中的表示比较特殊。因为在计算机中使用汉字,需要涉及到汉字的输入,存储与处理、汉字的输出等几方面的问题,因此汉字的编码也有多种类型。汉字输入码汉字内码汉字字形码汉字交换码键盘输入存储、处理交换汉字信息显示、打印三、汉字信息的表示汉字输入码汉字内码汉字字形码汉字交换码键盘91汉字交换码:汉字交换码:用于不同汉字系统间交换汉字信息,具有统一的标准。1981年国家标准总局公布了《信息交换用汉字编码字符集》,即GB2312—80,简称国标码。该标准共收集汉字6763个,其中一级汉字3755个,二级汉字3008个,再加上各种图形符号682个,共计7445个。国标码规定每个汉字、图形符号都用两个字节表示,每个字节只使用最低七位。汉字交换码:汉字交换码:用于不同汉字系统间交换汉字信息,具有92汉字内码:用于汉字信息的存储、交换、检索等操作的机内代码,一般采用两个字节表示。英文字符的机内代码是七位的ASCII码,当用一个字节表示时,最高位为“0”。为了与英文字符能相互区别,目前我国的计算机系统中汉字内码都是以国标码为基础,在国标码基础上把每个字节的最高位置“1”,作为汉字标识符。即机内码=国标码+8080H有些系统中,字节的最高位作为奇偶校验位,在这种情况下就用三个字节表示汉字内码。汉字内码:用于汉字信息的存储、交换、检索等操作的机内代码,一93字形码:用点阵表示的汉字字形代码,它是汉字的输出形式。又称字模。根据汉字输出的要求不同,点阵的多少也不同。简易型汉字为16×16点阵,多用于显示。提高型汉字为24×24点阵、32×32点阵,48×48点阵、64×64点阵、128×128点阵,甚至更高,多用于打印。字形码:用点阵表示的汉字字形代码,它是汉字的输出形式。又称字94例:16×16的汉字字形点阵,每个汉字要占用32个字节。例:16×16的汉字字形点阵,每个汉字要占用32个字节。952.5十进制数串的表示十进制数串在机器内部的表示有两种形式:
1、字符串形式
将十进制数串以字符串形式表示,即一个字节表示一个十进制数字或符号。每个数字或符号的二进制编码就是它的ASCII码。
根据数串中符号所处位置,又分为前分隔数字串和后嵌入数字串两种表示形式。在前分隔数字串表示形式中,符号位占用单独一个字节,放在数字位之前。在后嵌入数字串表示形式中,符号位不单独占用一个字节,而是嵌入到最低一位数字里面。其规则是:若数串的符号为正,则最低一位数字0~9的ASCII编码不变(30H~39H);若数串的符号为负,则在最低数字位的ASCII码上加上40H,此时数字编码为(70H~79H)。2.5十进制数串的表示96十进制数的字符串表示主要应用于非数值处理,如显示、打印。但对十进制数的算术运算很不方便,因为每一字节只有低4位表示数值,而高4位在算术运算时不具有数值的意义。
2、压缩的十进制数串:用一个字节存放两个十进制数位,其值用BCD码表示,符号占半个字节,并存放在最低数值位之后。通常用1100表示正号,1101表示负号。在这种表示中,规定数字个数加符号位之和必须是偶数,否则在最高位之前补一个0。压缩的十进制数串既节省了存储空间,又便于直接进行十进制算术运算,是广泛采用的十进制数串表示方式。
十进制数的字符串表示主要应用于非数值处理,如显示、972.6数据校验码
数据校验码:具有检测某些错误或带有自动纠正错误能力的数据编码。数据校验码的基本原理是在合法的编码中加入一些冗余码,使合法编码出现某些错误时,就成为非法编码。通过检测编码的合法性达到检错的目的。常用的数据校验码有奇偶校验码、海明校验码、循环校验码。2.6数据校验码98一、奇偶校验码奇偶校验码是一种最简单、最常用的校验码,广泛用于主存的读写校验或ASCII码字符传送过程中的检查。1、基本原理:在n位有效信息位上增加一个校验位P,构成n十1位的奇偶校验码。校验位P的取值(0或1)使n+l位的奇偶校验码中“1”的个数为奇数(称为奇校验Odd)或为偶数(称为偶校验Even)。校验位的位置在有效信息位的最高位之前或者在最低位之后。
校验时,若n+1位的奇偶校验码中,“1”的个数不是奇数(奇校验)或不是偶数(偶校验)即表示有错。一、奇偶校验码992、编码方程与校验方程:设有效信息位为Dn-1Dn-2Dn-3………D1D0
其编码方程为:Peven=Dn-1⊕Dn-2⊕Dn-3⊕………⊕D1⊕D0Podd=Dn-1⊕Dn-2⊕Dn-3⊕………⊕D1⊕D0+1校验方程为:Eeven=Dn-1⊕Dn-2⊕Dn-3⊕………⊕D1⊕D0⊕PevenEodd=Dn-1⊕Dn-2⊕Dn-3⊕………⊕D1⊕D0⊕Podd+1
2、编码方程与校验方程:1003、奇偶校验的硬件实现:
1)编码电路:=1=1=1=1=1=11pevenpoddD6D5D4D3D2D1D0o3、奇偶校验的硬件实现:=1=1=1=1=1=1101
2)校验电路:=1=1=1=1=1=1=11偶校错奇校错D6D5D4D3D2D1D0Po2)校验电路:=1=1=1=1=1=1=111024、奇偶校验的校错能力:奇偶校验码只能发现奇数位个错误,而无法发现偶数位个错误,而且即使发现奇数位个错误也无法确定出错的位置;因而无法自动纠正错误。但由于现代计算机可靠性比较高,出错概率很低,而出错中只有一位出错的概率最高,因此用奇偶校验检测一位出错,能够满足一般可靠性要求。在CPU与主存的信息传送过程中,奇偶校验被广泛应用。4、奇偶校验的校错能力:103
二、海明校验码:
海明校验码的实质是在奇偶校验的基础上,增加校验位的位数,构成多组奇偶校验,使每个有效信息位都被两个或多个校验位校验,这样不仅可以发现错误而且还可确定出错位置并自动纠正错误。
1、海明校验码校验位数的选择设有效信息位的位数为n,校验位数为k,则能够检测一位出错并能自动纠正一位错误的海明校验码应满足下面关系:2k≥n+k+1由此式可计算出具有检1纠1错能力的海明校验码中n与k的关系,如下表所示。二、海明校验码:104有效信息位与校验位的关系有
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025中国移动黑龙江公司校园招聘高频重点提升(共500题)附带答案详解
- 商务、清洗服务行业相关投资计划提议
- 2025中国电建集团武汉重工装备限公司招聘14人高频重点提升(共500题)附带答案详解
- 2025中国电信湖北神农架林区招聘7人高频重点提升(共500题)附带答案详解
- 2025中国建筑股份限公司海拓工程分公司校园招聘高频重点提升(共500题)附带答案详解
- 2025中国华西企业限公司招聘221人高频重点提升(共500题)附带答案详解
- 2025中共中山市委党校第六期招聘高层次人才9人(2025年)高频重点提升(共500题)附带答案详解
- 2025下半年陕西延安市事业单位招聘工作人员385人高频重点提升(共500题)附带答案详解
- 2025下半年山东高速基础设施建设限公司社会招聘6人高频重点提升(共500题)附带答案详解
- 2025上海徐汇市场监督管理局招聘派遣制工作人员15人历年高频重点提升(共500题)附带答案详解
- 商场用电安全培训
- 《中小学教育惩戒规则(试行)》宣讲培训
- 结清货款合同范例
- 挂靠装修公司合同范例
- 2021年四川省凉山州九年级中考适应性考试理科综合(试卷)
- 骨科疼痛的评估及护理
- 【MOOC】概率论与数理统计-南京邮电大学 中国大学慕课MOOC答案
- 2024年度软件开发分包合同技术要求与交底2篇
- 湖南省邵阳市2023-2024学年高一上学期拔尖创新人才早期培养竞赛(初赛)数学试题 含解析
- 2024年执业药师资格继续教育定期考试题库附含答案
- 微短剧制作手册专业版
评论
0/150
提交评论