bcを16進計算機として使用する方法



問題を排除するために楽器を試してください

LinuxのようなさまざまなUnixライクなオペレーティングシステムの実装や、GNUスイートを備えたほとんどすべてのものに、bcの基本的な計算機言語が含まれています。その構文は、Cプログラミング言語と非常によく似ています。コマンドラインから直接16進計算機として使用できるため、スマートフォン用の16進数または8進数のアプリを再度ダウンロードする必要はありません。



これは、開発者や宿題をしている人にとっては素晴らしいニュースです。ただし、これを行うにはターミナルを開く必要があります。 Ctrl、Alt、Tを押したままにするか、Ubuntu UnityDashでターミナルという単語を検索します。システムツールの下のウィスカーまたはアプリケーションメニューから開始することをお勧めします。 macOSのユーザーは、ユーティリティフォルダから、または固定されている場合はドックをクリックして、ターミナルを起動できます。 bcは、Linuxだけでなく、最近のほとんどのUnixライクなオペレーティングシステムで見つけることができます。



方法1:bcを使用して10進数と16進数を変換する

タイプ echo‘obase = 16; 127 ’|紀元前 数値127を通常の基数10の数値から16進数に変換します。当然、それを任意の整数に置き換えることができます。結果は7Fになり、通常の10進数に戻したい場合は、次のように入力できます。 echo‘ibase = 16; obase = A; 7F ’|紀元前 Enterキーを押します。とてもシンプルで、有効な16進数でいつでも使用できます。これは有効なUnixスタイルのコマンドであるため、これを任意のタイプのシェルスクリプトに組み込むこともできます。数値をすばやく前後に変換する必要があるときはいつでも、コマンドラインからこれを使用できることを覚えておくのは簡単です。



方法2:bc HexCalculatorを使用して2進数と16進数を変換する

コマンドプロンプトで次のように入力します echo‘obase = 16; ibase = 2; 111010001 ’|紀元前 2進数を16進数に変換します。 Enterキーを押すと、返信として1D1が返されます。当然、そのバイナリ行に、その時点で変換する必要のある任意の2進数を入力できます。繰り返しになりますが、その逆も当てはまり、付属の16進計算機を使用して16進数を2進数に変換することができます。タイピング echo‘obase = 2; ibase = 16; 1D1 ’|紀元前 Enterキーを押すと元の数値に戻りますが、1D1を他の有効な16進値に置き換えることができます。



これを頻繁に使用する場合は、2つの点に注意する必要があります。 1つは、bcソフトウェアは小文字を代数変数として扱うため、16進数に固有の文字は常に大文字でなければならないということです。 2つ目は、これらのコマンドはすべて通常のユーザーが実行でき、最新バージョンのLinuxまたはUnixで実行するためにrootアクセスは必要ないということです。

方法3:bcを完全な16進計算機として使用する

必要に応じて、bcコマンドを16進計算機として使用して、算術演算を実行することもできます。ほとんどの人はこの必要性を持っていませんが、プログラマーである人は、メモリ内の2つの異なる場所の違いを理解する必要があるかもしれません。これは、高校や大学でコンピュータサイエンスの宿題をしている人からのよくある質問でもあります。

EE65522Dという1つの16進数があり、そこからC3EFAF86を減算したいとします。あなたはタイプすることができます echo‘ibase = 16; EE65522D-C3EFAF86 ’|紀元前 Enterキーを押して、答えを見つけます。答えを16進数にしたい場合は、試してみてください。 echo‘obase = 16; ibase = 16; EE65522D-C3EFAF86 ’|紀元前 そのようにそれを解決するために。他の算術演算も許可されます。例えば、 echo‘obase = 16; ibase = 16; EE65522D * C3EFAF86 ’|紀元前 2つの値を乗算します。もちろん、必要に応じて、加算のオペランドとして+を使用することもできます。除算に/を使用しても、余りは返されません。これを行うには、係数に%を使用する必要があります。

たとえば、echo‘obase = 16; ibase = 16; EE65522D%C3EFAF86 ’を実行します| bcは2A75A2A7の値を返します。これは、16進計算機を実行すると、その方程式の商が1剰余2A75A2A7であるためです。最初に/オペランドを実行し、次に%オペランドを実行して、両方の値を見つけます。

読んだ3分