英語フランス語スペイン語

OnWorksファビコン

bin_dec_hex - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーター上の OnWorks 無料ホスティング プロバイダーで bin_dec_hex を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド bin_dec_hex です。

プログラム:

NAME


bin_dec_hex - XNUMX 進数、XNUMX 進数、および XNUMX 進数表記の使用方法。

DESCRIPTION


ほとんどの人は XNUMX 進数の記数法を使用します。このシステムでは、XNUMX 個の記号を使用して表現します。
数字。これら XNUMX 個のシンボルが使い果たされると、最初からやり直して、値が増加します。
左側の位置。数字の 0 は、それがシーケンス内の唯一の記号である場合にのみ表示されます。
または、それが最初のものではない場合。

これが不可解に聞こえるかもしれませんが、私が今数字で言ったことは次のとおりです。

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

などがあります。

数字の 0 がインクリメントされるたびに、XNUMX と XNUMX つ前の位置にリセットされます。
左) がインクリメントされます (0 から 1)。すると、数字の 9 は「00009」として表示されます。
9 をインクリメントする必要がある場合は、それを 9 にリセットし、XNUMX の直前の数字をインクリメントします。
番号は「00010」になります。先頭のゼロは、それが唯一の数字である場合を除いて書きません
(番号0)。そしてもちろん、ゼロが内部または末尾のどこかに出現した場合には、ゼロを書き込みます。
数:

「00010」→「0010」→「010」→「10」ですが、「1」ではありません。

これはかなり基本的なことなので、すでにご存知でしょう。なぜそれを言ったのでしょうか?まあ、コンピュータは通常、
10 桁の異なる数値を表すことはできません。彼らは XNUMX つの異なる記号を使用するだけです。
つまり「0」と「1」です。この数字のセットに同じルールを適用すると、バイナリが得られます。
番号付けシステム:

0
1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101

などがあります。

行の数を数えてみると、これらも 14 個の異なる数値であることがわかります。の
最初のリストと数字は同じで意味も同じですが、別の値を使用しただけです。
表現。これは、使用されている表現、またはそのままの表現を知る必要があることを意味します。
番号付けシステムまたは基数と呼ばれます。通常、明示的に指定しない場合、
使用される番号付けシステムでは、暗黙的に XNUMX 進数システムが使用されます。他のものを使用したい場合は、
番号付けシステムについては、それを明確にする必要があります。広く採用されている方法がいくつかあります。
そうする。一般的な形式の XNUMX つは次のように書くことです 1010(2) これは、そのフィールドに数字を書き留めたことを意味します。
バイナリ表現。十番です。指定せずに1010と書く場合
基数の場合、数値は基数 10 を使用して XNUMX と XNUMX として解釈されます。

本では、別の形式が一般的です。下付き文字 (多かれ少なかれ小さな文字) を使用します。
XNUMX つの行の間)。その場合は括弧を省略して、
通常の文字で数字の後ろに小さな XNUMX が続きます。

使用される番号付けシステムは基数とも呼ばれるため、1100 基数 2 という数字について話します。
12 進数の 10 という数字。

XNUMX 進法では、先頭にゼロを書くのが一般的です。数字が書いてある
状況に応じて、XNUMX つ、XNUMX つ、または XNUMX つのシリーズでダウンします。

コンピューターと会話するとき (...プログラミング...) にはバイナリ形式を使用できますが、数値は
大きな表現を持つことになります。数値 65'535 (多くの場合、XNUMX 進法では ' は
読みやすくするために XNUMX 桁のブロックを区切るために使用されます)は、次のように記述されます。
1111111111111111(2) これは 16 の 1 倍です。これは難しく、間違いが発生しやすくなります。
したがって、通常は 16 進数と呼ばれる別の基数を使用します。 XNUMX種類の異なるものを使用します
シンボル。最初に XNUMX 進法の記号が使用され、その後、
アルファベット文字。 0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F が得られます。
このシステムが選択されるのは、XNUMX 進数形式を XNUMX 進数システムに簡単に変換できるためです。
簡単に(そして元に戻ります)。

オクタル システムと呼ばれる、さらに別のシステムが使用されています。これはより一般的でした
昔のことですが、今ではあまり使われていません。時々使用していることに気づくかもしれませんが、
慣れる必要があります。以下にそれを示します。他の人と同じ話だよ
表現ですが、XNUMX つの異なるシンボルがあります。

バイナリ(2)
8進数(XNUMX)
DECIMAL(10)
16 進数 (XNUMX)

(2)(8)(10)(16)
00000 0 0 0
00001 1 1 1
00010 2 2 2
00011 3 3 3
00100 4 4 4
00101 5 5 5
00110 6 6 6
00111 7 7 7
01000 10 8 8
01001 11 9 9
01010 12 10 A
01011 13 11 B
01100 14 C
01101 15 D
01110 E
01111 17 15F
10000 20 16 10
10001 21 17 11
10010 22 18 12
10011 23 19 13
10100 24 20 14
10101 25 21 15

現在使用されているほとんどのコンピューターは XNUMX ビットのバイトを使用しています。これは、彼らが保管することを意味します
一度に XNUMX ビット。 XNUMX 進法がそのために最も実用的ではない理由がわかります。
XNUMX ビットを表すには XNUMX 桁が必要で、これは次のようにする必要があることを意味します。
2 ビットのみを表す 3 つの完全な数字 (3+8+XNUMX=XNUMX)。これは無駄です。 XNUMX進数の場合
桁の場合、完全に使用される XNUMX 桁だけが必要です。

(2)(8)(10)(16)
11111111 377 FF

XNUMX 進数と XNUMX 進数をすばやく変換できる理由がわかります。
digit ちょうど XNUMX つの XNUMX 進数があります。 XNUMX 進数を取得する: から XNUMX 桁を取得します。
右に移動し、そこから XNUMX 進数を作成します (上の表を参照)。までこれを繰り返します
これ以上の数字はありません。逆に、XNUMX 進数を取得します。それぞれについて
数字の場合は、それに相当するバイナリを書き留めます。

コンピュータ (あるいはコンピュータ上で実行されているパーサー) は、
のような数字 1234(16)。したがって、XNUMX 進数は接頭辞を付けて指定されます。これ
接頭辞は、作成している言語によって異なります。接頭辞の一部は、C の場合は「0x」、「$」です。
Pascal の場合は「#」、HTML の場合は「#」。数字がゼロで始まる場合、それは次のとおりであると考えるのが一般的です。
は0進数です。それが何であるかを知っていれば、何を使用するかは問題ではありません。 「XNUMXx」を使用します
0 進数の場合は「%」、XNUMX 進数の場合は「%」、XNUMX 進数の場合は「XNUMX」です。以下の数字はすべて
同じですが、表現 (ベース) が異なるだけです: 021 0x11 17 %00010001

算術と変換を行うには、もう XNUMX つ理解する必要があります。それは何かです
すでに知っていますが、おそらくまだ「見て」いないでしょう。

1234 (接頭辞がないので XNUMX 進数です) と書き留めると、ナンバー XNUMX について話していることになります。
千二百三十四。ある種の式で言えば、

1 * 1000 = 1000
2 * 100 = 200
3 * 10 = 30
4 * 1 = 4

これは次のように書くこともできます:

1 * 10 ^ 3
2 * 10 ^ 2
3 * 10 ^ 1
4 * 10 ^ 0

ここで ^ は「の乗」を意味します。

基数 10 と位置 0,1,2、3、XNUMX、および XNUMX を使用します。右端の位置は次のようになります。
10 を乗算しないでください。右から XNUMX 番目の値は XNUMX 回乗算する必要があります。
10. 右から 10 番目は XNUMX を XNUMX 回掛けます。これが何があっても続く
ポジションが使われます。

他のすべての表現でも同じです。

0x1234は

1 * 16 ^ 3
2 * 16 ^ 2
3 * 16 ^ 1
4 * 16 ^ 0

01234は

1 * 8 ^ 3
2 * 8 ^ 2
3 * 8 ^ 1
4 * 8 ^ 0

この例は、バイナリでは XNUMX つのシンボルしか使用しないため実行できません。別の
例:

%1010 は

1 * 2 ^ 3
0 * 2 ^ 2
1 * 2 ^ 1
0 * 2 ^ 0

これを 1010 進形式に変換して、%XNUMX を翻訳する方が簡単だったでしょう。
0xAに入力します。しばらくすると慣れます。計算を行う必要はありません
もう必要ありませんが、0xA は 10 を意味することだけは知っておいてください。

XNUMX 進数を XNUMX 進数に変換するには、次の方法を使用できます。かかる
見積りができるようになるまで少し時間がかかりますが、システムを利用すると簡単になります。
さらに頻繁に。その後、さらに別の方法を見ていきます。

まず、他のシステムで使用されるポジションの数を知る必要があります。そうするには、あなたは
使用する最大数を知っておく必要があります。まあ、見た目ほど難しくはありません。で
99 進数の場合、XNUMX 桁で作成できる最大数は「XNUMX」です。の最大値
999:「XNUMX」。次の番号には追加の位置が必要になります。この考え方を逆転させれば、
この数値は、10^3 (10*10*10 は 1000) から 1 を引くか、10^2 から引くことで求められることを確認してください。
1。

これは XNUMX 進数に対しても行うことができます。

16^4 = 0x10000 = 65536
16^3 = 0x1000 = 4096
16^2 = 0x100 = 256
16^1 = 0x10 = 16

数値が 65'536 より小さい場合は、XNUMX つの位置に収まります。数字が大きければ
4'095 より大きい場合は、位置 4 を使用する必要があります。 4'096 を何回減算できるか
ゼロを下回らない数値は、書き留める最初の数字です。これは常に
1 ~ 15 (0x1 ~ 0xF) の数値。他の位置でも同じことを行います。

41'029で試してみましょう。 16^4 よりは小さいですが、16^3-1 よりは大きくなります。これは、私たちが
16 つのポジションを使用する必要があります。 3'41 から 029^XNUMX を XNUMX 回減算することができます。
ゼロ以下。したがって、左端の数字は「A」となり、0xA??????となります。番号は
41'029 - 10*4'096 = 41'029-40'960 = 69 に短縮されます。69 は 16^3 より小さいですが、大きくはありません
16^2-1よりも。したがって、0 桁目は「0」となり、0xA69?? となります。 XNUMX は以下より小さい
16^2 であり、16^1-1 よりも大きい。 16^1 (これは単なる 16) を XNUMX 回引くことができます。
4xA0? を取得するには、「04」を書き留めます。 64 から 69 を引くと (69 - 4*16)、最後の桁は 5 になります -->
0xA045。

もう 41 つの方法は、右から数値を積み上げていきます。もう一度 029'XNUMX を試してみましょう。除算
16 であり、分数は使用しません (整数のみ)。

41'029 / 16 は 2'564 で余りが 5 です。5 を書き留めます。
2'564 / 16 は 160 余りが 4 です。4 の前に 5 を書きます。
160 / 16 は余りのない 10 です。 45 の前に 0 を付加します。
10 / 16 は 0 を下回ります。ここで終了し、先頭に 0xA を追加します。最終的には 045xAXNUMX になります。

どの方法を使用するかはあなた次第です。自分に合ったものを使ってください。どちらも付けずに使ってます
それぞれの場合にどのような方法を使用するかはわかりますが、それは数値次第だと思います。
実際、プログラミング中にいくつかの数値が頻繁に発生します。数値が近ければ
私がよく知っている方法であれば、最初の方法を使用します(32'770 が 32'768 になるなど)
+ 2 で、0x8000 + 0x2 = 0x8002 であることがわかります)。

バイナリの場合も同じアプローチを使用できます。基数は 2 ではなく 16 であり、
ポジションは急速に成長するでしょう。 XNUMX 番目の方法を使用すると、次のような利点があります。
XNUMX か XNUMX を書き留める必要がある場合は非常に簡単です。XNUMX で割った余りは
偶数の場合は XNUMX、奇数の場合は XNUMX になります。

41029 / 2 = 20514 余り 1
20514 / 2 = 10257 余り 0
10257 / 2 = 5128 余り 1
5128 / 2 = 2564 余り 0
2564 / 2 = 1282 余り 0
1282 / 2 = 641 余り 0
641 / 2 = 320 余り 1
320 / 2 = 160 余り 0
160 / 2 = 80 余り 0
80 / 2 = 40 余り 0
40 / 2 = 20 余り 0
20 / 2 = 10 余り 0
10 / 2 = 5 余り 0
5 / 2 = 2 余り 1
2 / 2 = 1 余り 0
1 / 2 以下 0 余り 1

結果を右から左に書き留めます: %1010000001000101

XNUMX つずつグループ化します。

%1010000001000101
%101000000100 0101
%10100000 0100 0101
%1010 0000 0100 0101

0 進数に変換: 045xAXNUMX

%1010000001000101 を XNUMX つずつグループ化し、XNUMX 進数に変換します。

%1010000001000101
%1010000001000 101
%1010000001 000 101
%1010000 001 000 101
%1010 000 001 000 101
%1 010 000 001 000 101
%001 010 000 001 000 101
1 2 0 1 0 5 --> 0120105

したがって: %1010000001000101 = 0120105 = 0xA045 = 41029
または: 1010000001000101(2)= 120105(8)= A045(16)= 41029(10)
または: 1010000001000101(2)= 120105(8)= A045(16)= 41029

最初に数値を加算する際に、数値を XNUMX 進数形式に変換し、それから逆に変換します。
加算を行った後、元の形式に戻ります。他の番号付けシステムを使用する場合
多くの場合、基底で直接算術を実行できることがわかります。
使用済み。どの表現でも同じです。右側の数字を足し、
結果の右端の数字を取得し、他の数字を覚えて次のときに使用します。
ラウンド。右から XNUMX 番目の桁などを続けます。

%1010 + %0111 --> 10 + 7 --> 17 --> %00010001

になります

%1010
%0111 +
||||
|||+-- 0 + 1 を加算、結果は 1、覚えておくべきものはありません
||+--- 1 + 1 を加算、結果は %10、0 を書き留めて 1 を記憶
|+---- 0 + 1 + 1 を加算 (記憶)、結果 = 0、1 を記憶
+----- 1 + 0 + 1 を加算 (記憶)、結果 = 0、1 を記憶
追加するものは何もありません、1 つは記憶されています、結果 = 1
--------
%10001 が結果です。%00010001 と書きたいと思います。

値が低い場合は、自分で計算してから電卓で確認してください。
自分で計算すればするほど、計算が間違っていたことがわかります
間違い。最終的には、他の基底でも微積分を他の基底で行うのと同じくらい簡単に実行できるようになります。
XNUMX進数。

数字が大きくなると、コンピューターは「コンピューター」とは呼ばれないことに気づく必要があります。
単に素敵な名前を付けるためのコンピュータです。さまざまな計算機が利用可能です。
彼ら。 Unix の場合は、Binary Calculator の略である「bc」を使用できます。計算しない
XNUMX 進数のみですが、使用したいすべての基数 (XNUMX 進数も含む) で使用できます。

Windows をお使いの場合: 電卓を起動し ([スタート] -> [プログラム] -> [アクセサリ] -> [電卓])、
必要に応じて、「表示」->「科学的」をクリックします。これで関数電卓が手に入り、次の計算ができるようになりました。
XNUMX進数またはXNUMX進数で。

onworks.net サービスを使用してオンラインで bin_dec_hex を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad