DEC2OCT関数 10進数を8進数に変換する

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

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

書式

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

1 - 数値 ----- 変換する10進の整数を指定します。数値に負の数を指定すると、桁数は無視され、10桁の8進数(2進数にすると30桁)が返されます。
2 - [桁数] ----- (省略可) 使用する文字数を指定します。


解説

セルA1に「=DEC2OCT(58,3)」を入力します。
Excel関数
10進数の「58」が3桁の8進数に変換されます。
Excel関数
セルA2に「=DEC2OCT(-100)」を入力します。
Excel関数
10進数の「-100」が8進数に変換されます。
Excel関数
ここで、なぜ10進数の「-100」が8進数の「7777777634」になるのか見ておきましょう。

計算方法は以下の通りです。

10進数の「100」は、2進数で「1100100」です。
DEC2OCT関数は、数値に負の数を指定すると、10桁の8進数となるため、足りない桁を0で埋め30桁の2進数「000...001100100」にします。
各ビットを反転させます。(1の補数)

000...001100100

111...110011011

1を加算します。(2の補数)

111...110011100

「111...110011100」を8進数に変換し、「7777777634」となります。


注意事項

・数値<-536,870,912 または数値>536,870,911 の場合、エラー値 #NUM! が返されます。
・数値に数値以外の値を指定すると、エラー値 #VALUE! が返されます。
・計算結果の桁数が指定した桁数の値よりも大きくなる場合、エラー値 #NUM! が返されます。
・桁数に整数以外の値を指定すると、小数点以下は切り捨てられます。
・桁数に数値以外の値を指定すると、エラー値 #VALUE! が返されます。
・桁数に負の数を指定すると、エラー値 #NUM! が返されます。


メモ

DEC2OCT は DECimal number to OCTal


関連する関数

DEC2BINDEC2HEXBASE