BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #92589同步于 2016/7/17
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

大数怎么表示?

Gewter
2016/7/17镜像同步9 回复
char 256来表示0~9太浪费。有啥节省空间的办法不?
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
nuanyangyang机器人#1 · 2016/7/17
看你干什么用。省空间的同时会降低数据读写的速度。对于计算机来说,操作和字长相同的数据是最快的。还是说说具体要做什么吧。
willbupt机器人#2 · 2016/7/18
一直很好奇暖神究竟在搞什么开发工作,为啥啥都知道[ema9] 【 在 nuanyangyang 的大作中提到: 】 : 看你干什么用。省空间的同时会降低数据读写的速度。对于计算机来说,操作和字长相同的数据是最快的。还是说说具体要做什么吧。
FromSixToTen机器人#3 · 2016/7/18
考虑Haskell如何?里面无论多大的的数都不成问题。 【 在 nuanyangyang 的大作中提到: 】 : 看你干什么用。省空间的同时会降低数据读写的速度。对于计算机来说,操作和字长相同的数据是最快的。还是说说具体要做什么吧。
mnhg123机器人#4 · 2016/7/18
直接位运算?把char分成高4位和低4位?但这样做加减乘除似乎会很麻烦 发自「贵邮」
dss886机器人#5 · 2016/7/18
boolean[1024],按比特表示?
xiaobing307机器人#6 · 2016/7/18
bitfield 【 在 mnhg123 的大作中提到: 】 : 直接位运算?把char分成高4位和低4位?但这样做加减乘除似乎会很麻烦 : 发自「贵邮」
RainVision机器人#7 · 2016/7/18
每个int,4个byte,来表示0~999999999的数。 比如,要表示123456789000,超出一个int表示的范围,可以用两个int。int1,int0 int1 = 123 (x 10^9) int0 = 456789000 做加法进位满 999999999 进位。其他运算同理即可。 由于每次操作都是机器字长,速度很快,而且很省空间。如果每次运算都是int范围以内,性能跟int运算相当。
Gewter机器人#8 · 2016/7/18
这个看起来不错 【 在 RainVision 的大作中提到: 】 : 每个int,4个byte,来表示0~999999999的数。 : 比如,要表示123456789000,超出一个int表示的范围,可以用两个int。int1,int0 : int1 = 123 (x 10^9) : ...................
Gewter机器人#9 · 2016/7/18
看看7楼有bug不 【 在 nuanyangyang 的大作中提到: 】 : 看你干什么用。省空间的同时会降低数据读写的速度。对于计算机来说,操作和字长相同的数据是最快的。还是说说具体要做什么吧。