基数変換

互いに異なる変換法ベースの整数値

図1に示すように、10進数に非進数の変換

10進数に進、16進数、バイナリにより変換

図10は、各進数の指数関数的な電力です。だから、1998年と解釈することができます。

    1998.123 = 1×10 + 9×10 2 + 9×10 1 + 8×10 0  + 1×10 -1 + 2×10 -2  + 3×10 -3

         1000 100 10 1 0.1 0.01 0.001

このアイデアは進、16進数に適用され、二進数に、あなたは簡単に小数にこれらの番号を変換することができます。

  以下のように10進数に、例えば、ステップ123進数

      123.205 = 1×8 2 +2×8 1 +3×8 0  + 2×8 -1 + 0×8 -2 + 5×8 -3

        = 83.259765265

以下のように小数1FDの16進数を変換するステップは、になります。

      1FD 0.01 = 1×16 2 + 15×16 1 + 13×16 0 + 0×16 -1 + 1×16 -2

        = 509.00390625

101と進数は次のようにステップ数を10進数に変換されます。

      101.01 = 1×2 2  + 0×2 1  + 1×2 0 + 0×2 -1 + 1×2 -2

        = 5.25

2進数による非小数変換

基本原則:
1:整数部分と小数部分が変換される;
2:基数以外は整数部分を使用して(お互いに変換バイナリが2であるが、互いには8進に変換され、等)
、モジュロ方法商はゼロであり、変換の結果として残りまで、最上位ビットの最後の残り、最下位以外の残りの後、初めて。
3:ベースの小数部使用することによって(2バイナリに変換するたびに、各バンドが8で8に変換し、そしてようにされています)

方法丸め、または整数の積まで精度を制御します。

次の詳細:

例えば、二進数57.625に変換小数。

小数(整数部)によって変換された進数、16進数、バイナリに:

バイナリ番号は、次のルールがあります。

  でも、最後の桁が0です。

  奇数最後の桁が1です。

換言すれば、2の値を変換する番号の最後の数字で割った余りです。

2で割った57、28商、14を与えるために2で除算し、次いで1リスト28の残りの部分と、商は、これまでにゼロになるまでこの工程が繰り返される剰余商0です。すべての残りの逆配置は結果111001を得られます。

もちろん、10進数、8進数に変換し、ステップ16進数は同一です。限り除数は8または16、ライン上の残りの最終的な配置に変更されます。

例えば、小数点数57進数71は、進数39に変換します。

 

進、16進数、10進数の数(小数部分)で変換されたバイナリに:

例えば、二進数0.625 10進数:

図2は、整数部分が1で0.250の小数部が0.5の内部容積を得るために、2が乗算され、その後、整数部をとることが0であり、フラクショナル0.5とる、0.625、1.250プロットを乗じました。製品が到達又は制御精度の整数まで、この工程が繰り返されます。すべての整数0.101の並び順は、結果を取得します。

もちろん、10進数、8進数に変換し、ステップ16進数は同一です。限り8または16に乗数として、最後の整数の行に配置されています。

例えば、進数の小数0.625が0.5である16進数は0.10に変換されます。

 

要約すると、小数57.625は111,001.101に2進数に変換されます。


 

トピックス:

2進、8進数、16進数ベース変換

基本原則:
1:グループ3で8進バイナリ変換する;
2:バイナリHexは4ビットのセットに変換すること;
3:このようなパケットは、ビットの十分な数、左端のパッチ0の整数部分がない場合最もアップ0右側の小数部分;
4:オクタルバイナリターン、3ビットのバイナリ進に変換されます。
5:バイナリ六角ターン、進数4ビットのバイナリに変換されます。

以下の表は、3ビットのバイナリ数と相互に対応する進数(すなわち、3ビットのバイナリ数000から111は、進数0-7です)。

進数 オクタル
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7

 

次の表は、4ビットのバイナリ数と相互に対応する16進数(0000から1111即ち、4ビットの2進数は、16進数0-Fです)。

進数 進数 進数 進数

0000

0 1000年 8
0001 1 1001 9
0010 2 1010 A
0011 3 1011 B
0100 4 1100 C
0101 5 1101 D
0110 6 1110 E
0111 7 1111 F

 

 この機能を使用すると、すぐにバイナリ、8進数と16進数とバイナリの間で変換することができます。

例えば、二進数0111101010011100は、すべての3を見て必要と分離、オクタルであり、進数に変換されて変換します。

       00 0-111-101-010-011-100

       0 7 5 2 3 4

例えば、二進数0111101010011100進数、各4ビットを分離し、16進数に変更する必要が変換します。

      0111-1010-1001-1100

       7 A 9 C

また、バイナリに進数に変換するために、あなただけの(8進数をバイナリに変換する3)操作を有効にする必要があります。

バイナリに16進数を変換するには、あなただけの(16進数をバイナリに変換4)の操作を有効にする必要があります。

おすすめ

転載: www.cnblogs.com/zhaoyunt/p/11453876.html