一、表示
在计算机中,负数以原码的补码形式表示。
补码:正数的补码与原码相同,负数的补码为该数的原码除符号位各位取反,在加1。
如:9 原码:00000000 00000000 00000000 00001001
补码:00000000 00000000 00000000 00001001
-9 原码:10000000 00000000 00000000 00001001
补码:11111111 11111111 11111111 11110111
二、运用
如C++中的lowbit()
lowbit(x)表示 x 的二进制表示中最低位的 111 所在的位置对应的值
lowbit(5) = 5&(-5) = 1
lowbit(6) = 6&(-6) = 2