计算机中数表示与运算.docVIP

  • 14
  • 0
  • 约2.75万字
  • 约 15页
  • 2017-07-01 发布于河南
  • 举报
计算机中数表示与运算

计算机中数的表示及运算 张晓军 编写引言??? 人类在文字出现以前,就已经会用道具(如绳子打结)计数了.在日常生活中,我们每天都在与数字打交道,而数字与数制是密不可分的.比如:60秒为1分,60分为1小时,其特点是逢60进1,可取的数字是0,1,2,...,59,共有60个,这就是六十进制.再比如:24小时为1天,这是24进制;7天为1星期,这是7进制;12个为1打,这是12进制;10mm为1cm,10cm为1dm,10dm为1m,这是我们最为熟悉的10进制.不管是什么进制,其基数(如60进制的基数就是60,10进制的基数就是10)正好等于该数制中不同数字符号的个数(如60进制中采用0,1,2,...,59共60个不同的数字符号,10进制中采用0,1,2,...,9共10个不同的数字符号). 一、常用数制及其相互转换??? 在数制系统中,各位数字所表示的值不仅与该数字有关,而且与它所在的位置有关.例如,在10进制数123中,百位上的1表示1个100,十位上的2表示2个10,个位上的3表示3个1,因此,有:123=1*100+2*10+3*1,其中100,10,1被称为百位、十位、个位的权。十进制中,个、十、百、千、万……等各数位的权分别是1,10,100,1000,10000,……,一般地,写成10的幂,就是100,101,102,103,104,……;10则被称为十进制的基数 1.1 十进制数特点:采用0,1,2,3,4,5,6,7,8,9共10个不同的数字符号,并且是逢十进一,借一当十.对于任意一个十进制数,都可以表示成按权展开的多项式。例如:1999=1*103+9*102+9*101+9*1002003=2*103+0*102+0*101+3*10048.25=4*101+8*100+2*10-1+5*10-2 1.2 二进制数在电子计算机中采用的是二进制.二进制数只需2个不同的数字符号:0和1,并且是逢二进一,借一当二,它的基数是2.对于二进制数,其整数部分各数位的权,从最低位开始依次是1,2,4,8,……写成2的幂,就是20,21,22,23,……;其小数部分各数位的权,从最高位开始依次是0.5,0.25,0.125,……,写成2的幂,就是2-1,2-2,2-3,…….对于任意一个二进制数,也都可以表示成按权展开的多项式。例如:2=1*27+0*26+1*25+1*24+0*23+1*22+0*21+1*20(10.11)2=1*21+0*20+1*2-1+1*2-2 为什么人们在计算机中采用二进制?这是因为,二进制数具有以下一些重要特点:(1)二进制数只含有两个数字0和1,因此可用大量存在的具有两个不同的稳定物理状态的元件来表示.例如,可用指示灯的不亮和亮,继电器的断开和接通,晶体管的断开和导通,磁性元件的反向和正向剩磁,脉冲电位的低和高等等,来分别表示二进制数字0和1.计算机中采用具有两个稳定状态的电子或磁性元件表示二进制数,这比十进制的每一位要用具有十个不同的稳定状态的元件来表示,实现起来要容易得多,工作起来也稳定得多.(2)二制数的运算规则简单,使得计算机中的运算部件的结构相应变得比较简单.二进制数的加法和乘法的运算规则只有4条:?????????? 0+0=0? 0+1=1? 1+0=1? 1+1=10?????????? 0*0=0? 0*1=0? 1*0=0? 1*1=1实际上,二进制数的乘法可以通过简单的移位和相加来实现(3)二进制数的两个数字0和1与逻辑代数的逻辑变量取值一样,从而可采用二进数进行逻辑运算,这样就可以应用逻辑代数作为工具来分析和设计计算机中的逻辑电路,使得逻辑代数成为计算机设计的数学基础. 1.3 二进制数与十进制数间的相互转换(1)二进制数转换成十进制数——乘权求和,即将二进制数按权展开求和。例1 把二进制数1101.11转换成十进制数(1101.11)2=1*23+1*22+0*21+1*20+1*2-1+1*2-2??????????? =8+4+0+1+0.5+0.25??????????? =13.75(2)十进制数转换成二进制数——整数部分辗转除以2取余,小数部分辗转乘以2取整即将十进制整数除以2,得到一个商和一个余数;再将商除以2,又得到一个商和一个余数;以此类推,直到商等于零为止。每次得到的余数的倒排列,就是对应二进制数的各位数。例2 把十进制数37转换成二进制数于是得:(37)10=(100101)2 ??? 十进制小数转换成二进制小数是用“乘2取整法”。即用2逐次去乘十进制小数,将每次得到的积的整数部分按各自出现的先后顺序依次排列,就得到相对应的二进制小数。 例3 把(0.6875)10转换成二进制数设(0.6875)10=a-1*2-1+a

文档评论(0)

1亿VIP精品文档

相关文档