• 2.1数字int


    声明:师从老男孩太白金星,不对代码做任何保证,如有问题请自携兵刃直奔沙河

    nt,就是咱们常见的数据类型,主要是用于葛总运算,加减乘数等这里就不给你举例说明了。

        首先要给大家讲下是十进制与二进制之间的转换。

            2.1.1 十进制二进制转换

        十进制整数转换为二进制整数采用"除2取余,逆序排列"法。具体做法是:用2整除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为小于1时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。

      十进制小数转换成二进制小数采用"乘2取整,顺序排列"法。具体做法是:用2乘十进制小数,可以得到积,将积的整数部分取出,再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出,如此进行,直到积中的小数部分为零,此时0或1为二进制的最后一位。或者达到所要求的精度为止。

      二进制转化成十进制: 

        要从右到左用二进制的每个数去乘以2的相应次方,小数点后则是从左往右

        例如:二进制数1101.01转化成十进制

        1101.01(2)=1*20+0*21+1*22+1*23 +0*2-1+1*2-2=1+0+4+8+0+0.25=13.25(10)

        所以总结起来通用公式为:

        abcd.efg(2)=d*20+c*21+b*22+a*23+e*2-1+f*2-2+g*2-3(10)

    或者是:

        把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。这种做法称为"按权相加"法。

        此时,1101=8+4+0+1=13

        再比如:二进制数100011转成十进制数可以看作这样:

        数字中共有三个1 即第一位一个,第五位一个,第六位一个,然后对应十进制数即2的0次方+2的1次方+2的5次方, 即

        100011=32+0+0+0+2+1=35

      2.2.2 int操作方法

        因为数字主要是用于计算,所以针对于数字可以使用的方法除了那些运算之外,没有什么经常会用的方法,python给咱们提供了一种方法:bit_length()就是帮助你快速的计算整数在内存中占用的二进制码的长度.

    num = 10
    print(num.bit_length())  # 当十进制用二进制表示时,最少使用的位数
    # 运行结果: 4
    声明:师从老男孩太白金星,不对代码做任何保证,如有问题请自携兵刃直奔沙河
  • 相关阅读:
    管理Linux软件——aptitude
    管理Linux软件——apt
    /etc/apt/sources.list 和 /etc/apt/sources.list.d
    JSR303参数校验正则表达式的莫名其妙的错误
    HighCharts 动态设置 series
    template might not exist or might not be accessible by any of the configured Template Resolvers
    springboot 热部署替代方式
    如果访问国外站点慢的话,可以多切换一下运营商,比如开热点。
    当 springboot 部署war包,tomcat报一堆无法解决的问题时
    thymeleaf在开发环境正常,但用jar运行时报错 Error resolving template template might not exist or might not be accessible
  • 原文地址:https://www.cnblogs.com/yanglongyue/p/10640512.html
Copyright © 2020-2023  润新知