BIN2OCT関数 2進数を8進数に変換する

関数名 BIN2OCT
分類 エンジニアリング
説明 2進数を8進数に変換する
バージョン -
カテゴリ Excel関数一覧

ここでの解説は、特に説明がない限り、Excelをインストールし、初期設定のまま使用した場合の動作を基に解説しています。

書式

BIN2OCT(数値1, [桁数]2)

1 - 数値 ----- 変換する2進数を指定します。数値に指定できる文字数は10文字(10 ビット)までです。数値の最上位のビットは符号を表します。残りの9ビットは数値の大きさを表します。負の数は2の補数を使って表します。
2 - [桁数] ----- (省略可) 結果として返される文字数を指定します。省略すると、必要最小限の桁数で結果が返されます。桁数に満たないときは0が前に付加されます。


解説

例えば、セルに図の様な値が入力されているとします。
Excel関数
セルB1に「=BIN2OCT(A1,3)」を入力します。
Excel関数
セルA1の値が8進数に変換されます。
Excel関数
第2引数に「3」を指定していますので、求められる結果は3文字になります。
計算結果の「11」は2文字ですので、その前に「0」が1文字分付加されています。

セルB2に「=BIN2OCT(1111111111)」を入力します。
Excel関数
2進数の「1111111111」が8進数に変換されます。
Excel関数
このように、第1引数に指定した値が負の数である場合(10桁の値を指定した場合)は、10桁の8進数が返され、正しい結果となりません。

ここで、なぜ2進数の「1001」が8進数の「11」になるのか見ておきましょう。
2進数を8進数に変換するためには、まず右から3桁ごとに区切ります。
このとき、3桁に満たない場合は、値の前に「0」を付加します。

001 001

3桁ごと10進数に変換します。

11

8進数に変換します。

11


注意事項

・数値に2進数以外の値、または10文字(10 ビット)より多くの値を指定すると、エラー値 #NUM! が返されます。
・数値が負の数である場合、桁数の値は無視され、10桁の8進数が返されます。
・計算結果の桁数が指定した桁数の値よりも大きくなる場合、エラー値 #NUM! が返されます。
・桁数に整数以外の値を指定すると、小数点以下は切り捨てられます。
・桁数に数値以外の値を指定すると、エラー値 #VALUE! が返されます。
・桁数に負の数を指定すると、エラー値 #NUM! が返されます。


メモ

BIN2OCT は Binary number to OCTal


関連する関数

OCT2BINBIN2DECBIN2HEX