首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

长整数的加减,怎样解决啊该如何处理

2012-06-08 
长整数的加减,怎样解决啊有一个结构体,保存的是一个数据大小,结构体里的两项分别是高4个字节和低4个字节的

长整数的加减,怎样解决啊
有一个结构体,保存的是一个数据大小,结构体里的两项分别是高4个字节和低4个字节的大小,现要将两次数据的大小相减,然后计算它的大小,怎样实现啊?

[解决办法]
可以用64位的数据来存储。如果一定要自己实现的话就看是有符号的数还是无符号的数,无符号的数减法就按一般的减法来进行,先用低32位减去低32位不够的再向高32位接位,有符号的话就要先算出减数相反数的补码再相加。
[解决办法]
定义成字符串虽然直观,但效率不高,建议定义成2^32或2^64进制数
参考这本书"guide to elliptic curve cryptography"的算法2.5和2.6

探讨

引用:

就是大整数运算吧,把整数保存为字符串或者字符数组在计算。

定义成字符串!

[解决办法]
若只是八个字节,加减法,那倒比较好处理。
加法:后四个字节相加,若结果超出4个字节,超出的部分保存到一个临时变量中,然后前四个字节相加再加上临时变量,超出范围你就自个想办法处理吧,和后四个字节组成一个新的大数。
减法:就是逆过来,先做前面四个字节,注意后面四个字节可能需要借位。
自个再想想吧。

热点排行