gpt4 book ai didi

algorithm - 如何将 BCD 数字乘以(和除以)10^x

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:05:19 26 4
gpt4 key购买 nike

我有一个大的(12 位)BCD 数字,编码为 6 个字节的数组 - 每个半字节是一个 BCD 数字。我需要将它乘以 10^x,其中 x 可以是正数也可以是负数。

我知道这可以通过向左或向右移动半字节而不是位来完成,但这是一个可怕的实现 - 特别是在我正在使用的 Javacard 中。有没有更好的办法?

最佳答案

半字节移位是最有效的方法。

如果性能不是您的问题,并且您希望拥有最具可读性的版本,您可能希望将 BCD 码转换为字符串并移动小数点。

如果您没有小数点(例如,您的数字是整数),您可以在 x > 0 时连接零,或者在 x < 0 时删除最后的 -x 个字符。

然后将字符串转换回 BCD。注意溢出以及删除所有字符并以空字符串结尾的情况。

关于algorithm - 如何将 BCD 数字乘以(和除以)10^x,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/412769/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com