java二进制

好久没有使用过二进制进行数据传输,基本的知识已经忘了,先来回顾一下数学知识(参考:https://www.cnblogs.com/wkcn/p/7803147.html):

  1. 进制的表现形式  
      二进制: 由0和1两个数字组成。
      八进制: 由0-7数字组成,为了区分与其他进制的数字区别,开头都是以0开始。
      十进制: 都是以0-9这九个数字组成,不能以0开头。
      十六进制:由0-9和A-F组成。为了区分于其他数字的区别,开头都是以0x或0X开始。
  2. 进制之间的转换
      2.1 十进制转二进制:除以2,反向取余数,直到商为0。(Integer.toBinaryString(9))
    java二进制
      2.2 二进制转十进制:二进制的每一个数乘以2的n次方,n表示当前数所在的位置从0开始,每次递增1。然后得出来的每个数相加。
    java二进制
      2.3 十进制转8进制:除以8,反向取余数,直到商为0。
    java二进制
      2.4 八进制转十进制:每一个数乘以8的n次方,n表示当前数所在的位置从0开始,每次递增1。然后得出来的每个数相加。
    java二进制
      2.5 十进制转十六进制:除以16,反向取余数,直到商为0。十六进制的特点:由0~9 a(10) b(11) c(12) d(13) e(14) f(15) 表示。

十六进制转十进制:每一个数乘以16的n次方,n表示当前数所在的位置从0开始,每次递增1。然后得出来的每个数相加。

2.6 计算机对有符号数(包括浮点数)的表示有三种方法:原码、反码和补码, 补码=反码+1。在 二进制里,是用 0 和 1 来表示正负的,最高位为符号位,最高位为 1 代表负数,最高位为 0 代表正数。
  以负数-5为例:
  >1.先将-5的绝对值转换成二进制,即为0000 0101;
  >2.然后求该二进制的反码,即为 1111 1010;
  >3.最后将反码加1,即为:1111 1011
由于在计算机中 只有一个字节才能存放ASCII编码,而 八位(8bit)是一个字节,所以此处-5绝对值的二进制本来是101,为了使其在计算机中有意义给它补5个0,即0000 0101;

在java中表示形式为
二进制 :二进制数前加:0b 例如:0b111 对应十进制的:7
八进制 :八进制数是以0开头的, 例如:031 对应十进制的:25
十六进制:十六进制数前加:0x 例如:0x1B 对应十进制的:27

相关文章:

  • 2021-12-11
  • 2022-01-15
  • 2022-12-23
  • 2021-12-09
  • 2022-01-07
  • 2021-12-27
猜你喜欢
  • 2022-12-23
  • 2022-02-18
  • 2021-09-15
  • 2022-12-23
  • 2022-01-09
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案