Skip to main content
🟢 Beginner

バイナリから小数点変換器

バイナリ数を小数点に,小数点をバイナリに即座に変換します.最大64ビットの数字をサポートします.この無料変換器は即座に,正確な結果を提供します.

バイナリから小数点への変換の仕組み

バイナリー (ベース-2) は 0 と 1 の桁のみを使用します.各位置は 2 の乗を表し,右から左に倍します.バイナリーを小数点に変換するには,各バイナリー桁をその位数値で掛け,結果を合計します.

例:10112を小数点に変換する

十進数から二進数に,繰り返し2で割って,下から上に残りを記録します. 11 ÷ 2 = 5 R1, 5 ÷ 2 = 2 R1, 2 ÷ 2 = 1 R0, 1 ÷ 2 = 0 R1 -> 残りを上から読みます.1011 について.

この位置記号システムは,小数点と同じ方法で機能します.ただ,ベースが違うだけです.小数点 (ベース-10) で,数字347は,3x102 + 4x101 + 7x100 = 300 + 40 + 7です.バイナリーでは,10の乗の代わりに2の乗で同じ原理を使用します.

バイナリ位数 参照

8ビットバイトはコンピュータの基本単位である.ここに8ビット数 (0 - 255) の完全な位数表があります.

ビット位置2の乗デシマル値
ビット7 (MSB)2⁷128 について
ビット62⁶64
ビット52⁵32
ビット42⁴16
ビット38
ビット24
ビット12
ビット 0 (LSB)2⁰1

バイトは0 (000000002) から255 (111111112) までの任意の値を表すことができます. 2バイト (16ビット) は0 - 65,535をカバーします. 4バイト (32ビット) は0 - 4,294,967,295をカバーします.

2 表の拡張された権限

プログラマーやコンピュータ科学者の場合,メモリアドレス,データタイプ,システムの限界を理解するために,2から264の乗を知ることが不可欠です.

パワーデシマル値重要性
2⁰1最小単位 (1 ビット)
2⁸256 について1バイトの範囲 (0 - 255)
210 について1,024 人1 キビバイト
216 について65,536 人16 ビット範囲; TCP ポートの制限
220 について1,048,576 人1 MiB (メビバイト)
224 について16,777,216 人24ビットカラー (16.7Mカラー)
230 について1,073,741,824 人1 GiB (ギビバイト)
232 について4,294,967,296 人32 ビットアドレス空間;IPv4 最大
240 について1,099,511,627,776 人1 TiB (テビバイト)
264 について18,446,744,073,709,551,616 年 月 日64 ビットアドレス空間; 現代のCPU

バイナリプレフィックス (KiB, MiB, GiB -- 2の乗) と SIプレフィックス (KB, MB, GB -- 10の乗) の違いに注意してください. 1 GB = 1,000,000,000 バイト; 1 GiB = 1,073,741,824 バイト. この ~7% の違いが, "500 GB" のハードディスクが OS で ~465 GiB として表示される理由を説明します (通常は,内部でバイナリ単位を使用します).

コンピュータにおける一般的な二進数値

これらのバイナリ値は,プログラミング,ネットワーク,およびシステム管理で頻繁に現れる.

バイナリー十進数ヘクサデシマル背景
00000000 について00x00 についてNULLバイト,ブラックカラーチャンネル
00001010 について100x0Aラインフィード (LF) 文字 -- Unix newline
00001101 について130x0Dキャリッジ・リターン (CR) - ウィンドウズ・ニューライン部分
00100000 について320から20スペース文字 (ASCII)
01000001 について650x41 試聴するASCII"A"
01100001 について970x61 試聴するASCII"a" (5ビットで"A"と異なる)
01111111 について127 について0x7Fローカルホスト IP (最後のオクテット); DEL 文字
10000000 年間128 について0x80拡張されたASCII/サインビットの開始
11000000 について192 について0xC0クラスCのネットワークプレフィックス (192.x.x.x)
11111111 について255 について0xFF放送;最大バイト;RGBで白色

バイナリ,ヘクサデシマル,オクトル比較

プログラマは文脈によって異なる数字ベースを使用します. それぞれのシステムで同じ値が表示されます.

十進数バイナリーヘクサデシマルオクタール使用ケース
00000 について0から0へ0o0 0o0ゼロ / 無
70111 について0x70 0 0 0 0 0 0Unix の許可 (rwx)
101010 について0xA0 0 0 0 0 0 0 0
151111 について0xF について0o17 について最大 4 ビット (ニップル)
1610000 年間0x10 について0 0 0 0 0 0
127 について1111111 について0x7F0o177 についてマックスサイン8ビット
255 について11111111 について0xFF0o377 についてマックス 無サイン 8 ビット
511 について111111111 について0x1FF0 0 0 0 0 0 0 0 0UNIXの許可 rwxrwxrwx
1023 について1111111111 について0x3FF0o1777 オーケストラ最大10ビット (ADC)

ヘクサデシマルは,各ヘクサ桁が正確に4つのバイナリビットにマップされるため,バイナリに対する最も一般的な略語です.変換は些細なものです.オクタルは1桁あたり3ビットでマップされ,主にUnixのファイル権限 (例えば,chmod 755= 111 101 101 バイナリで = rwxr-xr-x).

署名された二進数 (二の補足)

コンピュータは負の数を2の補足IEEEによって定義され,事実上すべての現代のプロセッサで使用されています. 8ビット 2の補足システムでは:

バイナリーサインなしの小数点署名 (両者の補足)
00000000 について00
00000001 について1+1
01111111 について127 について+127 (最大陽性)
10000000 年間128 について-128 (マイナス)
10000001 について129 について-127 について
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■254 について−2
11111111 について255 について−1

2の補数にある数を否定するには,すべてのビットを逆転して1を追加します.例えば,+5 = 00000101 -> 逆転 -> 11111010 -> 1を追加 -> 11111011 = -5.

一般的な整数型の範囲は

タイプビットサインなしの範囲シグネチャー範囲
バイト / uint880から255-128から+127まで
ショート / int16160 から 65,535-32,768から+32,767まで
int / int32320 から 4,294,967,295-2,147,483,648から+2,147,483,647まで
ロング / int64640から18.4×1018-9.2 x 1018から+9.2 x 1018まで

日常の技術におけるバイナリ

バイナリーは,トランジスタが2つの安定状態 (オン/オフ,1/0) を有しているため,すべての近代的なコンピューティングの基礎です.主な用途:

バイナリを直接理解することは,プログラミング (ビット毎の操作,フラグ),ネットワーク (IP/サブネット計算),および低レベルのハードウェアでの作業に役立ちます.

バイナリー算数:加算と減算

バイナリ算法は,十進法と同じルールに従っているが,数字は2つしかない.加算表は次のとおりである.

AB合計持って行け
0000
0110
1010
1101

例: 1011 + 0110

右から左へ: 1+0=1, 1+1=10 (書き込み 0 持ち込み 1), 0+1+1=10 (書き込み 0 持ち込み 1), 1+0+1=10 (書き込み 0 持ち込み 1). 結果:10001 について(十進数: 11+6=17)

ハードウェアでの減算は,通常,減算の二乗を足すことによって実行されます.A-Bを計算するには,プロセッサはA + (-B) を計算し,ここで -BはBの二乗です.これは,1つの加算回路が加算と減算の両方を処理できるようにします.

ビット毎の操作

プログラミング言語は,個々のビットを操作するビット毎のオペレータを提供する.これらは,低レベルのプログラミング,エンベデッドシステム,およびパフォーマンスの最適化に不可欠である.

運用シンボル例 (8 ビット)結果使用ケース
そして&10110101及び1111000010110000 その他マスキングビット,抽出フィールド
OR|10110101 について10111111 についてビットをセットし,フラグを組み合わせる
XOR について^10110101 ^ 1111111101001010 からトーグリングビット,単純な暗号化
しない~~1011010101001010 からビット反転
左のシフト<<00000101 << 200010100 について2nで掛ける
右にシフトする>>00010100 >> 200000101 について2nで割る

ビットシフトは,多くのプロセッサで掛け算/割り算よりも大幅に速い.x << 1相当するx × 2そして,x >> 1相当するx ÷ 2ゲームエンジンと組み込みファームウェアは,パフォーマンスのためにこれらの操作を広く使用します.

バイナリーコードデシマル (BCD)

バイナリー・コーディング・デシマルは,それぞれの10進数値を独自の4ビットバイナリーパターンで表します.純粋なバイナリーとは異なり,BCDは10進数構造を保持します.

十進数純粋バイナリBCD
00000 について0000 について
50101 について0101 について
91001 について1001 について
101010 について千万 千万 千万
42101010 について0100 0010 について
991100011 について1001 1001 について
255 について11111111 について0010 0101 0101

BCDは純粋なバイナリよりも空間効率が低い (16の可能な4ビット組み合わせのうち10が使用されている),しかし,小数点表示を簡素化します.各ニッブルは直接表示された数字にマップされます.BCDはデジタルクロック,電卓,金融システム (正確な小数点表示が重要な場所),および古いメインフレームデータベース (COBOL,IBM EBCDIC) で使用されます.

浮動点バイナリ (IEEE 754)

3.14) を使って二進法で保存されます.IEEE 754 について標準.32ビット (単一精度) フローットは3つの部分があります.

フィールドビット目的
サイン10 = 陽性,1 = 陰性
エクスポーネント8バイアス指数 (バイアス=127)
マンティッサ (意味)23分数部分 (暗黙の先頭 1)

例:小数点数-6.5 でしたIEEE 754 単一精度では

  1. 記号 = 1 (マイナス)
  2. バイナリで 6.5 = 110.12 = 1.101 × 22 (正規化)
  3. エクスポーネント = 2 + 127 (バイアス) = 129 = 100000012
  4. マンティッサ = 10100000000000000000000 (23 ビット,暗黙の先頭 1 は省略された)
  5. 完全な代表:1 10000001 10100000000000000000000 年 月 日

だから,0.1 + 0.2 ≠ 0.3 は,ほとんどのプログラミング言語で,小数点分数 0.1 は,バイナリで無限に繰り返される表現がある (小数点の1/3 = 0.333...), だから,小数のエラーを導入して,丸めなければならない. 金融計算には,小数点算数ライブラリ (PythonのdecimalJava のモジュールBigDecimal) の代わりに 浮動小数点で

キャラクターエンコーディング: ASCII から UTF-8

テキストは文字にマッピングされた二進数として格納されます.文字エンコーディングの進化は,コンピューティングのグローバルな拡大を反映しています.

コード化年 月文字毎のビット支持するキャラクターメモ
ASCII1963 年7 (8に格納される)128 について英語の文字,数字,句読点
拡張されたASCII (ISO 8859-1)1987 年8256 について西ヨーロッパ文字 (é, ñ, ü)
UTF-8 について1993 年8 - 32 (変数)1,112,064 人ASCIIと後方互換性;ウェブ標準
UTF-16 について1996 年16 - 32 (変数)1,112,064 人Java,Windows,JavaScriptの内部で使用されている
UTF-322000 年32 (固定)1,112,064 人固定幅; ラテン語の文字の余剰スペース

UTF-8は,ASCII文字を1バイト (普通のASCIIと同じ),欧州文字を2バイト,CJK文字を3バイト,エモジを4バイトでコードします.すべてのウェブページの98%以上がUTF-8エンコーディングを使用しています (W3Techs, 2024).

バイナリー論理ゲート

ロジックゲートは,すべてのデジタル回路の物理的な構成要素である.各ゲートは,1 つまたは 2 つの入力ビットで単純なバイナリ操作を実行します.

ゲートシンボル真実の表 (A,B -> 出力)記述
そしてA·B0.0->0;0.1->0;1.0->0;1.1->1アウトプットは,両方のインプットが 1 である場合にのみ 1 です.
ORA+B0,0->0;0,1->1;1,0->1;1,1->1少なくとも1つの入力が1であるとき,出力は1です.
しない¬A0->1; 1->0入力を逆にする
NAND について■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■■■■■■■■■■■■■■■■■■■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■0.0->1; 0.1->1; 1.0->1; 1.1->0そして NOT -- ユニバーサル・ゲート
XOR についてA B0.0->0;0.1->1;1.0->1;1.1->0インプットが異なる場合,出力は 1 です.

NANDゲートと呼ばれるユニバーサルゲート他の論理関数は,NANDゲートだけで構築できるからです.現代のCPUには,NANDゲートとNORゲートに並べられた数十億個のトランジスタがあり,それらはアドダー,マルチプレクサー,フリップフロップ,およびプロセッサの他のすべての構成要素に結合されます.Apple M3チップには,約25億個のトランジスタが含まれています.それぞれは, (1) または (0) でオンまたはオフされている微小なバイナリスイッチです.

XORゲートには特殊な特性がある. 2 つの入力が異なる場合, 1 を出力する. これにより,バイナリ加算 (半加算子の和ビット),エラー検出 (対数チェック),および単純な暗号化 (XOR暗号) の基礎となる.

バイナリーの歴史:ライブニッツから現代コンピューティングまで

二進法には 豊かな知的歴史があります

年 月人/イベント貢献
~紀元前300年ピンガラ (インド人数学者)詩的なメーターを分類するために使用されたバイナリのようなシステム
1679 年ゴットフリード・ライブニッツ公式に現代の二進数算を記述し,中国のI Chingとのつながりを確認した.
1847 年ジョージ・ブル"論理の数学分析"を出版しました - ブール代数基礎
1937 年クラウド・シャノン (MIT論文)ブル代数が電気スイッチング回路をモデル化できることを示した.
1945年 アメリカジョン・フォン・ノイマン提案された保存プログラムバイナリコンピュータアーキテクチャ (フォン・ノイマンアーキテクチャ)
1971 年インテル4004最初の商用マイクロプロセッサ -- 2,300 トランジスタ, 4 ビットバイナリ
2024 年現代のCPU数十億のトランジスタ; 64 ビットバイナリアーキテクチャ標準

レイブニッツは,すべての数字を0と1で表すことができるという洞察は,純粋に数学的なものだった.彼は決して電子コンピューターを想像していなかった.シャノンの1937年の修士論文は,ブール式 (二進数) 論理を電気リレーに接続し,すべてのデジタルエレクトロニクスの理論的基礎を築いた.それは"おそらく20世紀の最も重要な修士論文"と呼ばれている.

ネットワークにおけるバイナリ: IP アドレスとサブネットマスク

ネットワーク管理にはバイナリを理解することが不可欠である.IPv4アドレスとサブネットマスクは32ビットバイナリ番号である.

記述ドットされた小数点バイナリー
IP アドレス192.168.1.100 税金について11000000.10101000.00000001.01100100 について
サブネットマスク (/24)255.255.255.0■ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■
ネットワークアドレス192.168.1.011000000.10101000.00000001.00000000 及び 及び 及び
放送アドレス192.168.1.25511000000.10101000.00000001.11111111 について

ネットワーク アドレスは,サブネット マスクで IP を AND することで計算されます. ブロードキャスト アドレスは,すべてのホスト ビットを 1 に設定します. 使用可能なホスト アドレスの数 = 2(32 プレフィックス)24時間ネットワークの場合: 28 - 2 = 254個の使用可能なホスト.

一般的なサブネットサイズ:

CIDRサブネットマスクホスト典型的な使用
/32 について255.255.255.2551単一のホストルート
/30 について255.255.255.2522ポイントツーポイントリンク
/24 について255.255.255.0254 について標準LAN
/16 について255.255.0.065,534 人大規模なキャンパスネットワーク
/8255.0.0.016777214 人クラスAの割り当て

よく 聞かれる 質問

バイナリ1100を 十進数に変換するには?

1x8 + 1x4 + 0x2 + 0x1 = 8 + 4 = 12 です. だから,バイナリ1100 = 十進数12です.

255は2進法で何ですか?

バイナリで 255 は 11111111 です. すべての 8 ビットは 1 に設定されます. これは 1 バイトの最大値であり,ネットワーク (サブネットマスク 255.255.255.0) とカラー値 (フルレッド = 255, 0, 0) で表示されます.

100をバイナリに変換するにはどうすればいいですか?

100÷2=50 R0,50÷2=25 R0,25÷2=12 R1,12÷2=6 R0,6÷2=3 R0,3÷2=1 R1,1÷2=0 R1を2で繰り返す.残りを上向きに読む: 11001002.確認する: 64+32+4 = 100.

バイナリとヘクサデシマルの違いは何ですか?

バイナリーはベース2 (桁0−1) を用いる.ヘクサデシマルはベース16 (桁0−9,A−F) を用いる.ヘクサはバイナリーのコンパクトな略語である.各ヘクサ桁は正確に4つのバイナリビットを表す.例えば,ヘクサFF=バイナリ11111111=デシマル255である.

なぜコンピューターは 桁数ではなく 二進数を使うのでしょうか?

電子回路は自然にバイナリである.トランジスタはオン (1) またはオフ (0),電圧は高または低である.デシマルは10の異なる電圧レベルを必要とし,ハードウェアで信頼性のある実装は困難である.バイナリはノイズ耐性であり,論理的真偽操作に完璧にマップされる.

2の補足とは何か?

2の補足は,サインされた (正数と負数) 整数を二進法で表す標準的な方法である. 数値の2の補足 (負数) を求めるには,すべてのビットを逆転して 1 を足す. 8 ビットシステムでは, +5 は 00000101 で, -5 は 11111011. 左端のビットがサインビットである: 0 = 正数, 1 = 負数. このシステムは,ハードウェアが加算と減算の両方に同じアドダー回路を使用することを可能にします.

バイナリからヘクサデシマルに変換するには?

バイナリ桁を右から左に4のセットに分けて,それぞれのグループを変換します.例: 101101012 -> 1011 0101 -> B516. グループ化は: 0000=0, 0001=1, 0010=2, ..., 1001=9, 1010=A, 1011=B, 1100=C, 1101=D, 1110=E, 1111=Fです.