Java进制之间的转换

进制:
我们生活中使用的是十进制
计算机中使用的是二进制

在Java中的进制的分类?
十进制:逢十进一
二进制:逢二进一
八进制:逢八进一
十六进制:逢十六进一
10 -> A
11 -> B
12 -> C
13 -> D
14 -> E
15 -> F
在计算机中,数据最终都会变成二进制,也就是由多个1或者多个0来组成的,而每一个1或者0都称为一个bit,或者位
注意:在计算机中进行储存和运算的最小单位是字节(byte)
1byte = 8bit
1KB = 1024byte
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB

进制的转换?
8421码 快速转换法

二进制                     ----->               十进制
01101100                                          108

                                                          0    1    1    0    1    1    0   0

                                                        2^7      2^6     2^5      2^4      2^3     2^2     2^1     2^0

                                                       128    (64)(32)   16     (8) (4)     2          1

                  如果是 1 的话 ,下面对应的数相加 4+ 8 + 32 + 64 = 108

 

二进制                   ----->                八进制 *因为是2的3次幂是8.所以三个三个为一体
01101100                                        154

                                                      ( 0   1 )    ( 1    0    1)    ( 1   0    0)

                  2^1     2^0              2^2      2^1     2^0              2^2    2^1      2^0

                2      (1)           (4)      2     (1)         (4)    2          1

                每一组下面的1相加,然后整体合并如:
                   1                        4 + 1 = 5          4
                以上合并就是8进制的结果 ------> 154

 

二进制                  ----->                 十六进制 *因为是2的4次幂是16.所以四个四个为一体
01101100                                         6c = 0x6C

               ( 0    1   1    0)   ( 1   1   0   0)

                                                         2^3   2^2     2^1     2^0            2^3     2^2    2^1      2^0

                8      (4)  (2)     1             (8) (4)    2          1

                每一组下面的1相加,然后整体合并如:
                    6            12 = C
                    以上合并就是十六进制的结果 ------> 6c

 

十进制                  ----->                  二进制
111                                                  01101111

0    1    1    0    1    1    0   0

2^7    2^6      2^5     2^4     2^3      2^2      2^1    2^0

128    64        32     16         8         4          2        1

计算:

111 - 128 不可以减
111 - 64 = 47 可以
47 - 32 = 15 可以
15 - 16 不可以
15 - 8 = 7 可以
7 - 4 = 3 可以
3 - 2 = 1 可以
1 - 1 = 0 可以

减法成功的变1,不成功为 0 ,所以结果为 01101111

 

其实也不难,就是根据公式算下,了解这个知识点就可以,遇到问题 直接计算器就好。

 

 

 

 

posted on 2024-03-05 23:12  Bytezero!  阅读(14)  评论(0编辑  收藏  举报