=BIN2DEC(符号付き2進数)
BIN2DEC(バイナリィ・トゥ・デシマル)関数は、符号付き2進数表記の[数値]を10進数表記の数値に変換する関数です。
BIN2DEC関数の使い方. 構文
BIN2DEC関数の構文は以下のとおりです。
=BIN2DEC(符号付き2進数)
BIN2DEC関数の構文内訳
引数 | 説明 | 注釈 |
---|---|---|
数値 | 必ず指定-符号付き2進数を指定します。 | 符号付き2進数-10進数に変換する10ビットの符号付き2進数を文字列として指定します。 |
※符号ビットとは、コンピューターで負の数値を扱うために付加するビット(bit:1か0の2値を区別するために必要な情報量)のこと。0なら正数、1なら負数を表す。 | ||
符号付き2進数の最上位ビットは符号ビットです。 | ||
この関数では、入力値の正の最大値は 0111111111、負の最小値は 1000000000 です。 | ||
符号付き2進数に有効な2進数を指定すると、自動的に適切な文字列の入力値に変換されます。たとえば、BIN2DEC(100) と BIN2DEC("100") はどちらも同じ結果4を返します。 |
BIN2DEC関数の使い方・実行サンプル
BIN2DEC関数を実行するサンプル。
説明 | 数値 | 数式 |
---|---|---|
2進数の110010を10進数に変換します。 | 110010 | =BIN2DEC(B2) |
2進数の111111111を10進数に変換します。 | 111111111 | =BIN2DEC(B3) |
各進数をBIN2DEC関数で算出した結果。
説明 | 数値 | 数式 | 結果 |
---|---|---|---|
2進数の110010を10進数に変換します。 | 110010 | =BIN2DEC(B2) | 50 |
2進数の111111111を10進数に変換します。 | 111111111 | =BIN2DEC(B3) | 511 |
GIFで↓
BIN2DEC関数の実行サンプル結果
画像でBIN2DEC実行サンプル結果を確認↓
BIN2DEC関数 × GASの使い方・サンプル
BIN2DEC関数をGASで利用する際の、かんたんなサンプルを作成してみました。
実装する表のサンプル。
置換対象の数値 | 置換後 | 結果 |
---|---|---|
デフォは空白 | デフォは空白 | デフォは空白 |
実装するGAS
function BIN2DEC() {
var ss,sht,lastrw,val01,val02
ss = SpreadsheetApp.getActiveSpreadsheet();
sht = ss.getActiveSheet();
lastrw = sht.getLastRow();
Logger.log(lastrw);
val01 = Browser.inputBox('2進数に置換する数値0か1を入力して下さい(10ビットまで)',Browser.Buttons.OK_CANCEL);
if(val01 == "cancel"){
Browser.msgBox("処理を中止しました");
return;
} else {
sht.getRange("A2").setValue("2進数に置換する数値は"+val01+"です");
}
// BIN2DEC関数をB2セルにセット
val02 = sht.getRange("B2").setFormula('=BIN2DEC('+val01+')');
val03 =val02.getValue();
sht.getRange("C2").setValue("10進数は「"+val03+"」です");
}
実行結果をGIFで
BIN2DEC関数を使うときの注意点
注意. 0と1以外の値を指定すると#NUM!エラーを返す
BIN2DEC関数は、引数に数値以外の値を指定すると#NUM!エラーを返します。
以下にサンプルを記載します。
数値 | 数式 | 結果 |
---|---|---|
1100a | =BIN2DEC(A2) | #NUM! |
ちなみに1と0以外の数値、例えば2進数ではない「2」や「3」を数値に指定しても#NUM!が返されます。
注意2. 数値が10文字以上だとNUM!エラーを返す
BIN2DEC関数では、数値に10文字以上の数値を指定した場合、#NUM!エラーを返します。
以下にサンプルを記載します。
数値 | 数式 | 結果 |
---|---|---|
1111000000000 | =BIN2DEC(A2) | #NUM! |
BIN2DEC関数の使い方. Excelとスプシの違い
BIN2DEC関数は、ExcelとGoogleスプレッドシートで基本的な使い方に相違はありません。
強いて言えばGoogle側のBIN2DEC関数ドキュメントエディタヘルプでは、
この関数では、入力値の正の最大値は 0111111111、負の最小値は 1000000000 です。
と記載されていることでしょう。
- 数値には2進数を指定する
- 数値の最上位は符号ビット
- 負の数は2の補数を使って表す
- 10ビット以上は#NUM!を返す
といった書式は、どちらとも同じです。
BIN2DEC関数の使い方 まとめ
BIN2DEC関数の使い方でした。 有効に利用するには、
- 数値には0または1を指定する
- 数値は10文字(ビット)以上入れない
- テキストを指定しない
といった感じですね。
BIN2DEC関数を使うことで、2進数から10進数へすぐに置換することができます。
関連記事: BETAINV関数の使い方|β分布区間に対しβ累積分布の逆関数の値を返す
関連記事: BETADIST関数の使い方|ベータ分布関数で定義された特定値の確率を返す
関連記事: BASE関数の使い方|10 進数を別の底のテキスト表現に変換する