PHP进制转换

MO_ON_e503 · · 558 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

进制

四种

二进制:0,1 ,满 2 进 1。

在 golang 中,不能直接使用二进制来表示一个整数,它沿用了 c 的特点。

十进制:0-9 ,满 10 进 1。

八进制:0-7 ,满 8 进 1. 以数字 0 开头表示。

十六进制:0-9 及 A-F,满 16 进 1. 以 0x 或 0X 开头表示。此处的 A-F 不区分大小写。

package main

import "fmt"

func main() {

    vari int = 5

    //二进制

    fmt.Printf("%b \n",i)


    varj int = 011 // 011=>8+1 = 9

    //八进制

    fmt.Println("j=",j)


    vark int = 0x11 //0x11 => 16+1 =17

    //十六进制 0x或者0X开头

    fmt.Println("k=",k)

}

//101

//j= 9

//k= 17

进制图示


1.其他进制转十进制

二进制转十进制

八进制转十进制

十六进制转十进制

二进制转十进制

规则:从最低位开始(右边的),将每个位上的数提取出来,乘以2的(位次-1)次方然后求和

案例:1011= $12^3+02^2+12^1+12^0$=8+2+1 = 11

八进制转十进制

规则:从最低位开始(右边的),将每个位上的数提取出来,乘以8的(位次-1)次方然后求和

案例:0123 = $18^2+28^1+3*8^0$=64+16+3 = 83

十六进制转十进制

规则:从最低位开始(右边的),将每个位上的数提取出来,乘以16的(位次-1)次方然后求和

案例:0x34A = $1016^0+416^1+3*16^2$= 10+64+768 = 842

2. 十进制转其他进制

十进制转二进制

十进制转八进制

十进制转十六进制

十进制转二进制

规则:将该数不断除以2,直至商为0为止,然后将每步得到的余数倒过来,就是对应的二进制

案例:56= 111000

十进制转八进制

规则:将该数不断除以8,直至商为0为止,然后将每步得到的余数倒过来,就是对应的八进制

案例:156=0234

十进制转十六进制

规则:将该数不断除以16,直至商为0为止,然后将每步得到的余数倒过来,就是对应的十六进制

案例:356= 0x164

3. 二进制转其他进制

二进制转八进制

二进制转十六进制

二进制转八进制

规则:将二进制数每三位一组(从低位开始组合--右边!),转成对应的八进制数即可

案例:11010101 = 11/010/101 = 324 = 0324

二进制转十六进制

规则:将二进制数每四位一组(从低位开始组合--右边!),转成对应的十六进制数即可

案例:11010101= 1101/0101 = 13/5 = D5 = 0xD5

4.八进制、十六进制转二进制

八进制转二进制

十六进制转二进制

八进制转二进制

规则:将八进制数每一位(从低位开始组合--右边!),转成对应的一个3位的二进制数即可

案例:0237= 10/011/111 = 10011111

十六进制转二进制

规则:将十六进制数每一位(从低位开始组合--右边!),转成对应的一个4位的二进制数即可

案例:0x237= 10/0011/0111 = 1000110111

有点乱,重新总结下

进制总结

1:种类:2、8、10、16

2:具体组成

2:0、1

8:0-7

10:0-9

16:0-9、A、B、C、D、E、F

3:其他进制转十进制

乘以被转进制的(位次-1)次方然后求和

4:十进制转其他进制

被转换数除以要转的进去,直至商为0为止,然后将每步得到的余数倒过来

5:二进制转其他进制

转八进制,从右边开始,每三位划分

转十六进制,从右边开始,每四位划分

6:八进制、十六进制转二进制

八进制转,从右边开始,每三位划分

十六进制转,从右边开始,每四位划分

本文参考地址:https://www.php.cn/php-weizijiaocheng-424854.html


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:MO_ON_e503

查看原文:PHP进制转换

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

558 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传