DEC2OCT関数 10進数を8進数に変換する
関数名 | DEC2OCT |
分類 | エンジニアリング |
説明 | 10進数を8進数に変換する |
バージョン | - |
カテゴリ | Excel関数一覧 |
ここでの解説は、特に説明がない限り、Excelをインストールし、初期設定のまま使用した場合の動作を基に解説しています。
書式
DEC2OCT(数値1, [桁数]2)
1 - 数値 ----- 変換する10進の整数を指定します。数値に負の数を指定すると、桁数は無視され、10桁の8進数(2進数にすると30桁)が返されます。
2 - [桁数] ----- (省略可) 使用する文字数を指定します。
解説
セルA1に「=DEC2OCT(58,3)」を入力します。
10進数の「58」が3桁の8進数に変換されます。
セルA2に「=DEC2OCT(-100)」を入力します。
10進数の「-100」が8進数に変換されます。
ここで、なぜ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