![[计算机软件及应用]第1章_2 计算机运算基础.ppt_第1页](http://file.renrendoc.com/FileRoot1/2018-12/23/06c68517-8d72-46d6-84d4-9db8ab40cbd7/06c68517-8d72-46d6-84d4-9db8ab40cbd71.gif)
![[计算机软件及应用]第1章_2 计算机运算基础.ppt_第2页](http://file.renrendoc.com/FileRoot1/2018-12/23/06c68517-8d72-46d6-84d4-9db8ab40cbd7/06c68517-8d72-46d6-84d4-9db8ab40cbd72.gif)
![[计算机软件及应用]第1章_2 计算机运算基础.ppt_第3页](http://file.renrendoc.com/FileRoot1/2018-12/23/06c68517-8d72-46d6-84d4-9db8ab40cbd7/06c68517-8d72-46d6-84d4-9db8ab40cbd73.gif)
![[计算机软件及应用]第1章_2 计算机运算基础.ppt_第4页](http://file.renrendoc.com/FileRoot1/2018-12/23/06c68517-8d72-46d6-84d4-9db8ab40cbd7/06c68517-8d72-46d6-84d4-9db8ab40cbd74.gif)
![[计算机软件及应用]第1章_2 计算机运算基础.ppt_第5页](http://file.renrendoc.com/FileRoot1/2018-12/23/06c68517-8d72-46d6-84d4-9db8ab40cbd7/06c68517-8d72-46d6-84d4-9db8ab40cbd75.gif)
已阅读5页,还剩28页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1.4 计算机运算基础,一、计算机中的数制 用一组符号表示数值时,数值的大小不但与每一个符号所表示的值有关,还与这个符号所处的位置有关,这种表示方式称为数的位置表示法。 我们通常使用的数值表示法都位置表示法,每一个位置具有一定的数量级。比如常用的十进制数其各位的数量级就是10X,其中X为该符号相对小数点的位置。比如十进制数 an-1an-2a1a0. a-1a-2a-m,所表示的数值大小N为:,N=an-110n-1+an-210n-2+a1101+a0100+ a-110-1+a-210-2+a-m10-m,推广到一般情况,假设一种数的进制为Y进制,则其各位数量级就是YX (X表示该位与小数点之间的距离关系),Y进制数 an-1an-2a1a0. a-1a-2a-m所表示的数值大小为 N=an-1Yn-1+an-2Yn-2+a1Y1+a0Y0+ a-1Y-1+a-2Y-2+a-mY-m 其中: a:被称为数码 在位置表示计数中,用一组数字符号来表示数值,这一组数字符号称为数码,用于表示每一位上的数值。例如: 十进制数的数码是: 0、1、2、3、4、5、6、7、8、9 Y:被称为基数,它表示数码的个数,十进制中基数为10。 YX:被称为位权,它表示不同位置数码的数量级。,二进制,二进制数是计算机中常用的一种记数方法 ,它使用“”,“”这两个数码构成以为基数的进制表达方式。其基本运算规则为“逢二进一,借一当二”。,八进制,使用二进制表达一个数值需要较长的编码。为了便于记忆和使用,人们将三位二进制数作一组用一个符号表示,构成八了进制,这样可以把数码的长度缩短三分之二。 把二进制数按三个一组的方式进行分组,每一组将产生23种组合,因此需要8个数码来表示每一位数值,这样就构成了八进制。八进制使用0,1,2,3,4,5,6,7,共八种符号来表示数码。,二八进制数转换,二进制数转换为对应的八进制数十分方便,具体分为两步: 1)以小数点为中心将二进制数三位一组进行分组; 2)将每一组用对应的八进制符号进行代换,这样就将二进制数转换成了对应的八进制数。 八进制转换为对应的二进制数,只需要将每一个八进制数码直接用对应的三位二进制数代换即可。,例:设有两个二进制数 011110101000,0.10101011,试将它们转换成对应的八进制数。,011,110,101,000 0.101,010,110,八进制数 3 6 5 0 0. 5 2 6,十六进制,在计算机中常以字节为基本单位来表达和记录信息,一个字节由八位二进制数组成。八位二进制数转换成八进制数并不方便,而且一个字节需要使用三个八进制符号表示。如果将八位二进制数分为两组,每组四位,就可以用两个符号表示一个字节的数据,十分便于记忆和表达。由于四位二进制数可以产生24种组合,因此需要16种数码来表示一个四位二进制数,这样就产生了十六进制。在十六进制中使用的数码分别为:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F。,二进制与十六进制之间的对应关系如下: 二进制 0000 0001 0010 0011 0100 0101 0110 0111 十六进制 0 1 2 3 4 5 6 7 二进制 1000 1001 1010 1011 1100 1101 1110 1111 十六进制 8 9 A B C D E F,二进制数与十六进制数转换,二进制数转换为对应的十六进制数也分为两步: 1)以小数点为中心将二进制数四位一组进行分组; 2)将每一组用对应的十六进制符号进行代换,这样就将二进制数转换成了对应的十六进制数。 十六进制转换为对应的二进制数,只需要将每一个十六进制数码直接用对应的四位二进制数代换即可。,例:设有两个二进制数 11110101000,0.101010111 ,试将它们转换成对应的十六进制数。,0111,1010,1000 0.1010,1011,十六进制数 7 A 8 0. A B,二进制数与十进制数转换,十进制数是人们最常使用的一种数的表达和运算方式,每一个十进制数由0,1,2,3,4,5,6,7,8,9十种符号组成。十进制数与二进制数之间无法直接进行代换,需要使用一定的计算方法。 可以从它们的数学表达中来描述这种转换关系,假设有十进制整数X,若其对应的二进制数可表示为an-1an-2a1a0,则有如下等式成立: X=an-12n-1+an-22n-2+a121+a020,该等式两边同时除以2,得 X/2=an-12n-2+an-22n-3+a120 余数为a0 再同时除以2,得 (X/2)/2=an-12n-3+an-22n-4+a220 余数为a1,反复除以2 最后得 X/2n=0 余数为an-1 将所得余数从下往上依次排列就是十进制数X对应的二进制数an-1an-2a1a0,这种方式称为“除留余数法”或“除2法”。,例:将十进制数123,用除2法转换成对应的二进制数。,1111011B即为123D对应的二进制数,设如果有十进制纯小数0.Y,其对应的二进制数为0. a-1a-2a-m则有等式: 0.Y a-12-1+a-22-2+a-m2-m 如果将等式两边乘以2,则有 (0.Y)2(a-12-1+a-22-2+a-m2-m )2= a -1+a-22-1+a-m2-m+1 取等式两边的整数部分,则有(0.Y)2取整a-1 将两边小数部分再乘以2 (0.Y2a-1)2=(a-22-1+a-m2-m+1)2a-2+a-32-1+a-m2-m+2 取等式两边的整数部分,则有(0.Y2-a-1)2取整a-2 依此类推则可得到二进制数的各位数值。 然后排列成0. a-1a-2a-m即可,这种方法称为“乘2取整法”或“乘2法”。,例:将十进制数0.625,采用乘2法转换成对应的二进制数。,注意:有些数可能永远也无法通过乘2的方式变成整数,一直会有小数部分,当所需要的精度达到后就不用再进行乘法操作了。 如:0.725,0.225,从以上的计算过程可以看出,十进制数转换成对应的二进制数需要分为两步进行: (1)将十进制数的整数部分采用“除2法”转换成对应的二进制整数; (2)将十进制数的小数部分采用“乘2法”转换成对应的二进制小数。 最后将转换的整数部分和小数部分合并即可得到十进制数转换成的二进制数。,不同进制数据,相同的表示会有不同的数值大小,为了在表示数据时不产生歧义,通常在数据最后加一个字母来区别不同的进制。 十进制数使用D表示(可以省略),二进制数使用B表示,八进制数使用Q表示,十六进制使用H表示。其对照关系如右表所示。,二、计算机中数的表示和运算,在计算机中无论是数据还是其它信息都是采用一定长度的二进制数表达。对于不同的信息,所需要的二进制数长度也不同。 人们规定:在微型计算机中以八位二进制数为一个基本单位来分配存储地址,称为字节(Byte)。任何一个信息最少要用一个八位二进制数来表达,如果需要更长的二进制数表达某些信息则需要使用八的整数倍二进制数,如16位,32位等。X86系统中常用的数据长度单位有: 字节:8个二进制位(Byte) 1Byte=8bit 字:2个字节(Word) 1Word=2Byte=16bit 双字:4个字节(Double Words),1 Double Words =4Byte=32bit 四字:4个字(Quad Words),1 Quad Words =4W=8Byte=64bit 十字节:10字节(Ten Bytes),1 Ten Bytes=10Byte=80bit,计算机中多字节数据的存储,在计算机中每一个字节存储空间分配一个地址,多字节数据需要多个存储地址。用哪一个地址来表示多个字节组成的数据呢?,计算机中多字节数据有两种数据存储方式,一种称为大端存储法,另一种称为小端存储法。 所谓大端存储就是将多个字节数据依次存放,将高字节数据存放到低地址,将低字节数据存放到高地址。 所谓小端存储就是将多个字节数据依次存放,高字节数据存放到高地址,低字节数据存放到低地址。 如32位数据12345678H存放到起始地址为100H的存储器中。 两种不同的存储方式下数据在内存中的示意如图:,(a) 大端存储 (b) 小端存储,X86系列CPU采用小端存储,BCD码,如果使用二进制数对十进制的数码进行编码,并利用编码的位置关系来表达十进制数的位权关系,则可以更方便地在计算机中对十进制数进行表示和运算。常用的编码称为二十进制码或称BCD码(Binary Coded Decimal)。 如:十进制数100如果直接进行数值转换,用二进制数表示就应该是0110,0100B(64H),需要进行7次除2取余计算得到。 而使用BCD编码,就可以直接表示为0001,0000,0000B, 1 0 0 也就是直接将十进制数的每一位数码转换成一个对应编号,然后按其位置进行排列来表示该数。这极大地方便了十进制数的表达和转换。,由于计算机中数据地址分配的基本单位是字节,因此,对每一个数码进行编号通常是以字节为单位进行的,也就是说每一个数码将由八位二进制编码。这种BCD码称为非压缩BCD码。 显然非压缩BCD码的浪费很大。如果每一个十进制数码用四位二进制编码,则可以减少一半存储空间。这种BCD码称为压缩BCD码。 其对照表如右图。,二进制:逢二进一,借一当二 加法规则 减法规则 0+0=0 0-0=0 0+1=1 0-1=1 (借1) 1+0=1 1-0=1 1+1=0 (进1) 1-1=0 十六进制:逢十六进一,借一当十六 C 3 H 3 5 H 8 5 H 2C H 148 H 09 H,算术运算的基本规则,逻辑运算的基本规则,例:X=00FFH Y=5555H,求Z=XY=? X = 0000 0000 1111 1111 B Y = 0101 0101 0101 0101 B Z = 0101 0101 1010 1010 B Z=55AAH,有符号数表示和运算,有符号数在计算机中表示时,除了数值大小外,还有相应的正负号,通常正负号以二进制数据最高位来表示。 不同计算机处理能力和表示范围有所不同,表示一个数据所使用的二进制位数也不相同,通常是字节的整数倍,如:8位、16位、32位等。假设机器字长为8位:,常用表示法 原码、反码、补码 原码表示法:符号 + 绝对值 例:n=8bit +3原码 = 0 000,0011 = 03H -3原码 = 1 000,0011 = 83H +0原码 = 0 000,0000 = 00H -0原码 = 1 000,0000 = 80H 0的表示不唯一,反码表示法:正数的反码同原码,负数的反码数值位与原码相反 例:n=8bit +5反码 = 0 000,0101 = 05H -5反码 = 1 111,1010 = FAH +0反码 = 0 000,0000 = 00H -0反码 = 1 111,1111 = FFH 0的表示不唯一,补码表示法: 正数的补码:同原码 +1补码 = 0000 0001 = 01H +127补码 = 0111 1111 = 7FH +0补码 = 0000 0000 = 00H,负数的补码:(1)写出与该负数相对应的正数的补码 (2)按位求反 (3)末位加一,取反加一,-1补码 = 1111 1111 = FFH -127补码 = 1000 0001 = 81H -128补码 = 1000 0000 = 80H -0补码 = 0000 0000 = 00H(+0、-0相同),n位补码的表数范围: - 2n-1 N 2n-1-1 n=8 -128 N 127 n=16 -32768 N 32767,移码表示法:在数的真值上加一个偏移量形成。 X移=2n-11+X 其中 -2n-1X2n-1,n为包括符号位在内的二进制码长度,X为待转换的实际数值,即X用加/减号表示符号,绝对值表示数值,相当于将所有X的原码加上2n-1-1。,例:如X=100,Y=100,用八位二进制数表示它们的移码为: X=+01100100,Y=01100100,28-11=01111111则 X移=0111111101100100=11100011 Y移=0111111101100100=00011011,数值0的移码表示为 +0移=0111111100000000=01111111 -0移=0111111100000000=01111111,相当于将所有数值都向正向移动了2n-11,有符号数的加减运算 计算机中数据的加减运算,通常以补码方式进行: 加法规则:XY补码 = X补码 Y补码 减法规则:XY补码 = X补码 Y补码 补码进行减法运算可转换为对应的加法运算,计算中符号位参与运算,并能得到正确结果。,溢出问题及判断:,由于补码中最高位为符号位,当计算结果超过补码表示范围时,可能导致不正确的进位,从而产生错误结果,这时称为溢出。 溢出是超出补码表示范围,即计算结果绝对值过大引起。因此,计算结果溢出的基本条件是计算结果的绝对值大于参与计算的两个数的绝对值。很显然,只有当两个参与计算的数为同号相加,或异号相减时才可能出现溢出问题。 当同号相加,或异号相减时,计算结果的绝对值超过补码表示范围(- 2n-1 N 2n-1-1)时,才产生溢出。,如:计算机字长为时 (+120)+(+30),(-50)+(-80)同号相加产生生溢出 (+34)(-95)和(-45)(+123)异号相减产生溢出,使用二进制表示时,判断溢出的基本方法: )根据参与运算的两个数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 南太湖农业面源污染区小型浅水湖泊水质演变与调控策略研究
- 2025年中学法制教育家长参与计划
- 学习《企业文化》和房地产行业执行力的心得体会
- 超纤合成革生产能源管理与环保对策措施
- TT放射治疗器械制造商2022-2023年度供应商ESG绩效报告
- 科大讯飞科大讯飞2023ESG报告:NGO与学术机构合作的智能医疗设备行业可持续发展案例
- 高考评价体系优化学生学习策略心得体会
- 港口工程重大危险源辨识及监控措施
- 幼儿园传染病防控卫生保健工作计划
- 单颗粒煤泥燃烧特性的多维度解析与探究
- 地球物理勘探合同范本
- 《飞机结构与系统》课件-机翼结构
- 渠道维护工考试题库考点
- DL-光伏发电站电能质量检测技术规程
- 《开开心心上学去》公开课课件
- 游戏传媒策划方案
- 变压器油色谱分析(详细超值版)
- 青少无人机科普教育方案课件
- 文物安全培训课件
- 传播学概论课件
- 大于号小于号等于号田字格描红
评论
0/150
提交评论