16 進数の D。 ソリューションを使用して数値を別の記数法に変換する

22.08.2019 ルーターとモデム

サービスの目的。 このサービスは、オンラインで番号をある番号体系から別の番号体系に変換するように設計されています。 これを行うには、数値の変換元となる単位系を選択します。 整数とカンマを含む数値の両方を入力できます。

番号

10 2 8 16 記数法からの変換。 2 10 8 16 記数法に変換する.
小数の場合は、小数点以下 2 3 4 5 6 7 8 桁を使用します。

34 などの整数と 637.333 などの小数の両方を入力できます。 小数の場合は小数点以下の翻訳精度を示します。

この計算機では以下も使用されます。

数字を表す方法

バイナリ (2 進) 数値 - 各桁は 1 ビット (0 または 1) の値を意味し、最上位ビットは常に左側に書かれ、文字「b」が数値の後に配置されます。 認識しやすいように、ノートブックをスペースで区切ることができます。 たとえば、1010 0101b。
16進数 (16 進数) - 各 4 進数は 1 つの記号 0...9、A、B、...、F で表されます。この表現はさまざまな方法で指定できます。ここでは、最後の 16 進数の後に記号「h」のみが使用されます。桁。 たとえば、A5h。 プログラムテキストでは、プログラミング言語の構文に応じて、同じ番号を 0xA5 または 0A5h として指定できます。 数字と記号名を区別するために、文字で表される 16 進数の最上位桁の左側に先頭のゼロ (0) が追加されます。
10進数 (10 進数) 数値 - 各バイト (ワード、ダブルワード) は通常の数値で表され、10 進数表現記号 (文字「d」) は通常省略されます。 前の例のバイトの 10 進値は 165 です。2 進数や 16 進数の表記とは異なり、10 進数では各ビットの値を頭で判断するのが難しく、場合によってはそれが必要になります。
8進数 (8 進数) - ビットの各トリプル (除算は最下位から始まります) は、最後に「o」を付けた 0 ~ 7 の数値として書き込まれます。 同じ数字は 245o と書きます。 8進法はバイトを均等に分割できないので不便です。

数値をある記数法から別の記数法に変換するためのアルゴリズム

整数の 10 進数を他の記数系に変換するには、その数値を新しい記数系の底で割って、その余りが新しい記数系の底より小さい数になるまで実行します。 新しい数値は、最後の数値から除算の余りとして書き込まれます。
通常の小数部から別の PSS への変換は、小数部にすべて 0 が残るまで、または指定された変換精度が達成されるまで、数値の小数部のみに新しい記数体系の底を乗算することによって実行されます。 各乗算演算の結果、新しい数値の 1 桁が、最も高い数値から順に形成されます。
不適切な分数変換は、ルール 1 および 2 に従って実行されます。 整数部分と小数部分はカンマで区切って一緒に記述します。

例その1。



2番から8番、16番制への変換。
これらの体系は 2 の倍数であるため、変換は対応表 (以下を参照) を使用して実行されます。

数値を2進数から8進数(16進数)に変換するには、2進数を小数点から左右3桁(16進数の場合は4桁)のグループに分割し、外側のグループを補う必要があります。必要に応じてゼロを付けます。 各グループは、対応する 8 進数または 16 進数に置き換えられます。

例その2。 1010111010.1011 = 1.010.111.010.101.1 = 1272.51 8
ここでは 001=1; 010=2; 111=7; 010=2; 101=5; 001=1

16 進数に変換する場合は、同じ規則に従って数値を 4 桁の部分に分割する必要があります。
例その3。 1010111010,1011 = 10.1011.1010,1011 = 2B12,13 HEX
ここでは 0010=2; 1011=B; 1010=12; 1011=13

2、8、16 から 10 進数への数値の変換は、数値を個々の数値に分割し、そのシリアル番号に対応する累乗した (数値の変換元となる) 数値の基数を乗算することによって実行されます。変換される数値。 この場合、数値は小数点の左側に増加するにつれて番号が付けられ (最初の数字には 0 の番号が付けられます)、右側に減少するにつれて (つまり、負の符号が付けられます) 番号が付けられます。 得られた結果は合計されます。

例その4。
2 進数から 10 進数への変換の例。

1010010.101 2 = 1・2 6 +0・2 5 +1・2 4 +0・2 3 +0・2 2 +1・2 1 +0・2 0 + 1・2 -1 +0・2 - 2 + 1 2 -3 =
= 64+0+16+0+0+2+0+0.5+0+0.125 = 82.625 10 8 進数から 10 進数への変換の例。 108.5 8 = 1*・8 2 +0・8 1 +8・8 0 + 5・8 -1 = 64+0+8+0.625 = 72.625 10 16 進数から 10 進数への変換の例。 108.5 16 = 1・16 2 +0・16 1 +8・16 0 + 5・16 -1 = 256+0+8+0.3125 = 264.3125 10

もう一度、ある数値体系から別の PSS に数値を変換するアルゴリズムを繰り返します。

  1. 10 進数体系から:
    • 変換される数値体系の底で数値を割ります。
    • 数値の整数部分を除算したときの余りを求めます。
    • 割り算の余りをすべて逆の順序で書き留めます。
  2. 二進法から
    • 10 進数体系に変換するには、底 2 と対応する桁数の積の合計を求める必要があります。
    • 数値を 8 進数に変換するには、数値を 3 進数に分割する必要があります。
      たとえば、1000110 = 1,000 110 = 106 8
    • 数値を 2 進数から 16 進数に変換するには、数値を 4 桁のグループに分割する必要があります。
      たとえば、1000110 = 100 0110 = 46 16
このシステムはポジショナルと呼ばれます、数字の重要性または重みは、数字内のその位置によって決まります。 システム間の関係を表で表現します。
番号体系対応表:
バイナリSS16進数SS
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010
1011 B
1100 C
1101 D
1110 E
1111 F

8進数への変換表

16 進数体系(16 進コードとも呼ばれます) は、16 を基数とする整数の位置番号体系です。文献では、hex (ヘックスと発音、英語の 16 進数の略) という用語も使用されることがあります。 この番号体系の数字は、通常、アラビア数字 0 ~ 9、およびラテン文字の A ~ F の最初の文字で使用されます。 文字は次の 10 進数値に対応します。

  • * A -10;
  • *B—11;
  • *C-12;
  • * D-13;
  • * E-14;
  • ※F-15。

したがって、10 個のアラビア数字と 6 個のラテン文字が組み合わされて、システムの 16 桁が構成されます。

ちなみに、当社の Web サイトでは、オンライン コード計算ツールを使用して、あらゆるテキストを 10 進数、16 進数、バイナリ コードに変換できます。

応用. 16進コード低レベルのプログラミングだけでなく、さまざまなコンピューターのリファレンス文書でも広く使用されています。 このシステムの人気は、現代のコンピュータのアーキテクチャ ソリューションによって正当化されます。つまり、コンピュータには情報の最小単位としてバイト (8 ビットで構成される) があり、バイトの値は 2 つの 16 進数を使用して書き込まれるのが便利です。 バイト値の範囲は #00 ~ #FF (10 進数表記では 0 ~ 255) です。つまり、次のようになります。 16進コード、記録に使用されない「余分な」桁はありませんが、バイトの任意の状態を書き込むことができます。

エンコードされた ユニコード文字番号の記録には 4 桁の 16 進数が使用されます。 RGB カラー表記 (赤、緑、青) では、16 進コードもよく使用されます (たとえば、#FF0000 は明るい赤色の表記です)。

16 進コードを記述するメソッド。

数学的な書き方。 数学的表記法では、システムの基数は数値の右側に添字として 10 進数形式で書かれます。 数字 3032 の 10 進表記は 3032 10 と書くことができ、16 進法ではこの数字は BD8 16 と表記されます。

プログラミング言語の構文では。 異なるプログラミング言語の構文では、次を使用して数値を書き込むための形式が異なります。 16進コード:

* 一部の種類のアセンブリ言語の構文では、数字の右側にラテン文字「h」が使用されます (例: 20Dh)。 数字がラテン文字で始まる場合は、その前にゼロが置かれます (例: 0A0Bh)。 これは、定数を使用した値と定数を区別するために行われます。 16進コード;

* 他の種類のアセンブラー、Pascal (および Delphi などのその亜種) および一部の Basic 方言では、「$」接頭辞が使用されます: $A15;

* HTML マークアップ言語およびカスケード CSS ファイルでは、プレフィックス「#」は RGB 形式の 16 進数表記 #00DC00 で色を示すために使用されます。

16 進コードを別のシステムに変換するにはどうすればよいですか?

16 進数から 10 進数に変換します。 16 進数から 10 進数への変換操作を実行するには、元の数値を 16 進数の桁数と底の累乗の積の合計として表す必要があります。

バイナリSS

六角SS

たとえば、3 桁の 16 進数 A14 を変換する必要があります。 このルールを使用して、16 を底とする累乗の合計として書きます。

A14 16 = 10.16 2 + 1.16 1 + 4.16 0 = 10.256 + 1.16 + 4.1 = 2560 + 16 + 4 = 2580 10

数値を 2 進数から 16 進数に、またはその逆に変換します。

翻訳にはノートテーブルが使用されます。 数値を 2 進数から 10 進数に変換するには、数値を右から左に個別の 4 進数に分割し、テーブルを使用して各 4 進数を対応する 16 進数に置き換える必要があります。 さらに、桁数が 4 の倍数でない場合は、2 進数の合計数が 4 の倍数になるように、対応する数のゼロを数値の右側に追加する必要があります。

翻訳用ノートの表。

16 進数から 2 進数に変換するには、逆の操作を実行する必要があります。つまり、各桁をテーブルの 4 進数に置き換えます。

バイナリSS

オクタルSS

16進数から2進数への変換: A5E 16 = 1010 0101 1110 = 101001011110 2

2進数から16進数への変換: 111100111 2 = 0001 1110 0111 = 1E7 16

この例では、元の 2 進数の桁数が 4 桁ではなかったため、先頭にゼロが追加されて合計桁数が 12 になりました。

自動翻訳。 Windows OS に含まれる標準の電卓を使用して、16 進数体系から 3 つの一般的な体系 (2 進数、8 進数、10 進数) のいずれかへの素早い変換とその逆変換を実行できます。 電卓を開き、メニューから [表示] -> [プログラマー] を選択します。 このモードでは、現在使用している数値体系を設定できます (左側のメニューを参照: Hex、Dec、Oct、Bin)。 この場合、現在の番号体系を変更すると、自動的に変換が生成されます。

数値を 8 進数体系から 16 進数に変換します。 568?2E16。

写真 19 はプレゼンテーション「数値体系の翻訳」より「数体系の種類」というトピックに関する数学の授業

サイズ: 960 x 720 ピクセル、形式: jpg。 数学の授業用に無料の画像をダウンロードするには、画像を右クリックし、[名前を付けて画像を保存] をクリックします。 レッスンで画像を表示するために、すべての画像を zip アーカイブにしたプレゼンテーション全体「Translation of number system.ppsx」を無料でダウンロードすることもできます。 アーカイブのサイズは 138 KB です。

プレゼンテーションをダウンロードする

番号体系の種類

「2 進法」 - 1、2、4、8、16、32、64、128、... 整数 10 進数を 2 進数コードに変換します。 任意の 10 進数は級数の項の合計として表すことができます: ヴィルヘルム ゴットフリート ライプニッツ (1646-1716)。 121 という数字を 2 進数に変換してみましょう。 2 進数システム。 方法 1 – 差分法。

「数体系の例」 - ローマ数字体系。 CCC。 放電。 11. 1999 =。 番号: 123、45678、1010011、CXL 番号: 0、1、2、… 4 3 2 1 0. M M. = 1644. – 10. 5. I、V、X、L、… IX。 6. = 1・24 + 0・23 + 0・22 + 1・21 + 1・20 = 16 + 2 + 1 = 19. トピック 2. 2 進数システム。

「位置数体系と非位置数体系」 - すべての数値表現体系は、位置数体系と非位置数体系に分けられます。 あらゆる位置記数法は基数によって特徴付けられます。 したがって、位置番号体系が主に使用されます。 位置記数法における数字の書き方の拡張形式。 番号システム。 実際には、数値の省略表記が使用されます: A= anan-1 ... a1a0a-1... a-m。

「さまざまな番号体系」 - レッスンのまとめ、宿題。 位置番号システム。 アルファベットの番号体系。 レッスンは終わりました、さようなら! 実践的なタスク: ローマ数字で書いてください: 29、57、128、1024。理論的な内容を学びます。 SS アルファベットは、数字を書くために使用される数字です。 正しい等式を取得します (スティックを 1 つ動かすことができます): VII – V = XI; IX – V = VI。

「記数法での数値の書き込み」 - ファイルの内容はこの形式で表示されます。 ローマのシステムは基本的にエジプトのシステムとそれほど変わりません。 10 進数システム。 番号システム。 アルファベット体系は、より高度な非位置番号体系でした。 バイナリーシステム。 数字を表すために使用される記号は、0 から 9 までの数字です。

「数値システムのレッスン」 - コンピューターはどのように動作するのですか? レッスン 7. 2 進数演算 (16 秒)。 レッスン 1. 2cc: 0、1 8cc: 0、1、2、3、4、5、6、7 10cc: 0、1、2、3、4、5、6、7、8、9 16cc: 0、 1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。コンピューターはどのような記数法を使用しますか? クロックは 12 進数の SS で動作します。 111, 555。コンピュータは 2 進数システムで動作します。

このトピックには合計 13 件のプレゼンテーションがあります

1. さまざまな数体系での序数の数え方。

現代の生活では、私たちは位置記数法、つまり、数字で表される数字が、数字の表記における数字の位置に依存する体系を使用しています。 したがって、今後は「位置」という用語を省略して、それらについてのみ説明します。

ある体系から別の体系に数値を変換する方法を学ぶために、10 進法の例を使用して数値の連続記録がどのように行われるかを理解します。

私たちは 10 進法を採用しているため、数値を構成するための記号 (桁) は 10 個あります。 0、1、2、3、4、5、6、7、8、9と数え始めます。数字は終わりです。 数値のビット深度を増やし、下位の桁をリセットします: 10。次に、すべての桁がなくなるまで下位の桁を再度増やします: 11、12、13、14、15、16、17、18、 19. 上位の桁を 1 つ増やし、下位の桁をリセットします。 20. 両方の桁のすべての桁を使用すると (数値 99 が得られます)、再び数値の桁数を増やし、既存の桁: 100 など。

2 番目、3 番目、5 番目のシステムでも同じことを試してみましょう (2 番目のシステム、3 番目のシステムなどの表記法を導入します)。

0 0 0 0
1 1 1 1
2 10 2 2
3 11 10 3
4 100 11 4
5 101 12 10
6 110 20 11
7 111 21 12
8 1000 22 13
9 1001 100 14
10 1010 101 20
11 1011 102 21
12 1100 110 22
13 1101 111 23
14 1110 112 24
15 1111 120 30

数値体系の基数が 10 より大きい場合は、追加の文字を入力する必要があります。通常はラテン文字を入力します。 たとえば、12 桁システムの場合、10 桁に加えて 2 つの文字 ( と ) が必要です。

0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10
11
12 10
13 11
14 12
15 13

2. 10 進数体系から他の 10 進数体系への変換。

正の整数 10 進数を基数が異なる記数系に変換するには、この数値を基数で割る必要があります。 得られた商を再び底で割り、商が底を下回るまでさらに割ります。 その結果、最後の商とすべての余りを最後から順に 1 行に書き留めます。

例1. 10 進数の 46 を 2 進数に変換してみましょう。

例2。 10 進数の 672 を 8 進数に変換してみましょう。

例 3. 10 進数の 934 を 16 進数に変換してみましょう。

3. 任意の数値体系から 10 進数への変換。

他のシステムの数値を 10 進数に変換する方法を学ぶために、10 進数の通常の表記法を分析してみましょう。
たとえば、10 進数 325 は 5 単位、10 が 2、100 が 3 です。

他の数値体系でも状況はまったく同じですが、10 や 100 などではなく、数値体系の底の累乗を掛けます。 たとえば、3 進法で 1201 という数字を考えてみましょう。 ゼロから始めて右から左に数字を番号付けし、その数字が 1 桁と 3 の桁乗の積の合計であると想像してみましょう。

これは数値の 10 進表記です。

例4. 8 進数の 511 を 10 進数に変換してみましょう。

例5。 16 進数の 1151 を 10 進数に変換してみましょう。

4. 2 進法から「2 の累乗」を基底とする法 (4、8、16 など) への変換。

2 進数を 2 進数の累乗の数に変換するには、2 進数列を右から左へのべき乗に等しい桁数に応じてグループに分割し、各グループを新しい数値の対応する桁に置き換える必要があります。番号システム。

たとえば、2 進数 1100001111010110 を 8 進数に変換してみましょう。 これを行うには、右から始まる 3 文字のグループに分割し ( 以降)、対応表を使用して各グループを新しい数字に置き換えます。

ステップ 1 で対応表を作成する方法を学びました。

0 0
1 1
10 2
11 3
100 4
101 5
110 6
111 7

それらの。

例6。 2 進数 1100001111010110 を 16 進数に変換してみましょう。

0 0
1 1
10 2
11 3
100 4
101 5
110 6
111 7
1000 8
1001 9
1010
1011 B
1100 C
1101 D
1110 E
1111 F

5. 「2 のべき乗」(4、8、16 など) を基本とするシステムから 2 進数への変換。

この変換は、前の変換と似ていますが、逆方向に行われます。各数字を、対応表からの 2 進数の数字のグループに置き換えます。

例7。 16 進数 C3A6 を 2 進数に変換してみましょう。

これを行うには、数値の各桁を対応表の 4 桁のグループ ( 以降) に置き換え、必要に応じてグループの先頭にゼロを追加します。



数値をある記数法から別の記数法に変換することは、機械演算の重要な部分です。 翻訳の基本的なルールを考えてみましょう。

1. 2 進数を 10 進数に変換するには、数値の桁数と対応する 2 の累乗の積からなる多項式の形式で記述し、次の規則に従って計算する必要があります。 10 進算術:

翻訳するときは、2 のべき乗表を使用すると便利です。

表 4. 数 2 の累乗

n(度)

例。

2. 8 進数を 10 進数に変換するには、数値の桁数と対応する数値 8 の累乗の積からなる多項式として書き留め、10 進数の規則に従って計算する必要があります。算術:

翻訳するときは、8 のべき乗表を使用すると便利です。

表 5. 8 の累乗

n(度)

例。数値を 10 進数に変換します。

3. 16 進数を 10 進数に変換するには、数値の桁数と対応する数値 16 のべき乗の積からなる多項式の形式で書き込み、次に従って計算する必要があります。 10 進算の規則:

翻訳するときに使うと便利です ナンバー16の力の電撃:

表 6. 16 の累乗

n(度)

例。数値を 10 進数に変換します。

4. 10 進数を 2 進数に変換するには、1 以下の余りが残るまで順番に 2 で割る必要があります。2 進数の数値は、最後の除算結果とその余りのシーケンスとして書き込まれます。逆の順序で分割します。

例。数値を 2 進数系に変換します。

5. 10 進数を 8 進数に変換するには、7 以下の余りが残るまで順番に 8 で割る必要があります。8 進数の数値は、最後の除算結果とその結果の桁のシーケンスとして書き込まれます。割り算の余りを逆の順序で計算します。

例。数値を 8 進数体系に変換します。

6. 10 進数を 16 進数に変換するには、15 以下の余りが残るまで順番に 16 で割る必要があります。16 進数の数値は、最後の除算結果とその結果の桁のシーケンスとして書き込まれます。割り算の余りを逆の順序で計算します。

例。数値を 16 進数に変換します。