C++编程 里面这个语句看不明白 求高人解释

来源:百度知道 编辑:UC知道 时间:2024/07/02 16:30:36
(y << 8 | x),
请详解~

举个例子表达吧:
设y=13,即二进制1101,于是y<<8=110100000000(二进制,后面添了8个0),即3328(也可以理解成13*2^8)
“|”就是“位或”。楼主想必知道什么是“逻辑或”吧,其实类似的。位或即对于两个数二进制表示中的每一位,如两个数中至少一个为1,运算结果的这一位就是1,反之是0。
设x=1869,即二进制11101001101。
于是:
110100000000
| 011101001101
--------------
111101001101
即十进制3917

印刷错误