• 进制简介


    我来用最基本的语言,为大家介绍一下,2进制,8进制,10进制,16进制之间的关系。用最短的时间,学到最多的东西!

    算机进制(了解)

    1、进制介绍

    计算机底层的数据运算和存储都是二进制数据。

    计算机语言就是二进制,计算机能直接识别二进制数据,其它数据都不能直接识别。

    计算机的数据转换,基本都是操作系统自动转换的。

    2、常用进制

    l  十进制:有10个基本数字,分别为0、1、2、3、4、5、6、7、8、9,运算规则”逢十进一”;

    l  八进制:有8个基本数字,分别为0、1、2、3、4、5、6、7,运算规则”逢八进一”

    l  十六进制:有16个基本数字,分别为0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,运算规则”逢十六进一”。

    l  二进制:有2个基本数字,分别为0、1,运算规则”逢二进一”。

    10进制

    0

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    8进制

    0

    1

    2

    3

    4

    5

    6

    7

    10

    11

    12

    13

    14

    15

    16

    17

    20

    16进制

    0

    1

    2

    3

    4

    5

    6

    7

    8

    9

    A

    B

    C

    D

    E

    F

    10

    2进制

    0

    1

    10

    11

    100

    101

    110

    111

    1000

    1001

    1010

    1011

    1100

    1101

    1110

    1111

    10000

    一个8进制数,可以用3个二进制数,来表示。如:(567)8 = (101 110 111)2

    一个16进制数,可以用4位二进制数,来表示。如:(A23)16 = (1010 0010 0011)2

    310进制转成2进制

    原理:除2取余法。第一次将整数除以2,取余数;然后,再将商除以2,再取余数;一直除下去,直到商为0,就除完了。最后读数时,从最后一位读起。

    举例:将(10)10 转成 二进制?

    第N次

    整数10

    余数

    第1次

    10/2

    5

    0

    第2次

    5/2

    2

    1

    第3次

    2/2

    1

    0

    第4次

    1/2

    0

    1

    结果是:(1010)2

    函数decbin()可以将十进制转成二进制。(用代码来实现)

    // 将十进制转化成二进制

      echo decbin(10);

    // 结束

    该代码片段得到的结果是:1010

    410进制转成8进制

    原理:除8取余法。第一次将整数除以8,取余数;然后,再将商除以8,再取余数;一直除下去,直接商为0,就除完了。最后读数时,从最后一位读起。

    举例:(678)10 转成八进制

    函数decoct()可以将十进制转成八进制。

    // 将十进制转成八进制

      echo decoct(678);

    // 结束

    该代码片段得到的结果是:1246

    510进制转成16进制

    原理:除16取余法。第一次将整数除以16,取余数;然后,再将商除以16,再取余数;一直除下去,直接商为0,就除完了。最后读数时,从最后一位读起。

    举例:(6789)10转成十六进制?

    函数dechex()可以将十进制转成十六进制

    // 将十进制转成十六进制

      echo dechex(6789);

    // 结束

    该代码片段得到的结果是:1a85

    62进制转成10进制

    原理:按权相加法。2进制每一位上的数,乘以所在的位权(指数常数),然后将各个乘积求和。

    举例:(1010)2转成十进制?

    (1010)2 = 1*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = 8 + 0 + 2 + 0 = (10)10

    函数bindec()将二进制转成十进制。

     // 二进制转成十进制

      echo bindec("1010");

    // 结束

    该代码片段得到的结果是:10

    78进制转成10进制

    原理:按权相加法。8进制每一位上的数,乘以所在的位权(指数常数),然后将各个乘积求和。

    举例:(1246)8转成十进制?

    (1246)8 = 1*8^3 + 2*8^2 + 4*8^1 + 6*8^0 = 512 +128 + 32 + 6 = (678)10

    函数octdec()将八进制转成十进制。

    // 八进制转成十进制

      echo octdec(1246);

    // 结束

    该代码片段得到的结果是:678

    816进制转成10进制

    原理:按权相加法。16进制每一位上的数,乘以所在的位权(指数常数),然后将各个乘积求和。

    函数hexdec()将十六进制转成十进制。

    // 十六进制转成十进制

      echo hexdec(1a85);

    // 结束

    该代码片段得到的结果是:6789

  • 相关阅读:
    php and web service with wsdl
    QT creator出现 no executable specified时解决办法
    ECShop 2.x 3.0代码执行漏洞分析
    关于QtCharts中的映射器与模型的使用
    QT 异步函数转为同步函数的方法
    Win7+Qt5.6.0(64位)+msvc2015编译器 环境配置
    SMTP用户枚举原理简介及相关工具
    Android系统广播机制存在漏洞,恶意软件可绕过安全机制跟踪用户
    Qt 维护工具MaintenanceTool.exe 使用
    漏洞预警 | ECShop全系列版本远程代码执行高危漏洞
  • 原文地址:https://www.cnblogs.com/wangzijian/p/6492988.html
Copyright © 2020-2023  润新知