已阅读5页,还剩78页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数的表示及运算,数的表示和转换数字串在机内的表示与存储带符号数的表示和运算溢出问题定点数与浮点数数字化信息的编码,1数的表示和转换-回顾,内容1.1数值型数据的表示和转换1.2进位计数制之间的转换,1.1数值型数据的表示和转换,1、进位计数制进位计数制:用少量的数字符号(也称数码),按先后次序把它们排成数位,由低到高进行计数,计满进位,这样的方法称为进位计数制基数:进位制的基本特征数,即所用到的数字符号个数。例如10进制:09十个数码表示,基数为10权:进位制中各位“1”所表示的值为该位的权常见的进位制:2,8,10,16,60,24,30进制,1)十进制(Decimal),基数:10;符号:0,1,2,3,4,5,6,7,8,9计算规律:“逢十进一”或“借一当十”并列表示:N10=dn-1dn-2d1d0d-1d-2d-m十进制数的多项式表示:N10=dn-110n-1+dn-210n-2+d1101+d0100+d-110-1+d-210-2+d-m10-Mm,n为正整数,其中n为整数位数;m为小数位数。Di表示第i位的系数,10i称为该位的权.,例如:一个十进制数123.45的表示,123.45=1102+2101+3100+410-1+510-2注:等式左边为并列表示法等式右边为多项式表示法,2)二进制(Binary),基数:2符号:0,1计算规律:逢二进一或借一当二二进制的多项式表示:N2=dn-12n-1+dn-22n-2+d121+d020+d-12-1+d-22-2+d-m2-m其中n为整数位数;m为小数位数。Di表示第i位的系数,2i称为该位的权.,3)十六进制(Hexadecimal),基数:16符号:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F计算规律:逢十六进一或借一当十六二进制的多项式表示:N16=dn-116n-1+dn-216n-2+d1161+d0160+d-116-1+d-216-2+d-m16-m其中n为整数位数;m为小数位数。Di表示第i位的系数,16i称为该位的权.,例如十六进制数(2C7.1F)16的表示,(2C7.1F)16=2162+12161+7160+116-1+1516-2,1.2进位计数制之间的转换,掌握下列数制的转换:2进制-10进制2进制-16进制2进制-8进制10进制-16进制,例如:写出(1101.01)2,(237)8,(10D)16的十进制数,(1101.01)2=123+122+021+120+02-1+12-2=8+4+1+0.25=13.25(237)8=282+321+720=128+24+7=159(10D)16=1162+13160=256+13=269,十进制转换成二进制方法,一般分为两个步骤:整数部分的转换除2取余法(基数除法)小数部分的转换乘2取整法(基数乘法),除基取余法:把给定的除以基数,取余数作为最低位的系数,然后继续将商部分除以基数,余数作为次低位系数,重复操作直至商为0例如:用基数除法将(327)10转换成二进制数,2327余数,21631,2811,2401,2200,2100,250,221,210,201,(327)10=(101000111)2,乘基取整法(小数部分的转换)把给定的十进制小数乘以2,取其整数作为二进制小数的第一位,然后取小数部分继续乘以2,将所的整数部分作为第二位小数,重复操作直至得到所需要的二进制小数,例如:将(0.8125)10转换成二进制小数.整数部分20.8125=1.625120.625=1.25120.25=0.5020.5=11(0.8125)10=(0.1101)2,例如:将(0.2)10转换成二进制小数,0.22=0.4整数部分00.42=0.800.82=1.610.62=1.210.22=0.400.42=0.800.82=1.610.62=1.21(0.2)10=0.001100110011.2,3)其它进制之间的直接转换法,二八二十六00000000010008001100011100190102001021010A0113001131011B1004010041100C1015010151101D1106011061110E1117011171111F,二进制转换成八进制,例:(10110111.01101)2,(10110111.01101)2=(267.32)8,八进制:267.32,二进制:010,110,111.011,010,二进制:10,110,111.011,01,八进制转换二进制,例如:(123.46)8=(001,010,011.100,110)2=(1010011.10011)2,二进制转换成十六进制,例:(110110111.01101)2,(10110111.01101)2=(1B7.68)16,十六进制:1B7.68,二进制:0001,1011,0111.0110,1000,二进制:1,1011,0111.0110,1,十六进制转换成二进制,例如:(7AC.DE)16=(0111,1010,1100.1101,1110)2=(11110101100.1101111)2,2.带符号数的表示和运算,带符号数的编码名词解释:真值和机器数真值:正、负号加某进制数绝对值的形式称为真值。如二进制真值:X=+1011y=-1011机器数:符号数码化的数称为机器数如:X=01011Y=11011,十进制数的编码与运算,BCD码8421码2421码余3码8421码为有权代码,0000000000011数值为N=8d3+4d2+2d1+1d01000100010100十进制数63.29的BCD码为:200100010010101100011.00101001300110011011040100010001112421码为有权代码,5010110111000数值为N=2d3+4d2+2d1+1d06011011001001十进制数63.29的BCD码为:701111101101011000011.001011118100011101011余3码为无权代码,对应8421码加3而得。9100111111100除上述三种BCD码之外,还有5421码、格雷码等,十进制编码的加法运算,1、“8421”BCD码加法运算BCD码运算应将每4位二进制数分为一组,组与组之间直接运算,逢十进一。但计算机中无法区分BCD码,一概作为二进制数处理,因此,计算机做此运算后须进行调整。调整方法:和9(1001)2,不调整和9(1001)2,加6(0110)2修正,例:5+3=87+8=158+9=17,010101111000+0011+1000+10011000111110001+0110+01101010110111向高位进位,2.数字串在机内的表示与存储,主要有两种形式;(l)字符形式:即用一个字节存放一个十进制数位或符号位,存放的是09十个数字和正负号的ASCll编码值。例如,123的编码为2B313233,占用4个连续的字节,这里的2B,31,32和33是用十六进制形式给出的编码,2B表示正号,31,32和33分别表示数字1,2和3。一123在主存中为2D313233,其中2D为负号。这种表示方式运算起来很不方便,因为它的高4位不具有数值的意义,它主要用在非数值计算的应用领域。,(2)压缩的十进制数形式。用一个字节存放两个十进制数位,既节省了存储空间,又便于完成十进制数的算术运算、其值用BCD码或ASCll码的低4位表示。符号位也占半个字节并放在最低数字位之后,其值可从4位二进制码中的6种冗余状态中选用。例如,用C(l2)表示正号;D(13)表示负号。并规定数字和符号位个数之和必须为偶数,否则在最高数字之前补一个0。例如,123被表示成123C(2个字节),-12被表示成012D(2个字节)。,3带符号数据的表示方法与加减运算,3.1原码、反码、补码机器数:计算机中表示的带符号的二进制数。机器数有四种表示方法即原码、补码、反码和移码。,1)原码表示法原码表示法用“0”表示正号,用“1”表示负号,有效值部分用二进制的绝对值表示。以下n均表示字长的有效位。,小数:,完成下列数的真值到原码的转换X1=+0.1011011X2=-0.1011011,X1原=0.1011011,X2原=1.1011011,整数:,完成下列数的真值到原码的转换X1=+01011011X2=-01011011,X1原=01011011,X2原=11011011,原码小数的表示范围:+0原=0.0000000;-0原=1.0000000最大值:1-2-(n-1)最小值:-(1-2-(n-1)表示数的个数:2n-1,若二进制原码小数的位数分别是8、16位,求其该数表示的最大值、最小值及所能表示数的个数?,原码整数的表示范围:+0原=00000000;-0原=10000000最大值:2(n-1)-1最小值:-(2(n-1)-1)表示数的个数:2n-1,若二进制的位数分别是8、16,求其表示的最大值、最小值及表示数的个数,8位:127,-127,25516位:32767,-32767,65535,原码特点:,表示简单,易于同真值之间进行转换,实现乘除运算规则简单。进行加减运算十分麻烦。,2)反码表示法,正数反码与原码相同负数的反码:符号位与原码相同,数值位是将原码的数值按位取反,就得到该数的反码表示,整数的反码:,X3=+1011011,X3反=01011011X4=-1011011,X4反=10100100,小数的反码:X1=+0.1011011,X1反=0.1011011X2=-0.1011011,X2反=1.0100100,3)补码表示法,模:计量器具的容量,或称为模数。4位字长的机器表示的二进制整数为:00001111共16种状态,模为16=24。整数N位字长的模值为2n,一位符号位的纯小数的模值为2。补码转换法:正数的补码就是正数本身,负数的补码是反码末位+1。,小数:,完成下列数的真值到补码的转换X1=+0.1011011X2=-0.1011011,X1补=01011011,X2补=10100101,整数:,完成下列数的真值到补码的转换X1=+01011011X2=-01011011,X1补=01011011,X2补=10100101,补码的表示范围:,N位纯整数:2n-1-1-2n-1N位纯小数:1-2-(n-1)-1均能表示2n个数,总结:原码与补码之间的转换,原码求补码正数X补=X原负数符号除外,各位取反,末位加1例:X=-1001001X原=11001001,X补=10110110+1=10110111X补=28+X=100000000-1001001=10110111100000000-100100110110111,由X补求-X补(求机器负数),运算过程是连同符号一起将各位取反,末位再加1。设字长N=8位例:X=+1001001X补=01001001-X补=10110111,补码的优点就是将减法运算转换成加法运算,X补-Y补=X补+-Y补例如X=(11)10=(1011)2Y=(5)10=(0101)2已知字长n=5位X补-Y补=X补+-Y补=01011+11011=100110=00110=(6)10注:最高1位已经超过字长故应丢掉,4)有/无符号数的表示,在数据处理的过程中,如不需要设置符号位可用全部字长来表示数值大小。如8位无符号数的取值范围是0255(2)。对于有符号数,计算机中通常一位符号位,其他是数据位。例如:8位计算机,1符号位7数据位16位计算机,1符号位15数据位,码制表示法小结,X原、X反、X补用“0”表示正号,用“1”表示负号如果X为正数,则X原=X反=X补。如果X为0,则X补X原、X反有两种编码。,5)数值的运算方法,计算机中,常用补码进行加减运算补码可将减法变加法进行运算补码运算特点:符号位数值位一同运算定点补码运算在加法运算时的基本规则:X补+Y补=X+Y补(两个补码的和等于和的补码)定点补码运算在减法运算时的基本规则:X-Y补=X补+-Y补,例如(正数相加):已知机器字长n=8,X=44,Y=53,求X+Y=?,解:X原=00101100,Y原=00110101,X补=00101100,Y补=00110101,X补=00101100+Y补=00110101,1,0,0,0,0,1,1,0,X+Y=+97,例(负数相加):已知机器字长n=8,X=-44,Y=-53,求X+Y=?,解:44补=00101100,53补=00110101X补=-44补=11010011+1=11010100,Y补=-53补=11001010+1=11001011,X补=11010100+Y补=11001011X+Y补=110011111超出8位,舍弃模值X+Y=-01100001,X+Y=(-97),例(正正):已知机器字长n=8,X=44,Y=53,求X-Y=?,解:X补=00101100,Y补=00110101,-Y补=11001011X补=00101100+-Y补=1100101111110111X-Y补=11110111,X-Y=-0001001=(-9),例(正负):已知机器字长n=8,X=-44,Y=-53,求X-Y=?,解:X补=11010100,Y补=11001011,-Y补=00110101X补=11010100+-Y补=00110101+100001001超出8位(模值),舍弃X-Y补=00001001,X-Y=+0001001=(+9),加减法运算规则,如果是加法运算,goto3如果是减法,则变成加法,goto3操作数变成补码进行加法运算(符号位参与运算)运算结果再变成原码或真值,举例如下:,3溢出问题,解:X补=01111000,Y补=00001010,X补=01111000+Y补=0000101010000010X+Y补=10000010,X+Y原=11111110X+Y的真值=-1111110=(-126)10运算结果超出机器数值范围发生溢出错误。(8位计算机数值表达范围:(-128+127),例:已知机器字长n=8,X=120,Y=10,求X+Y=?,溢出判断规则与判断方法,相同符号数相减,相异符号数相加不会产生溢出。两个相同符号数相加,其运算结果符号与被加数相同,若相反则产生溢出;两个相异符号数相减,其运算结果符号与被减数相同,否则产生溢出。溢出判断方法:1.双符号法,2.进位判断法,.双符号位溢出判断法Sf1Sf2(也被称为变形补码),双符号含义:00表示运算结果为正数;01表示运算结果正向溢出;10表示运算结果负向溢出;11表示运算结果为负数。亦即:OVR=Sf1Sf2=1有溢出OVR=Sf1Sf2=0无溢出第一位符号位为运算结果的真正符号位。,例:X=0.1001,Y=0.0101,求X+Y,解:X补=00.1001+Y补=00.0101X+Y补=00.1110两个符号位相同,运算结果无溢出X+Y=+0.1110,例:X=-0.1001,Y=-0.0101,求X+Y=?,解:X补=11.0110+1=11.0111+Y补=11.1010+1=11.1011X+Y补=111.0010最高位1丢掉两个符号位相同,运算结果无溢出X+Y=-0.1110,例:X=0.1011,Y=0.0111,求X+Y=?,解:X补=00.1011+Y补=00.0111X+Y补=01.0010两个符号位为01,运算结果正向溢出,例:X=-0.1011,Y=0.0111,求X-Y=?,解:X补=11.0100+1=11.0101Y补=00.0111-Y补=11.1001X补=11.0101-Y补=11.1001X+Y补=110.1110两个符号位10不同,运算结果负向溢出,.进位溢出判断法SC,两单符号位的补码进行加减运算时,若最高数值位向符号位的进位值C与符号位产生的进位输出值S相同时则无溢出,否则溢出。例:X补=1.101X补=1.110+Y补=1.001+Y补=0.100X+Y补=10.110X+Y补=10.010C=0,S=1,有溢出C=1,S=1,无溢出X+Y=+0.010,4定点与浮点表示,数的定点表示法定点整数定点小数数的浮点表示法计算机中浮点数的表示方法浮点数的规格化IEEE754格式介绍,4.1数的定点表示方法,(1).定点整数小数点位置固定在数的最低位之后如:Dn-1Dn-2D1D0.范围:2n-1-1-2n-1(采用字长n=16位补码时其值为32767-32768)(2).定点小数小数点位置固定在数的符号位之后、数值最高位之前。如:D0.D-1D-(n-2)D-(n-1)范围:1-2-(n-1)-1(采用字长n=16位时其值为32767/32768-1)其中n表示字长多少位,(1)浮点数的表示:是把字长分成阶码和尾数两部分。其根据就是:JEm-2.E0SD-1D-(n-1)阶符阶码值数符.尾数值SJEm-2.E0D-1D-(n-1)数符阶符阶码值.尾数值通常,阶码为补码或移码定点整数,尾数为补码或原码定点小数。,4.2数的浮点表示方法,(2)浮点数的规格化,目的:字长固定的情况下提高表示精度的措施:1增加尾数位数(但数值范围减小)2采用浮点规格化形式,125*102=1.25*104,规格化方法:调整阶码使尾数满足下列关系:尾数为原码表示时,无论正负应满足1/2d-1,即1.0 x.x,例题:设某机器用32位表示一个实数,阶码部分8位(含1位阶符),用定点整数补码表示;尾数部分24位(含数符1位),用规格化定点小数补码表示,基数为2。则:,1.求X=256.5的第一种浮点表示格式X=(256.5)10=+(100000000.1)2=+(0.1000000001x2+9)28位阶码为:(+9)补=0000100124位尾数为:(+0.1000000001)补=0.10000000010000000000000所求256.5的浮点表示格式为:00001001010000000010000000000000用16进制表示此结果则为:(09402000)16,Y=-(256.5)10=-(100000000.1)2=-0.1000000001x2+98位阶码为:(+9)补=0000100124位尾数为:(-0.1000000001)补=1.01111111110000000000000所求-256.5的浮点表示格式为:00001001101111111110000000000000用16进制表示此结果则为:(09BFE000)16,2.求Y=-256.5的第一种浮点表示格式,JEm-2.E0SD-1D-(n-1),(3)溢出问题,定点数的溢出根据数值本身判断浮点数的溢出根据规格化后的阶码判断上溢浮点数阶码大于机器最大阶码中断下溢浮点数阶码小于机器最小阶码零处理,微机中所能表示的数值类型,无符号二进制数(字节、字和双字)带符号的二进制定点整数形式(16、32、64位补码表示)和18位BCD码整数形式(80bit)。浮点数(IEEE754标准)包括数符S、阶码E和尾数D三个字段。,IEEE754标准格式如下,(-1)S2E(D0.D-1D-(P-1)最高是数符S占1位,0表示正、1表示负;指数项E,基数是2,E是一个带有一定偏移量的无符号整数;尾数部分D,它是一个带有一位整数位的二进制小数真值形式。其规格化形式应调整阶码使其尾数整数位D0为1且与小数点一起隐含掉。,例如将十进制数178.125表示成微机中的单精度浮点数(IEEE754),解:178.125=10110010.001B=1.0110010001*27指数E=7+127=134=10000110B127是单精度浮点数应加的指数偏移量,其完整的浮点数形式为:01000011001100100010000000000000=43322000H,例:将下面Pentium机中的单精度浮点数表示成十进制真值是多少?0011,1111,0101,1000,0000,0000,0000,0000,数符:S=(-1)0=1(正号)阶码:E=(01111110)2-127=126-127=-1尾数:D=(1.1011)2X=(0.11011)2=0.84375,提示:IEEE754格式,5数字化信息的编码,计算机进行数据处理和运算,就必须首先实现数字化表达。另外由于计算机除了数据处理和运算外,还要进行各种文字(特别是中文)的处理与编辑。因此,所有由计算机处理的信息也要用数字进行编码。这样在物理机制上可以以数字信号表示.计算机用于工业过程控制系统计算机用于语音、图像信号的处理其他非数字量的信息变成数字量进行处理,5.1信息的数字化表示形式,模拟信号的数字表示模拟信号数字信号:是一种在时间上或空间上离散的信号,单个信号是常用的二值逻辑(0或1),依靠多位信号组合表示广泛的信息.,1)用一串脉冲信号表示数字代码(先发低位后发高位为例),0,t,U,2)用一组电平信号表示数字代码,3)用一组数字代码表示字符(如ASCII码)4)用若干点的组合表示
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国导热凝胶用硅树脂行业需求动态与盈利前景预测报告
- 《做好自我管理》教学课件-2025-2026学年川教版(新教材)小学信息技术三年级下册
- 电力运行安全防护措施说明
- 商超安全风险防控措施
- 防晒化妆品SPF合规检测判定
- 麻纺厂数据分析细则
- 麻纺厂生产设备采购审批流程
- 某陶瓷厂生产设备操作准则
- 纺织企业安全生产培训制度
- 涂料厂环境保护制度
- 2026中国中煤能源集团有限公司春季校园招聘备考题库及答案详解一套
- IT系统运维流程与管理方案
- 小学五育并举工作制度
- ISO9001 认证辅导服务协议
- 20S515 钢筋混凝土及砖砌排水检查井
- 永辉生鲜采购制度
- 盘锦北方沥青股份有限公司招聘笔试题库2026
- 广西三支一扶2026年真题
- 音体美新教师培训
- 《半纤维素》团体标准(征求意见稿)-0629
- 2026年叉车人员培训考试题库及完整答案一套
评论
0/150
提交评论