·4分で読めます

Mac用進数コンバーター — Hex、Binary、Octal、Decimal

メモリアドレスや色の値、ファイルの権限コードを読むということは、文脈が要求する進数と10進数の間を常に変換し続けるということです。

メモリアドレスが0x7ffee23a1c40として表示されます。ファイルの権限は0755です。ドライバーのドキュメントに書かれたビットマスクは2進数で表記されています。色チャンネルの値は10進数から2桁の16進数に変換する必要があります。これらの変換のどれも個別には難しくありませんが、頭の中で繰り返し行うこと——特にビットをニブルにグループ化する必要がある2進数からHexへの変換——は、これほど機械的な作業にしては遅く、ミスが起きやすいものです。

低レベルプログラミング、組み込み開発、ネットワーキング、さらには日常的なウェブ開発(Hexカラーなど、またしても)でも、進数の間を頻繁に移動する必要があり、Hex桁の暗記した対応表だけでは、数値が1、2バイトを超えると限界があります。

ここで人がつまずくポイント

8進数はやっかいです。644のようなファイル権限は10進数のように見えますが、実際には8進数であり、それを10進数として扱って考えると、実際のビットパターンについて混乱が生じます。2進数は16ビットを超えると扱いにくくなります——32ビットの値は2進数だと32文字にもなり、特定のビットをフラグチェックのために切り分けようとするとき、読みづらく数え間違えやすくなります。

4つの進数すべてを同時に変換

Bellowsには、10進数、16進数、8進数、2進数で値を同時に表示する進数コンバーターが含まれています。任意の進数で数値を入力すると、4つすべての表現が一緒に更新されます——ペアごとに個別の変換をする必要はありません。

Bellows number base converter showing hex, binary, octal, and decimal on macOS

低レベル・組み込み開発

組み込みファームウェアやシステムプログラミングでレジスタの値、ビットマスク、メモリアドレスを読むには、Hexと2進数の間を流れるように移動する必要があります。10進数と一緒に両方を見ることで、すでに細部の多いタスクから手動での変換という層を取り除けます。

ファイル権限とネットワーキング

Unixのファイル権限、サブネットマスク、ネットワーキングプロトコルのさまざまなバイナリフラグは、一般的に8進数や2進数で表現されますが、10進数で考えられることが多いです。素早い変換によって、権限文字列やフラグバイトが何を表しているかを変更前に正確に確認できます。

Mac App StoreでBellowsを入手する

次の記事

Bellows

41 developer tools in one native Mac app — JSON, JWT, Base64, hashes, and more.

Get Bellows on the Mac App Store