2進対数の計算
正の数を入力すると、2を底とする対数、つまり2を何乗するとその数になるかが分かります。8なら3、1/2なら−1、10なら約3.321928094887です。2のちょうどの累乗なら答えは正確な整数になります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 値
- 8
- Log2
- 3
- 式
- log2(8) = 3
正の数 x の 2 を底とする対数 は、2 の y 乗が x になる 唯一の実数指数 y です。計算機科学では log2(x) や lg(x) と書き、ISO 80000-2 は log10 と混同しないよう lb(x) と書きます。学習者は ビット数え、2^y = x の求解、二進と十進の大きさの変換 で出会います。
2進対数とは何か、log2(x) が定義される条件
正の実数 x の 2 を底とする対数 は、2 の y 乗が x に等しい 唯一の実数 y です。記号では y が log2(x) であることは 2^y が x に等しいことと同値です。この写像は 底 2 の指数関数 の逆で、2 の k 乗の log2 は範囲内の任意の実数 k について k であり、x の log2 の 2 乗は任意の正の x を復元します。
ビット数え の議論に必ず出る値は覚えておく価値があります。1 の log2 は 0 です。2 の 0 乗が 1 だからです。
2 の log2 は 1、4 の log2 は 2、8 の log2 は 3、16 の log2 は 4 で、一般に 2 の n 乗の log2 は n が整数ならちょうど n です。1 より小さい分数は 負の対数 になります。1/2 の log2 は −1、1/4 の log2 は −2 です。
関数は 正の実数 上で狭義単調増加し、x が右から 0 に近づくと −∞ に、x が限りなく大きくなると +∞ に向かいます。任意底の対数(別の検索意図で、底 b の一般対数計算機が担う)や 素数を法とする離散対数 ではなく、二進対数が必要なときに このページ をお使いください。
log2 計算機が役立つ場面
教室 と 個別指導の基盤 は、任意の小数の二進対数を検算できるよう log2 計算機 を使い、手で変換したり、0 で黙って −Infinity を出す電話に頼ったりしません。計算機科学のノート は 正の大きさ をビットへ直します。
整数 n を表すのに必要なビット数は 1 足す log2(n) の床、長さ n の整列配列に対する二分探索の深さはおよそ log2(n)、公正な硬貨の シャノンエントロピー は 1 ビットです。
ネットワークとシステムのスクリプト は 同じ恒等式 で アドレス空間、ハッシュ表、ページ数 を見積もり、非正の件数を貼ったときに 無限のビット幅 を出すのではなく はっきり失敗する 必要があります。要求は小さく保ち、丸めた対数をテストに固定すれば、宿題、LMS プラグイン、エッジワーカー向けに 再現可能な二進対数 が得られ、独自の記号数学基盤は不要です。
活用例
教室と宿題の検算
学習者に正の有限数を提出させ、返された log2 がその入力に対して 2^y が等しくなる唯一の指数 y であること(単位分数と 2 の累乗を含む)を確認させます。
ビット幅、探索の深さ、エントロピー
正の大きさをビットへ変換します。アドレス幅、二分探索の深さ、シャノンエントロピー(ビット)を、0 と負を拒む決定的な log2 で求めます。
試験と LMS の自動採点
0・負・非有限入力を拒むオラクルで log2 問題を採点し、欠陥のある採点が受け入れうる −Infinity は返しません。
よくある質問
ある数の 2 を底とする対数はどう求めますか?
例: value 8 は 3 です。2^3 = 8 だからです。
入力が 0 または負のときはどうなりますか?
実数の 2進対数は 厳密に正の数 にしか定義されないため、計算機は −Infinity も NaN も返さず、呼び出しは課金されません。
1/2 の log2 は定義されますか?
はい。 log2(0.5) は −1 です。2 の −1 乗が 1/2 だからです。1/2 の累乗である正の単位分数は 正確な負の整数 を返します。
値が欠ける、または有限数でないときはどうなりますか?
NaN、Infinity、空文字、非数値は拒否され、課金されません。
2を底とする対数は何に使いますか?
代表的なのはビット数を数える用途で、ある大きさを表すのに2進数が何桁必要かが分かります。情報量をビットで表すエントロピーや、二分探索の深さ、アドレス空間の大きさの計算にも使います。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/math/log-2 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"value":8}'const res = await fetch("https://api.kit.forhosting.com/math/log-2", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"value": 8
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/log-2",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"value": 8
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/log-2", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"value":8}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"value":8}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/log-2", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"value": 8
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.log_2",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
技術者は 情報エントロピー(ビット)、二分探索の深さ、IEEE 指数、アドレス空間の見積り に使います。本計算機は 正の有限数 を 1 つ受け取り、その入力の log2 を返し、欠落・0・負・非有限 のときは invalid_input で失敗します。
2進対数とは何か、log2(x) が定義される条件
0 と 負の実数 では実数として未定義なので、本計算機は IEEE 算術の NaN や −Infinity を返す代わりに エラー とします。
入力契約、応答の形、エラーの伝え方
成功時は 解析した value をエコーし、12 桁に丸めた二進対数 log2 を返します(2 の整数乗と 1/2・1/4 のような単位分数は 正確な整数 のままです)。答えの横に恒等式を出せるよう、短い expression と 底の変換 log2(x) は ln(x) を ln(2) で割ったもの を付けます。例: value が 8 なら log2 は 3 で、式は log2(8) = 3 です。例: value が 1/2 なら log2 は −1 です。例: value が 10 なら 3.321928094887 に近い丸めた無理数です。検証失敗は 課金されません。必須の正の有限数 value(2進対数を求めたい数)を 1 つ含む JSON 本体を POST してください。フィールドは 別名 x、n、number でも送れます。ハンドラは 最初に存在する別名 を読み、エラー名は 正規フィールド value に付けます。JSON の数 または 数値文字列 を受け付け、欠落、空文字、真偽値、配列、オブジェクト、NaN、Infinity は invalid_input で失敗します。value が 0、負、または厳密に 0 より大きくないとき、log2 は 非正の実数 で未定義であり IEEE 浮動小数点 は −Infinity や NaN を返すため、要求は拒否されます。長い教室向け手順が必要なら 数値フィールド に ご自身の文 を添えてください。このエンドポイントは 対数を計算し、公式と expression 以外の 途中式は出しません。
log2 計算機が役立つ場面
試験ジェネレータ は、0・負・非有限入力 を 無効 と印す 決定的なオラクル を必要とし、欠陥のある採点が 正しい空欄 と誤認しうる 成功ペイロード は使いません。実装は 純粋な parse の ティア A なので、成功した呼び出しは 公表の基本料金 $0.002 のみで、モデルトークン も 外向き通信 もありません。
技術的な質問
log2 計算機の料金はいくらですか。
ブラウザの道具は無料です。 API 要求は成功した呼び出しごとに前払い KIT 残高から $0.002 です。 無効な入力は課金されません。