Go语言进制与转换

Go语言进制与转换,第1张

概述常见进制有以下几种: 二进制:只有 0 和 1,Go语言中不能直接使用二进制表示整数 八进制:0-7,以数字 0 开头 十进制:0-9 十六进制:0-9 以及 A-F,以 0X 开头,A-F 以及 X 不区分大小写 常见进制有以下几种:
二进制:只有 0 和 1,Go语言中不能直接使用二进制表示整数;八进制:0-7,以数字 0 开头;十进制:0-9;十六进制:0-9 以及 A-F,以 0X 开头,A-F 以及 X 不区分大小写。任意进制转换为十进制二进制转十进制:从最低位开始,每个位上数乘以 2 的位数减 1 次方然后求和。

1011 = 1*20 + 1*21 + 0*22 + 1*23 = 11

八进制转十进制:从最低位开始,每个位上数乘以 8 的位数减 1 次方然后求和。

0123 = 3*80 + 2*81 + 1*82 + 0*83 = 83

其他进制转十进制同理。
十进制转其他进制十进制转二进制:不断除以 2,直到 0 为止,余数倒过来即可,如下图所示:


十进制转八进制:不断除以 8,直到 0 为止,余数倒过来即可。

十进制转十六进制:同上。

其他进制互转:
二进制转换八进制:将二进制数从低位开始,每三位一组,转换成八进制数即可;二进制转十六进制:将二进制数从低位开始,每四位一组,转换成十六进制数即可;八进制转换二进制:将八进制数每 1 位转换成一个 3 位的二进制数(首位 0 除外);十六进制转二进制:将十六进制每 1 位转换成对应的一个 4 位的二进制数即可。反码补码对于有符号数而言,二进制的最高为是符号位:0 表示正数,1 表示负数。

比如 1 在二进制中:

1  使用二进制表示为:0000  0001
-1 使用二进制表示为:1000  0001

正数的原码、反码、补码都一样,负数的反码 = 原码符号位不变,其他位取反,补码是反码 +1

                  1                      -1
原码  0000  0001        1000  0001
反码  0000  0001        1111  1110
补码  0000  0001        1111  1111

常见理解:
0 的反码补码都是 0计算机是以补码形式运算的 总结

以上是内存溢出为你收集整理的Go语言进制与转换全部内容,希望文章能够帮你解决Go语言进制与转换所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1271142.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-08
下一篇2022-06-08

发表评论

登录后才能评论

评论列表(0条)

    保存