首页 > 学院 > 开发设计 > 正文

编程中的进制转换

2019-11-17 02:50:44
字体:
来源:转载
供稿:网友

编程中的进制转换

(二进制,八进制,十进制,十六进制)

  二进制是由0和1组成

【十进制转二进制】 如23写成二进制为10111

    23/2=11余1

    11/2=51

    5/2=21

    2/2=10

  所以为23写成二进制为10111

【二进制转十进制公式】

    a*2^0+b*2^1+……+m*2^(n-1)=

    例如1011写成十进制为1*2^0+1*2^1+0*2^2+1*2^3=11

重点:1.写二进制转十进制时要从右往左写

2.指数从0开始

【十进制转八进制】

    例如48的八进制

      48/8=6余0

      所以48的八进制为60

【八进制转十进制】 (同二进制转十进制)

      a*8^0+b*8^1+……+m*8^(n-1)=

     60的十进制为0*8^0+6*8^1=48

十六进制数为:0,1,2,3,4,5,6,7,8,9,A(10),B(11),C(12),D(13),E(14),F(15)

【十进制转十六进制】:如45十六进制为2D

【十六进制转十进制】:a*16^0+b*16^1+……+m*16^(n-1)=

【二进制转八进制】(二进制从左往右,每三位一组,每组从右开始第一位为1,第二位为2,第二位4,分别于二进制数相乘,每组求和,最后得数左右互换位置。){为什么三个一组,因为2的三次方为8。(1,2,4)}

    如10110101

      10110101

  0*1+1*2=20*1+1*2+1*4=61*1+0*2+1*4=5

      所以10110101的八进制为562

【八进制转二进制】(每个数分别除以2,每组得数不够三位的从左面添0补充,顺序从左到右顺着写即可)

      如72的二进制为111010

【二进制转十六进制】

      同上,从左往右每四个数为一组,相乘的数为(1,2,4,8)

【十六进制转二进制 】

      同上,但要注意(ABCDEF),每一个字母为一组不能拆开除以2,最后结果从左往右顺着写。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表