System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理,特别是涉及一种十进制运算的舍入方法、系统、电路和计算机设备。
技术介绍
1、在2008年发行的ieee754标准修订版本中(ieee754-2008)介绍了十进制浮点(decimal floating point,dfp)单元的十进制64精度(16-digit)和128精度(34-digit)格式和规范,这为十进制浮点的运用提供了理论基础。十进制浮点数一般不直接用二进制数来表示尾数,而是用bcd码这种编码形式,其利用4个bit的二进制数来表示1个十进制的数码,使二进制和十进制之间的转换得以快捷地进行。
2、在实际的十进制加减法计算中,由于数据的位宽有限,在很多情况下都会遇到计算结果的舍入问题,与常规思路中的“四舍五入”不同,根据不同的舍入模式,会对结果有不同的舍入。当然,“四舍五入”这种舍入逻辑在具体的舍入中也是有体现的。如果舍入的值是精确的,那么在所有的舍入模式中,结果都应该相同;反之,则根据不同的舍入模式,可能会有不同的结果出现。但是ieee标准只是给出了浮点数舍入的标准模式,则并没有具体的实现方式,即没有给出在处理器运算时如何快速实现这些舍入模式的方式,实际上,不仅是十进制浮点运算,对于十进制的定点运算也同样存在上述问题,因此,亟需一种对十进制运算的计算结果的个数位进行快速的舍入判定的方法。
技术实现思路
1、为了解决上述技术问题,本专利技术提供了一种十进制运算的舍入方法、系统、电路和计算机设备,以能够解决无法对十进制加减法运算的计算结果进
2、第一方面,本专利技术提供了一种十进制运算的舍入方法,所述方法包括:
3、获取十进制运算对应的运算参数,所述运算参数包括操作数、运算类型、运算结果和舍入模式,所述操作数包括第一操作数和第二操作数,所述运算类型包括加法运算和减法运算,所述舍入模式为十进制数标准舍入模式;
4、根据所述运算参数和预设规则,生成参考值,根据所述运算类型和所述舍入模式,选择对应的舍入值,并将所述参考值与所述舍入值相加,得到目标值;
5、将所述目标值与目标阈值相比较,根据比较结果确定所述运算结果的舍入。
6、进一步地,所述根据所述运算参数和预设规则,生成参考值的步骤包括:
7、当所述运算类型为加法运算,且所述舍入模式为第一舍入模式时,判断所述运算结果是否产生进位,若未产生进位,则根据所述第二操作数的保护数和粘连数生成参考值;所述第一舍入模式包括最近舍入取偶数值模式、最近舍入取较远值模式、最近舍入取较近值模式和取较远值模式;
8、若产生进位,则根据所述第一操作数和所述第二操作数的个位数之和、以及所述第二操作数的保护数和粘连数生成参考值;
9、当所述运算类型为减法运算时,判断所述第一操作数和所述第二操作数的最高位是否相等,若最高位相等,则根据所述第二操作数的保护数和粘连数生成参考值;
10、若最高位不相等,则根据所述第二操作数的个位数、保护数和粘连数生成参考值。
11、进一步地,所述则根据所述第二操作数的保护数和粘连数生成参考值的步骤包括:
12、当所述运算类型为加法运算,所述舍入模式为第一舍入模式,且所述运算结果未产生进位时,将所述第二操作数的保护数以四位二进制数表示,并将所述第二操作数的粘连数以一位二进制数表示,其中,当所述粘连数为零时,所述一位二进制数为零,当所述粘连数不为零时,所述一位二进制数为1;将所述四位二进制数和所述一位二进制数顺序组合,并转换为十进制数,将所述十进制数作为参考值;
13、当所述运算类型为减法运算,且所述第一操作数和所述第二操作数的最高位相等时,将所述第二操作数的保护数以四位二进制数表示,并将所述第二操作数的粘连数以一位二进制数表示,其中,所述一位二进制数为零;将所述四位二进制数和所述一位二进制数顺序组合,并转换为十进制数,将所述十进制数作为参考值。
14、进一步地,所述则根据所述第一操作数和所述第二操作数的个位数之和、以及所述第二操作数的保护数和粘连数生成参考值的步骤包括:
15、将所述第一操作数和所述第二操作数的个位数之和的最后一位以四位二进制数表示,并将所述第二操作数的保护数和粘连数以一位二进制数表示,其中,当所述保护数和所述粘连数均为零时,所述一位二进制数为零,当所述保护数和所述粘连数中任一个不为零时,所述一位二进制数为1;
16、将所述四位二进制数和所述一位二进制数顺序组合,并转换为十进制数,将所述十进制数作为参考值。
17、进一步地,所述则根据所述第二操作数的个位数、保护数和粘连数生成参考值的步骤包括:
18、将所述第二操作数的个位数以四位二进制数表示,并将所述第二操作数的保护数和粘连数以一位二进制数表示,其中,当所述保护数和所述粘连数均为零时,所述一位二进制数为零,当所述保护数和所述粘连数中任一个不为零时,所述一位二进制数为1;
19、将所述四位二进制数和所述一位二进制数顺序组合,并转换为十进制数,将所述十进制数作为参考值。
20、进一步地,所述将所述目标值与目标阈值相比较,根据比较结果确定所述运算结果的舍入的步骤包括:
21、当所述运算类型为加法运算,且所述舍入模式为第一舍入模式时,判断所述目标值是否大于第一目标阈值,若大于所述第一目标阈值,则将所述运算结果的个位数加1,所述第一舍入模式包括最近舍入取偶数值模式、最近舍入取较远值模式、最近舍入取较近值模式和取较远值模式;
22、当所述运算类型为减法运算时,判断所述目标值是否小于第二目标阈值,若小于所述第二目标阈值,则将所述运算结果的个位数加1。
23、进一步地,所述并将所述参考值与所述舍入值相加,得到目标值的步骤包括:
24、当所述运算类型为减法运算时,将所述参考值对应的五位二进制数按位取反,并转换为十进制数,根据所述十进制数对所述参考值进行更新;
25、将更新后的所述参考值与所述舍入值相加,得到目标值。
26、进一步地,所述将所述目标值与目标阈值相比较,根据比较结果确定所述运算结果的舍入的步骤包括:
27、判断所述目标值是否大于目标阈值,若大于所述目标阈值,则将所述运算结果的个位数加1。
28、进一步地,所述将所述目标值与目标阈值相比较,根据比较结果确定所述运算结果的舍入的步骤还包括:
29、当所述运算类型为加法运算,所述舍入模式为最近舍入取偶数值模式,且所述目标值等于所述目标阈值时,根据所述运算结果的个位数确定所述运算结果的舍入;
30、当所述运算类型为加法运算,且所述舍入模式为第二舍入模式时,根据所述舍入模式确定所述运算结果的舍入,所述第二舍入模式包括取较近值模式和取较近值更短精度模式。
31、第二方面,本专利技术提供了一种十进本文档来自技高网...
【技术保护点】
1.一种十进制运算的舍入方法,其特征在于,包括:
2.根据权利要求1所述的十进制运算的舍入方法,其特征在于,所述根据所述运算参数和预设规则,生成参考值的步骤包括:
3.根据权利要求2所述的十进制运算的舍入方法,其特征在于,所述则根据所述第二操作数的保护数和粘连数生成参考值的步骤包括:
4.根据权利要求3所述的十进制运算的舍入方法,其特征在于,所述则根据所述第一操作数和所述第二操作数的个位数之和、以及所述第二操作数的保护数和粘连数生成参考值的步骤包括:
5.根据权利要求4所述的十进制运算的舍入方法,其特征在于,所述则根据所述第二操作数的个位数、保护数和粘连数生成参考值的步骤包括:
6.根据权利要求2所述的十进制运算的舍入方法,其特征在于,所述将所述目标值与目标阈值相比较,根据比较结果确定所述运算结果的舍入的步骤包括:
7.根据权利要求5所述的十进制运算的舍入方法,其特征在于,所述并将所述参考值与所述舍入值相加,得到目标值的步骤包括:
8.根据权利要求7所述的十进制运算的舍入方法,其特征在于,所述将所
9.根据权利要求1所述的十进制运算的舍入方法,其特征在于,所述将所述目标值与目标阈值相比较,根据比较结果确定所述运算结果的舍入的步骤包括:
10.一种十进制运算的舍入系统,所述系统采用权利要求1至9任一项所述的舍入方法,其特征在于,包括:
11.一种十进制运算的运算电路,所述运算电路用于执行权利要求1至9任一项所述的舍入方法,其特征在于,包括:
12.根据权利要求11所述的十进制运算的运算电路,其特征在于,所述加法模块包括加法器,所述比较模块包括比较器。
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至9中任一项所述方法的步骤。
...【技术特征摘要】
1.一种十进制运算的舍入方法,其特征在于,包括:
2.根据权利要求1所述的十进制运算的舍入方法,其特征在于,所述根据所述运算参数和预设规则,生成参考值的步骤包括:
3.根据权利要求2所述的十进制运算的舍入方法,其特征在于,所述则根据所述第二操作数的保护数和粘连数生成参考值的步骤包括:
4.根据权利要求3所述的十进制运算的舍入方法,其特征在于,所述则根据所述第一操作数和所述第二操作数的个位数之和、以及所述第二操作数的保护数和粘连数生成参考值的步骤包括:
5.根据权利要求4所述的十进制运算的舍入方法,其特征在于,所述则根据所述第二操作数的个位数、保护数和粘连数生成参考值的步骤包括:
6.根据权利要求2所述的十进制运算的舍入方法,其特征在于,所述将所述目标值与目标阈值相比较,根据比较结果确定所述运算结果的舍入的步骤包括:
7.根据权利要求5所述的十进制运算的舍入方法,其特征在于,所述并将所述参考值与所述...
【专利技术属性】
技术研发人员:咸有龙,周圣骐,刘刚,刘洋,张稚,
申请(专利权)人:上海合芯数字科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。