软件设计师教程强化练习之定点数和浮点数

软件设计师 责任编辑:小狐狸 2016-04-28

添加老师微信

备考咨询

加我微信

摘要:软件设计师教程强化练习之定点数和浮点数

       >>>>点击进入了解软件设计师培训视频

 >>>>点击进入了解软件设计师在线辅导 

   >>>>点击进入了解软件设计师面授班   

       软件设计师考试属于全国计算机技术与软件专业技术资格考试(简称计算机软件资格考试)中的一个中级考试。考试不设学历与资历条件,也不论年龄和专业,考生可根据自己的技术水平选择合适的级别合适的资格,但一次考试只能报考一种资格。考试采用笔试形式,考试实行全国统一大纲、统一试题、统一时间、统一标准、统一证书的考试办法。

   定点数和浮点数

   定点数和浮点数的区别在于如何对待小数点,在运算方式上也不相同,衡量一个计算机系统,定点运算和浮点运算是两个重要的指标。定点数的小数点是隐含的,固定在某个位置。如果该位置是在数的最低位之后,就是定点整数。定点数表示比较简单,运算规则也比较容易实现,但是当数值范围变化大时,使用定点数表示和运算就比较困难。为了表示更大范围的数值,可以使用浮点数表示法。

   在表示一个很大的数时,我们常常使用一种称为科学计数法的方式:

   其中M称为尾数,e是指数(阶码),R为基数。

   浮点数就是使用这种方法来表示大范围的数,其中基数一般是2,8,16.而且对于特定机器而言,基数是固定不变的,所以在浮点数中基数并不出现。从这个表达式可以看出:浮点数表示的精读取决于尾数的宽度,范围取决于基数的大小和指数的宽度。

   1.格式化数

   使用格式化数是提高浮点数有效位的方法。格式化的意思是把尾数前面加0,同时修改指数,这样,在尾数位数固定的情况下,能提供最多的有效位来表示尾数。当指数小于能够表示的最小值时,这个数称为机器零,此时会把尾数和指数同时清零。

   2.定点数的溢出处理

   计算机中通常使用补码进行计算。两个正数相加,如果结果的符号位变成了1,则表示有溢出;两个负数相加,如果结果的符号位变成了0,那么也意味着溢出。如果是正数和负数相加,则不会出现溢出的情况。

   判断处理的方法可以再增加一个符号位,称之为第一符号位,原来那个符号位变成了第二符号位。两个符号位都参与计算,如果计算结果的两个符号位相同,表示没有溢出,如果不同,就表示出现了溢出。而第一符号位才是真正的符号。

   也可以通过进位信号来判断,当结果的较高位和符号位的进位信号一致时(都有进位信号或都没有进位信号),则没有溢出,否则表示有溢出。

   3.浮点数的运算

   浮点数运算过程比定点数复杂,包括以下过程。

   (1)对阶。首先计算两个数的指数差,把指数小的向指数大的对齐,并将尾数右移指数差的位数。这样,两个浮点数就完成了对阶的操作。可以看出:对阶的过程可能使得指数小的浮点数失去一些有效位。如果两个浮点数阶数相差很大,这个差大于指数小的浮点数的尾数宽度,则对阶后指数小的浮点数的尾数就变成了0,即当做机器零处理了。

   (2)尾数计算。对阶完成后,两个浮点数的尾数就和定点数一样进行计算。

   (3)结果格式化。尾数计算后,可能会产生溢出,此时将尾数右移,同时指数加1,如果指数加1后发生了溢出,则表示两个浮点数的运算发生了溢出。如果尾数计算没有溢出,则尾数不断左移,同时指数减1,直到尾数为格式化数。在这个过程中,指数小于机器能表达的最小数,则将结果置机器零,这种情况称为下溢。

       希赛软考网,拥有十四年软考培训经验,希赛网一直坚持自主研发,将丰富的软考培训经验有效融入教程研发过程,自成体系的软考在线题库(软考历年真题)、软考培训教材软考视频教程,多样的培训方式包括在线辅导面授网络课堂,使考生的学习更具系统性,辅导更具针对性。采用全程督学机制,,软考平均通过在全国。

       相关推荐

       2016年希赛教材大放送

 软件设计师考前串讲(2015年下半年)

 软件设计师网络课堂(2015年下半年)

 软件设计师培训视频教程(2015)

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

软考备考资料免费领取

去领取

!
咨询在线老师!