-
-
未解决
[求助] 二进制位移问题
-
发表于:
2020-11-29 15:44
1788
-
A1R5G5B5位掩码:
ARRR RRGG GGGB BBBB
ALPHA: 1000 0000 0000 0000 - 0x8000
RED: 0111 1100 0000 0000 - 0x7c00
GREEN: 0000 0011 1110 0000 - 0x3e0
BLUE: 0000 0000 0001 1111 - 0x1f
R5G6B5位掩码:
RRRR RGGG GGGB BBBB
RED: 1111 1000 0000 0000 - 0x0000f800
GREEN: 0000 0111 1110 0000 - 0x000007e0
BLUE: 0000 0000 0001 1111 - 0x0000001f
我要的结果是 R5G6B5 转成 A1R5G5B5
就是把 0000 0111 1110 0000 二进制的第一个数固定为1,GREEN是6位我要把它改成5位的颜色值((111111 & 0x3F) / 63.0f * 31)这样算法,最终得到的结果应该是:
1000 0011 1110 0000
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课