PHP中的进制转换

作者 : shijian 本文共1532个字,预计阅读时间需要4分钟 发布时间: 2019-07-3 共119人阅读

进制

四种

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

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

  1. 十进制:0-9 ,满 10 进 1。
  2. 八进制:0-7 ,满 8 进 1. 以数字 0 开头表示。
  3. 十六进制:0-9 及 A-F,满 16 进 1. 以 0x 或 0X 开头表示。此处的 A-F 不区分大小写。
package main
import "fmt"
func main() {
    var i int = 5
    //二进制
    fmt.Printf("%b /n",i)

    var j int = 011 // 011=>8+1 = 9
    //八进制
    fmt.Println("j=",j)

    var k int = 0x11 //0x11 => 16+1 =17
    //十六进制 0x或者0X开头
    fmt.Println("k=",k)
}
//101
//j= 9
//k= 17

进制图示

Snipaste_2019-07-03_15-54-49.png

Snipaste_2019-07-03_15-55-06.png

1. 其他进制转十进制

  1. 二进制转十进制
  2. 八进制转十进制
  3. 十六进制转十进制

二进制转十进制

规则:从最低位开始(右边的),将每个位上的数提取出来,乘以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. 十进制转其他进制

  1. 十进制转二进制
  2. 十进制转八进制
  3. 十进制转十六进制

十进制转二进制

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

十进制转八进制

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

十进制转十六进制

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

3. 二进制转其他进制

  1. 二进制转八进制
  2. 二进制转十六进制

二进制转八进制

规则:将二进制数每三位一组(从低位开始组合–右边!),转成对应的八进制数即可
案例:11010101 = 11/010/101 = 324 = 0324

二进制转十六进制

规则:将二进制数每四位一组(从低位开始组合–右边!),转成对应的十六进制数即可
案例:11010101= 1101/0101 = 13/5 = D5 = 0xD5

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

  1. 八进制转二进制
  2. 十六进制转二进制

八进制转二进制

规则:将八进制数每一位(从低位开始组合–右边!),转成对应的一个3位的二进制数即可
案例:0237= 10/011/111 = 10011111

十六进制转二进制

规则:将十六进制数每一位(从低位开始组合–右边!),转成对应的一个4位的二进制数即可
案例:0x237= 10/0011/0111 = 1000110111

有点乱,重新总结下


进制总结

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

2:具体组成

  1. 2:0、1
  2. 8:0-7
  3. 10:0-9
  4. 16:0-9、A、B、C、D、E、F

3:其他进制转十进制

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

4:十进制转其他进制

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

5:二进制转其他进制

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

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

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

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

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

以上就是PHP中的进制转换的详细内容,更多请关注吆喝资源网其它相关文章!

本文转自PHP中文网,吆喝网(http://yaoohe.com)搜集整理,如有疑问请联系本站客服!

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"yaoohe.com",如遇到无法解压的请联系管理员!
吆喝资源网 » PHP中的进制转换

常见问题FAQ

提示下载完但解压或打开不了?
最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或 联络我们。

发表评论