まず、Golang 関数のバイナリおよび 16 進データの処理スキルをよりよく理解するために、バイナリと 16 進数の基本的な知識を明確にする必要があります。
バイナリ システムは、基数 2 システムとも呼ばれ、コンピュータ システム内で最も一般的に使用される数値表現方法です。 2 進数では、各ビットに取り得る値は 0 と 1 の 2 つだけです。たとえば、1011 は 2 進数です。コンピュータでは、プログラム、データ、画像など、あらゆる情報をバイナリ表現に変換できます。
16 進法は 16 進法で、長い数値を 2 進数で表現するのは面倒であるため、コンピューターでの 2 進数の表現を簡素化するために使用されます。 16進数では16種類の文字があるため、0~9、A~Fの16文字で数字を表すことができ、例えば「1A3」は16進数です。
Golang では、バイナリおよび 16 進数のデータ処理技術には主に次の側面が含まれます。
プログラムでは、多くの場合、バイナリ文字列を 10 進数に変換したり、10 進数をバイナリ文字列に変換したりする必要があります。現時点では、Golang の組み込み strconv パッケージを使用してこれを実現できます。
まず、文字列で表される 2 進数を 10 進数に変換する場合は、strconv パッケージの ParseInt() 関数を使用できます。例は次のとおりです:
binStr := "101101" dec, err := strconv.ParseInt(binStr, 2, 64) if err != nil { // 错误处理 } fmt.Println(dec) // 输出45
このうち、最初のパラメータは解析対象のバイナリ文字列、2 番目のパラメータは基数 (ここでは 2)、最後のパラメータは変換後の int64 型の桁数です。
同様に、10 進数をバイナリ文字列に変換したい場合は、strconv パッケージの FormatInt() 関数を使用できます。例は次のとおりです。最初のパラメータはフォーマットされた 10 進数、2 番目のパラメータは基数、ここでは 2 です。
2 進数と 16 進数の変換たとえば、16 進数をバイナリ文字列に変換したい場合は、strconv パッケージの FormatInt() 関数を使用できます。例は次のとおりです。 、最初のパラメータは解析する 16 進文字列で、2 番目のパラメータは基数で、ここでは 16 です。同様に、バイナリ文字列を 16 進文字列に変換する場合は、対応する基数パラメータを 2 と 16 に変更するだけです。
ビット演算dec := 45 binStr := strconv.FormatInt(int64(dec), 2) fmt.Println(binStr) // 输出"101101"
このうち、「|=」はビット単位のOR演算子の略称で、左右の数値をビット単位でOR演算し、その値を変数に代入する機能です。左。
概要
上記は、バイナリ データと 16 進データを処理するための一般的な Golang テクニックのいくつかであり、バイナリ データをより快適に処理するのに役立ちます。もちろん、これらは入門レベルのテクニックにすぎません。2 進数の演奏方法をさらに詳しく知りたい場合は、関連する資料を読んで練習することをお勧めします。
以上がGolang 関数のバイナリおよび 16 進データ処理のヒントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。