计算机基础——二进制、八进制、十六进制以及相互转换

目录

一、二进制

1.1 二进制转换为十进制

1.2 十进制转换为二进制

1.3 原码、反码、补码

二、八进制

2.1  八进制转十进制

2.2  十进制转八进制

三、十六进制

3.1 十六进制转十进制

3.2 十进制转十六进制

四、二进制、八进制、十六进制相互转换

4.1 二进制转八进制

4.2 二进制转十六进制

4.3 八进制转换为二进制

4.4 十六进制转换为二进制


一、二进制

二进制数据用0和1两个数码来表示数。   在java中以0b或0B开头

int num1= 0b110;

基数为2,进位规则为"逢二进一",借位规则是"借一当二"。

当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储。

计算机中的二进制则是一个非常微小的开关,用"开"来表示1,“关”来表示0

1.1 二进制转换为十进制

10100 这是一个二进制的数字

1.2 十进制转换为二进制

将 10100 转换为十进制

1.3 原码、反码、补码

最高位为0,即整数,最高位为1,即负数

  • java整数常量默认是int类型当用二进制定义整数时,其32位是符号位
  • 当为long类型时,二进制默认占64位,第64位是符号位

二进制的整数有如下三种形式:

  •  原码: 直接将一个数值转换成二进制数,最高位是符号位
  •  负数的反码: 是对原码安位取反,只是最高位(符号位)确定为1
  •  负数的补码:其反码+1

计算机以二进制补码的形式保存所有的整数。

      整数的原码、反码、补码都相同,负数的补码是其反码+1

        由-14的补码怎么得到-14的原码?   将上面的箭头倒过来看就行了,先-1,然后除符号位外哥哥位取反

   下面有一个例子:知道补码推原码,以后如果告诉我们一个二进制数,我们就认为是补码

二、八进制

 0-7 ,满8进1,java中以数字0开头表示

 int num3=0127;

2.1  八进制转十进制

2.2  十进制转八进制

三、十六进制

   以0x或0X开头表示

  int num4 = 0x110A;

 

  •    十六进制是计算机数据的一种表示方法。同我们日常生活中的表示法不一样。
  •    它由 0-9,A-F组成,字母不区分大小写。  之前在ps软件中见到的颜色如#ffffff 就是十六进制
  •    与10进制的对应关系是:

               0-9 对应 0-9 , A-F对应10-15 ; N进制的数可以用0~(N-1)的数表示,超过9的用字母字母A-F

   1-1     2-2    3-3    4-4    5-5    6-6    7-7    8-8    9-9    10-A    11-B    12-C    13-D             14-E    15-F    16-10   17 - 11

3.1 十六进制转十进制

将110A转换成十进制 

3.2 十进制转十六进制

四、二进制、八进制、十六进制相互转换

4.1 二进制转八进制

4.2 二进制转十六进制

4.3 八进制转换为二进制

4.4 十六进制转换为二进制

猜你喜欢

转载自blog.csdn.net/weixin_51351637/article/details/129996423