浮点数运算

    科技2022-07-21  116

    文章目录

    浮点数的加减法运算例子

    浮点数的加减法运算

    对阶尾数加减规格化舍入判溢出

    例子

    设阶码3位,尾数6位,按浮点运算方法,完成下列取值的x+y、x-y?

    [x] =

    (1) x = 2-011x0.100101,y = 2-010x(-0.011110)

    [y] = 11 110 -0.011110 注意:2-011 转换为是转成补码

    对阶

    对阶就是用x的阶码减y的阶码,得到的值为负,说明x<y,根据小阶向大阶看齐原理,进行右移,小阶的尾数向右移1位(相当于小数点左移),每右移1位,阶码加1,左移则相反

    阶码相加减:x-y 减法就是加法,[y]求[-y] 法则是:包括符号位,取反+1 11 101 + 00 010 = 11 1111 结果是-1的补码 x向右移1位阶码为:11 1110 尾数为0.010010

    尾数相加减 x + y 0 0. 0 1 0 0 1 0 + 1 1 .1 0 0 0 1 0 ____________________________ 1 1. 1 1 0 1 0 0 x-y y本身是负可以看作 x - (-y) = x + y 0 0.0 1 0 0 1 0 + 0 0.0 1 1 1 1 0 ______________________ 0 0.1 1 0 0 0 0

    规格化

    右规格化:浮点加减法运算不允许发出溢出,若阶符出现01、10,则要右规格化,右移1位,阶码+1 左规格化:符号位和尾数最高位不同时,不需要规格化,相同需要左规格化,尾数左移一位,阶码-1 x+y进行左规格化:需要用到01入的方法:11.110100,左移两位尾数左边的两个1丢弃,在尾数右边加2,逢21,尾数为:11.010010, 阶码减2,变为11 100

    舍入

    0舍1入法:上面用的就是0舍1入法,丢0补0,丢1补1 恒置1法:无论丢弃0或1,恒补1

    判溢出

    判溢出就是看阶码,01正溢,10负溢,00、11无溢出

    … 有毛病,评论给出


    Processed: 0.016, SQL: 8