gpt4 book ai didi

Java 16 位对齐

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

我目前正在处理一些表示文件内偏移量的整数值,我需要在 16 位边界上对齐这些数字,但是我有点不确定如何执行此操作。

例如:

First number: 89023
16-bit aligned: 89024

Second number: 180725
16-bit aligned: 180736

Third number: 263824
Already 16-bit aligned, don't need to change it.

这可能是我的数学最让我失败的原因,但如果有人可以就如何在 Java 中实现这一点提出建议,我将不胜感激。

谢谢!

更新

我想我刚刚解决了这个问题,只需用 16 修改值,然后找出 16 缺少的内容即可。

例如:

180725 % 16 = 5
16 - 5 = 11
180725 aligned to 16-bits is: 180736

有人可以确认我这样做是正确的吗?

最佳答案

是的,这会起作用。 16 位边界对齐只是确保它是 16 的倍数。你所做的是确保该值达到下一个值 16,向上舍入。

// find how far off of alignment you are, 0-15
offset = num % 16
// determine how much further you need to move the value to achieve 16 bit alignment
// only use if offset > 0, otherwise you are already good
val = 16 - offset

关于Java 16 位对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16796084/

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