具体来说,($c1 & 0x03) << 4
做什么?
0x03 是十六进制表示法吗?
这确实意味着第一个操作与十六进制值 0x03 进行逻辑与(即十六进制中的 3 或二进制中的 (0011))。然后左移 4 个位置。示例
让你有 $c = 34。然后首先它执行 $c & 3 这是 (100010 BITWISE AND 000011) 给你 (000010) 然后它在左边位置移动 4 位数字并恢复 $c 中的新值即 (100000)或十进制的 32。
希望它是有帮助的。
谢谢
这将取值的低两位$c1
,并将其向左移动 4 位。
是的 0x 是十六进制。这是对 $c1 和十六进制 03 值进行按位与运算,然后将结果左移 4 位(2 的幂)。