-8的二进制,正数的取反加一:
0000 1000 的补码
取反后 为 1111 0111
加一后 1111 1000
8的二进制表示一个字节byte
0000 1000 每一个表示一个字节
Ob是表示二进制 八进制转二进制 6 4 3 0
Oo是表示八进制 转110 100 011 000
Ox是表示十六进制 同上
& 相当于 and
| 相当于 or
~相当于 取反 第一位是一就是负数
^ 表示异或 (相同为0 ,不同为1)
首先要明确,取反是二进制操作
下面以5为例:
二进制原码:0000 0000 0000 0000 0000 0000 0000 0101
取反操作后:1111 1111 1111 1111 1111 1111 1111 1010
而在编程中,有符号整数都是用补码来表示,而补码=反码+1
1.先求反码:1000 0000 0000 0000 0000 0000 0000 0101
2.再求补码:1000 0000 0000 0000 0000 0000 0000 0110
最高位代表符号位 1 表示负数,0 表示正数 所以结果是-6
左移 m<<n 表示 m*2^n
右移 m>>n 表示 m/2^n
颜色# FF0000红 00FF00绿 0000FF蓝
白色:其代码是FFFFFF。其中红色=FF,绿色=FF,蓝色=FF。加起来就是FFFFFF 如果用10进制表示的话,红色=255,绿色=255,蓝色=255。#000000 表示黑色,#FFFF00表示黄色。
—————————————————————————————————————————————————————————————