zoukankan      html  css  js  c++  java
  • Java学习03-进制学习

    计算机中是以二进制来进行数据传递的,二进制分为二进制、八进制、十进制、十六进制

    而他们之间如何进行转换呢,二进制作为元,其他进制都是经二进制进行换算的,所以无论什么进制之间的转换都是先转换为二进制,再由二进制转换为目标进制。

    一、进制介绍

    二进制:0-1,满2进1
    
    八进制:0-7,满7进1,由3个二进制位为1个八进制位,例:二进制10101011  八进制010-101-011
    
    十进制:0-9,满10进1
    
    十六进制:0-9  A-F,满16进1,由4个二进制位为1个十六进制位,例:二进制10101011  八进制0000-1010-1011

    二、进制转换

    进制间的转换都是基于二进制进行的,故下面只记录二进制与其他进制间的转换。

    1、十进制与二进制之间的转换

    十进制6 -> 二进制110
    
    计算过程:
    
    十进制整数转换为二进制整数采用"除2取余,逆序排列"法。
    
    具体做法是:用2整除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为0时为止,
    
    然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
    
    6/2 =3---0
    
    3/2 =1---0
    
    1/2 =0---1
    
    余数逆排序的110
    
    
    
    二进制110 -> 十进制6
    
    计算过程:
    
    110 = 1*2(2)+1*2(1)+1*2(0) =4+2+0=6 

    2、八进制与二进制间的转换

    二进制1100101 -> 八进制145

    计算过程:

    将二进制三位一组进行分组,根据二进制转十进制的方法,算出每组的值

    1100101 -> 001-100-101

    -> 0*2(2)+0*2(1)+1*2(0)   1*2(2)+0*2(1)+0*2(0)  1*2(2)+0*2(1)+1*2(0)

    -> 1     4    5

    即八进制145

    待更新

  • 相关阅读:
    angular读书笔记(三)
    angular读书笔记(二)
    angularjs读书笔记(一)
    angular和web前端的一些细节
    angular的service
    angular学习之directive
    最近学的twig
    最近学的grunt
    今天学的angularJS
    android即时通讯开发笔记(一)绪论~实现用户登录,自动登录,注销功能
  • 原文地址:https://www.cnblogs.com/alummox/p/8613409.html
Copyright © 2011-2022 走看看