我需要将一个 8 位数字(0 - 255 或 #0 - #FF)转换为其等效的 12 位数字(0 - 4095 或 #0 - #FFF)
我不想直接转换相同的数字。我想表示相同的比例,但以 12 位表示。
例如:-
8 位的 0xFF 应该转换为 12 位的 0xFFF
8 位的 0x0 应该转换为 12 位的 0x0
8 位的 0x7F 应该转换为 12 位的 0x7FF
8 位的 0x24 应该转换为 12 位的 0x249
是否有任何我应该使用的特定算法或技术?
我正在用 C 编写代码
最佳答案
尝试 x << 4 | x >> 4
.
这已由 OP 更新,从 x << 4 + x >> 4 更改
关于将 8 位转换为等效的缩放 12 位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21220326/