【一 Go 到底】第十天 --- 位运算 and 移位运算符
一、原码,反码,补码
有符号的二进制数
进制的最高位是符号位: 用 0 表示正数,用 1 表示负数
复制代码
正数的原码,反码,补码都一样
负数的反码 = 原码符号位不变,其他位取反
负数的补码 = 负数的反码 + 1| | -1|| --- | --- || 原码 | 1000 0001 || 反码 | 1111 1110 || 补码 | 1111 1111 |
0 的反码,补码都为 0
计算机运行时,都是用补码进行运算
二、位运算
案例演示
这里采用 2 和 3 进行运算
正数
2
补码为 0000 0010
3
补码为 0000 0011
负数
-2
补码 1111 1110
-3
补码 1111 1101
复制代码
三、移位运算
案例演示这里采用 1 作为演示
1
用二进制表示为 0000 0001
复制代码
版权声明: 本文为 InfoQ 作者【指剑】的原创文章。
原文链接:【http://xie.infoq.cn/article/fb65884d4cb920c3a6bd13a81】。文章转载请联系作者。
评论