按位运算符 - 需要伪代码转换

Bac*_*alo 1 bit-manipulation bitwise-operators

有人可以将此声明翻译成伪代码(或只是简单的英语)吗?

var c:uint = 0xFF << 24 | r << 16 | g << 8 | b;
Run Code Online (Sandbox Code Playgroud)

And*_*mer 6

这是在一个四字节字中设置不同的字节.<<向左移动指定的位数,因此<< 24移位三个字节,<< 8一个字节等.因此,组合在一起的组件将是

0xFF000000         0xFF << 24
0x00rr0000         r << 16
0x0000gg00         g << 8
0x000000bb         b
Run Code Online (Sandbox Code Playgroud)

给出类似的最终答案

0xFFrrggbb
Run Code Online (Sandbox Code Playgroud)

给定变量名称,这可能是32位颜色值,每个字节分别为红色,绿色和蓝色.第四个组件可以是透明度,也可以是z值(深度),或者只是备用位,以防其他地方需要它们.;-)