zoukankan      html  css  js  c++  java
  • 我想知道的进制

    一、二进制,八进制,十进制,十六进制

    1.二进制,比如 1111111;

      采用 0,1 两个数码,逢二进一。

    2. 八进制,以0开头。比如05,0237;

      采用0,1,2,3,4,5,6,7八个数码,逢八进一,并且开头一定要以数字"0"开头。 

    3. 十进制。比如20,457;

      采用0,1,2,3,4,5,6,7,8,9十个数码,逢十进一。

    4. 十六进制,以0x开头。比如0x7a;

      采用0,1,2,3,4,5,6,7,8,9,A,B,C,D,F十六个数码,逢十六进一,并且开头一定要以“0x”开头


    二、常用二进制 十进制 八进制 十六进制

    0001  1  01     0x1     |    1001   9    011  0x9

    0010  2  02     0x2     |    1010   10  012  0xA

    0011  3  03     0x3     |    1011   11  013  0xB

    0100  4  04     0x4     |    1100   12  014  0xC

    0101  5  05     0x5     |    1101   13  015  0xD

    0110  6  06     0x6     |    1110   14  016  0xE

    0111  7  07     0x7     |    1111   15  017  0xF

    1000  8  010   0x8     |


    三、进制转换 

    1.二转十      例子:101010.01    

    101010 从个位开始往左分别代表 20 21 22 23 24 25 26 27 28 29 210 即  1 2 4 8 16 32 64 128 256 512 1024

    32 16 8 4 2 1   1*32+16*0+1*8+4*0+2*1+1*0=32+8+2=42

    .01 从十分位开始往后分别代表 2-1 2-2 2-3 2-4 即 1/2  1/4 1/8 1/16

    0.5 0.25   0*0.5+1*0.25=0.25

    101010.01=42+0.25=42.25

    2.二转八      也可以先二转十,十转八 例子:101010.01 

       由于23=8,所以 个位往左开始 分成3位一组算,不足3位的左添0,小数点后面从十分位往右也是三位一组算,但不足3位的右添0

    101 010 .010         就和"二转十"一样, 每三位各代表  百4 十2 个1

    101 421 =4*1+2*0+1*1=5

    010 421=4*0+2*1+1*0=2

    .010 =.2

    101010.01=052.2

    3.二转十六   也可以先二转十,十转十六  例子:101010.01 

     由于24=4,所以 个位往左开始 分成4位一组算,不足4位的左添0,小数点后面从十分位往右也是4位一组算,但不足4位的右添0

    0010 1010 .0100         就和"二转十"一样, 每四位各代表 千8  百4 十2 个1

    0010 =2

    1010=10=A

    .0100=.4

    101010.01=0x2A.4


     

    3.十转  二 八 十六   例子: 42.25    

    十转二  除二取余 :整数位/2 算余数 ,乘二取整:小数*2 看个位,无小数就停止

    42/2=21 余 0         0.25*2=0.5  看个位 0    

    21/2=10 余 1         0.5*2=1    看个位 1

    10/2=5 余 0

    5/2=2 余 1

    2/2=1 余 0

    1/2 = 0 余 1

    (42)10=(101010)2  (0.25)10=(.01)2

    (42.25)10=(101010.01)2

      十转八   除八取余:整数位/8 算余数 ,乘八取整: 小数*8 看个位,无小数就停止

          42/8=5 余2     0.25*8=2 个位2

          5/8=0   余5

          (42)10=(52)8    (0.25)10=(.2)8

          (42.25)10=(52.2)8

    十转十六   除十六取余:整数位/16 算余数 ,乘十六取整: 小数*16 看个位,无小数就停止

          42/16=2 余10     0.25*16=4 个位4

          2/16=0   余2

          (42)10=(2A)16    (0.25)10=(.4)16

          (42.25)10=(2A.4)16


     

    八转二   例子:052.2

    一位转三位 421

    5 =101

    2 =010

    .2=010

    052.2=(101010.01)2 

    八转十   例子:052.2

    从个位往左 80 81 82 83 84  即 1 8 64 512  4096

    5*8+1*2=42

    从十分位往右   8-1 8-2 8-3 8-4  即  1/8 1/64 1/512  1/4096

    2*0.125=0.25

    052.2=42+0.25=42.25


     

    十六转二 例子:0x2A.4

    一位转四位

    2=0010

    A=10=1010

    .4=0100

    0x2A.4=(101010.01)2

    十六转十 例子:0x2A.4

    从个位往左 160 161 162   即 1 16 256 

    2*16+A*1=32+10=42

    从十分位往右 16-1 16-2 即 1/16    1/256

    4*1/16=0.25

    0x2A.4=42+0.25=42.5 

  • 相关阅读:
    WPF 实现窗体拖动
    CAP带你轻松玩转ASP.NETCore消息队列
    ASP.NET Core开发-获取所有注入(DI)服务
    k8s实战为aspnetcore.webapi微服务注入配置信息
    详解docker实战之搭建私有镜像仓库
    自己动手破解Z.EntityFramework.Extensions 4.0.11.0的方法
    可以获取随机图片的API收集 必应 等
    一键发布部署vs插件[AntDeploy],让net开发者更幸福
    比ngx_http_substitutions_filter_module 更强大的替换模块sregex的replace-filter-nginx-module
    编译nginx的源码安装subs_filter模块
  • 原文地址:https://www.cnblogs.com/miaololi/p/6593013.html
Copyright © 2011-2022 走看看