19 Go 其他进制转十进制
作者:互联网
在Golang中
1 二进制:0,1,满2进1。在golang中不能直接使用二进制表示一个整数,这一点沿用的C语言的特性 2 八进制:0-7,满8进1。以数字0开头表示 3 十进制:0-9,满10进1。 4 十六进制:0-9及A-F,满16进1。以0x或0X开头表示,此处的A-F不区分大小写 案例一:将二进制数1011转成十进制的数1 // 案例一:将二进制数1011转成十进制的数 2 str := `将二进制数1011转成十进制的数: 3 将二进制的每一位数字m乘以2的(位数n-1)次方,然后将这些结果相加即得到其对应的十进制数,拆解如下: 4 1011 5 = 1*2的(4-1)次方 + 0*2的(3-1) + 1*2的(2-1)次方 + 1*2的(1-1)次方 6 = 1*8 + 0*4 + 1*2 + 1*1 7 = 8 + 0 + 2 + 1 8 = 11` 9 decimalNum := 11 10 fmt.Println(str) 11 fmt.Printf("二进制数 %b 转成十进制后为 %d \n", decimalNum, decimalNum) // 二进制数 1011 转成十进制后为 11案例二:将八进制数02456转成十进制的数
1 str = `将八进制数02456转成十进制的数: 2 将八进制的每一位数字m乘以8的(位数n-1)次方,然后将这些结果相加即得到其对应的十进制数,拆解如下: 3 02456 4 = 2*8的(4-1)次方 + 4*8的(3-1)次方 + 5*8的(2-1)次方 + 6*8(1-1)次方 5 = 2*512 + 4*64 + 5*8 + 6*1 6 = 1024 + 256 + 40 + 6 7 = 1326` 8 decimalNum = 1326 9 fmt.Println(str) 10 fmt.Printf("八进制数 %o 转成十进制后为 %d \n", decimalNum, decimalNum) // 八进制数 2456 转成十进制后为 1326
案例三:将十六进制数OxA45转成十进制的数
1 str = `将十六进制数OxA45转成十进制的数: 2 将十六进制的每一位数字m乘以16的(位数n-1)次方,然后将这些结果相加即得到其对应的十进制数,拆解如下: 3 OxA45 4 = 10*16的(3-1)次方 + 4*16的(2-1)次方 + 5*16的(1-1)次方 5 = 10*256 + 4*16 + 5*1 6 = 2560 + 64 + 5 7 = 2629` 8 decimalNum = 2629 9 fmt.Println(str) 10 fmt.Printf("十六进制数 %x 转成十进制后为 %d \n", decimalNum, decimalNum) // 十六进制数 a45 转成十进制后为 2629
标签:十六进制,二进制,19,decimalNum,次方,Go,八进制,十进制 来源: https://www.cnblogs.com/chengshan/p/16328784.html