2進法
4種類
- 2進法:0、1、1にはフル2が入ります。
golang では、バイナリを直接使用して整数を表すことはできません。これは c の特性に従います。
- 10 進数: 0 ~ 9、10 ~ 10。
- 8 進数: 0 ~ 7、完全な 8 桁の 1。数字の 0 から始まります。
- 16 進数: 0 ~ 9 および A ~ F、完全な 16 in 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
ログイン後にコピー
基数の図
##1. 他の基数を 10 進数に変換する
2 進数から 10 進数へ
- 8 進数から 10 進数へ
- 16 進数から 10 進数へ
- 2 進数から 10 進数へ
ルール: 最小の数字から開始 (オン)右)、各桁の数値を抽出し、2 の (桁順 - 1) 乗を掛けて合計します。
Case: 1011= $1
2^3 0
2^ 2 12^1 12^0$=8 2 1 = 118 進数から 10 進数への変換
ルール: 最下位の桁 (右側の桁から) )、各桁の数値を抽出し、8 の (桁順 -1) 乗を掛けて合計します。
Case: 0123 = $1
8^2 2
8^1 3 *8^ 0$=64 16 3 = 8316 進数から 10 進数への変換
ルール: 最下位の桁 (右側) から各桁の数値を抽出し、乗算します。 (位-1) 乗の 16 を合計し、
Case: 0x34A = $10
16^0 4
16^1 3*16^2$= 10 64 768 = 8422. 10 進数を他の基数に変換する
10 進数を 2 進数に変換する
- 10 進数を 8 進数に変換する
- 10 進数を 16 進数に変換する
- 10 進数から 2 進数への変換
ルール: 商が 0 になるまで数値を 2 で割り続け、各ステップで得られた剰余を逆にします。これが対応する 2 進数です。
ケース: 56= 111000
10 進数を 8 進数に変換します
##ルール: 商が 0 になるまで数値を 8 で割り続け、各ステップで得られた余りを逆にします。これが対応する 8 進数です
ケース: 156=0234
10 進数を 16 進数に変換する
ルール: 商が 0 になるまで数値を 16 で割り続け、各ステップで得られた余りを逆にして、対応する 16 進数を取得します。
ケース: 356 = 0x164
3. 2 進数から他のシステムへ
#2 進数から 8 進数へ
2 進数から 16 進数へ
- 2 進数から 8 進数へ変換
- ルール: 各 2 進数を 3 桁のグループに変換し (下位ビットから結合 -
right
!)、それを対応する 8 進数に変換します
ケース: 11010101 = 11 /010/101 = 324 = 0324
2 進数から 16 進数への変換
ルール: 2 進数は 4 桁のグループにグループ化されます (下位ビットから開始 -
Right
!) 、対応する 16 進数に変換します
Case: 11010101= 1101/0101 = 13/5 = D5 = 0xD5
4. 8 進数、10 16 進数を 2 進数に変換します
8 進数を 2 進数に変換します。
16 進数を 2 進数に変換します。
- 8 進数を 2 進数に変換します。
- ルール: 16 進数を 2 進数に変換します。8 進数の各桁 (先頭から順に結合)下位ビット -
右側の
! )、対応する 3 桁の 2 進数に変換します。
ケース: 0237= 10/011/111 = 10011111
16 進数を 2 進数に変換
ルール: 16 進数の各桁を 10 に変換します。数値 (下位ビットから結合 --
#右側 #!) は、対応する 4 桁の 2 進数に変換できます。
ケース: 0x237= 10/0011/0111 = 1000110111
少しややこしいのでもう一度まとめます
16進数まとめ
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: 他の基数を 10 進数に変換します。
倍の変換対象の基数 (ビット 1) を合計し、
4: 10 進数を他の基数に変換します
変換された数値を、商が 0 になるまで変換対象の数値で割った後、それぞれで得られた余りを逆にします。このステップ
#5: 2 進数を他の基数に変換します
右から 3 桁ごとに除算して 8 進数に変換します
Convert 16 進数に、右から開始し、4 桁ごとに 6 に分割します。 8 進数と 16 進数を 2 進数に変換します。
8 進数を右から開始し、3 桁ごとに
に分割します。
16 進数の変換。右から 4 桁ごとに
に分割されます。PHP 関連の技術記事の詳細については、PHP チュートリアル
列にアクセスして学習してください。
以上がPHPでの塩基変換の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。