进制转换_十进制转二进制_二进制转十进制_十进制转十六进制_十进制转八进制

----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------

【进制转换】
23 十进制     0-9 逢10进1 
023 八进制 0-7 逢8进1 用0开头表示
0x4a2c 十六进制 0-9 A-F 逢16进1 用0x开头表示
二进制 逢2进1      10101010   二进制基本单位是位【字节是由8个开关(8个二进制)组成的】
二进制表示一个数据特别长,二进制的基本单位是位,由8个二进制位来组成一个数据单元,叫字节
在计算机或着内存当中存放的都是二进制
【编码表的由来】
010..001 ---A
011..001 ---B
键盘输入A,内存里就是010..001,就形成了对应关系
随着数据量的增多,就演变成了一张表[编码表](老美使用的编码表ASCII)
【十进制转二进制】
原理【对十进制数进行除2运算取余,结果为从下向上取余=从左到右】
6的二进制:
2 |_6  
 2 |_3  1
     1  
从下往上写 110

【二进制转十进制】

原理:110从右边第一位0开始,每一位乘以2的当前位(从第0位开始)次方,最后把结果相加,0对应的不用加都是0

二进制110转十进制:
1 1 0
4 2 1
4   + 2 = 6
【十进制转十六进制】
转成二进制算方便【把二进制4位变1位就成了16进制】
90
0101-1010
 5    10
 5    A

0x5A

【十进制转八进制】
把二进制3位变1位就成了8进制【421】
90
0101 1010 
001 011 010  逢8进1 
 1   3   2
 132

负数的二进制表现形式:整型32位 占四个字节

6 = 0000-0000 0000-0000 0000-0000 0000-0110

【反码】

正数的反码:加1取负:如~1=-2,~2=-3,~6=-7,~54=-55

如求6的二进制反码:取反减1,保留符号位取反
1、得到6的二进制形式: 0000-0000 0000-0000 0000-0000 0000-0110
2、逐位取反: 1111-1111 1111-1111 1111-1111 1111-1001
3、减1: 1111-1111 1111-1111 1111-1111 1111-1000
4、除符号位外逐位取反: 1000-0000 0000-0000 0000-0000 0000-0111
5、将其转化为十进制,既得6的反码为-7

负数的反码:取正减1:如~-2=1,~-3=2,~-7=6,~-55=54
如求-7的二进制反码:
1、得到-7的原码:            1000-0000 0000-0000 0000-0000 0000-0111
2、逐位取反:                    0111-1111 1111-1111 1111-1111 1111-1000
3、加1:                              0111-1111 1111-1111 1111-1111 1111-1001
4、除符号位外逐位取反:0000-0000 0000-0000 0000-0000 0000-0110
5、将其转化为十进制,既得-7的反码为6
负数的最高位都是1

你可能感兴趣的:(java基础)