首页 > 代码库 > 进制知识点概要 补码原码反码

进制知识点概要 补码原码反码

正数的补码反码原码一样

负数的反码是除去符号位,其它位取反

负数的补码是反码+1


补码求补码得到原码

补码求反码再求补码得到原码


无论正数负数,在内存中都是以补码的形式存储的



1.进制

进制也就是进位制,是人们规定的一种进位方法.对于任何一种进制—x进制,就表示某一位置上的数运算时就是逢x进一位.

十进制是逢十进一,十六进制是逢十六进一,二进制就是逢二进一

计算机中采用二进制.十六进制只是计算机常用的一种编码方式


二进制的四位相当于十六进制的一位

二进制的三位相当于八进制的一位

N进制转换为十进制

秘诀:当前位上的数乘以基数(N)的位数减一次方

0x17十六进制

017八进制

17十进制

0b17二进制

比特=bit,是二进制位的意思

B=Byte是字节的意思,一字节=8bit

1M说的是1Mbite

下载速度也就是1024/8=128kb/s

一兆比特=1M bit,1B=8bit,所以1兆比特=1/8  MB


2.位运算

参与运算的量按二进制进行运算

按位与&,  按位或|,  按位非~,  按位异或^(脱字符),  左移<<,  右移>>  

<<左移一位相当于乘2,  >>右移一位相当于除以2

一个字节(Byte)表示8个二进制位(bit)

一个字节所能表示的数的范围是0~255


按位与作用之一就是对特定位数据进行清0

异或:整形变量相异或(对应为相同则为0不同则为1)


用异或可以交换两个变量的值

移位中的左移末尾补0


逻辑移位:不考虑正负号   

算术移位:考虑正负号。


右移运算对于负数,分为逻辑右移(高位补0),算数右移(高位补1)

1. int a=5;// 4个字节,32个二进制位

原码/补码:

0000 0000 0000 0000 0000 0000 0000 0101


进制知识点概要 补码原码反码