进制转换与位运算

版权声明:不自见故明;不自是故彰;不自伐故有功;不自矜故长; https://blog.csdn.net/LightUpHeaven/article/details/82227691

1.其他进制转十进制

位上的值*位数-1 相加  101=1*1 + 0*2 + 1*4

2.十进制转其他进制

将该数不断除以该进制,直到商为0,将每步得到的余数倒过来就是对应的进制

356 / 2 = 0X164

3.二进制转其他进制

将二进制数每三X位一组转成对应的进制数值

11010101 = 0325

4.其他进制转为二进制

将该进制数转为对应的N位二进制数

5.原码,反码,补码

对于有符号而言:

z。二进制的最高位为符号位:0表示正数,1表示负数

a。正数的原码,    反码,         补码都一样\

b。负数的反码=它的原码符号位不变,其他位取反

c。负数的补码=它的反码+1

d。0的反码,补码都是0

e。在计算机运算的时候,都是以补码的方式来运算的。同样计算完要看实际的值,还要反过来转换到原码。

1  [0000 0001]  [0000 0001]  [0000 0001]

-1 [1000 0001]  [1111 1110]   [1111 1111]

6.位运算符

& 都为1 才为1

| 有一个为0就为0

^相异为1,相同为0

7.右移运算符>>

低位溢出,符号位不变,并用符号位补溢出的高位

8.左移运算符<<

符号位不变,低位补0

猜你喜欢

转载自blog.csdn.net/LightUpHeaven/article/details/82227691