分析と広告のためのCookie
分析と広告のためにCookieを使っており、どちらもGoogleに送られます。拒否しても、目に見える動作は何も変わりません。プライバシーポリシーを読む
1 B = 0.000001 MB
値を入力すると、バイトからメガバイトへの計算が入力に合わせてその場で進みます。1 B あたり 0.000001 MB.この比は測って求めたものではなく、定義で決まっています。計算はお使いの端末の中で行われ、入力した数字が通信に乗ることはありません。ただし、そのまわりのページのほうは、ほかのどのページとも同じように広告を読み込みます。
5000000 B is 5 MB
— スマートフォンで撮った写真 1 枚.
1024 B is 0.001024 MB
— 1 キビバイト、ややこしさはここから始まる.
5000000 B is 5 MB
— そこそこのビットレートの曲 1 曲.
4000000000 B is 4000 MB
— 標準的な画質の映画 1 本.
| B | MB |
|---|---|
| 1000 | 0.001 |
| 2000 | 0.002 |
| 5000 | 0.005 |
| 10000 | 0.01 |
| 50000 | 0.05 |
| 100000 | 0.1 |
| 500000 | 0.5 |
| 1000000 | 1 |
B を MB に変換
1 バイトは 8 ビットですが、いつもそう決まっていたわけではありません。初期の計算機は 6 ビット、7 ビット、9 ビットを使っていました。8 が勝ったのは、そこに 1 文字が収まり、しかもその数がきれいに半分ずつ割れるからです。
1 メガバイトは 100 万バイトです。記憶装置のメーカーは昔から十進で数えてきました。だからその数字は、コンピューターが表示する数より大きく見えます。
バイトからメガバイトへ移ると、小数点が左へ 6 桁ずれます。ほかには何も変わりません。覚えておく倍率もなければ、丸め方を決める必要もありません。数字は同じ並びのまま、位置だけが動きます。
1,234 B は 0.001234 MB——同じ数字が、ずれただけです。ひと目で検算できる数少ない計算がこれです。結果の数字が始めたときの数字と違っていたら、それを変えたのはこの計算ではありません。
表示より下のすべての層が実際に数えているのはバイトです。書式指定なしのディレクトリー一覧、stat 呼び出しの st_size フィールド、Content-Length ヘッダー、オブジェクトストレージの一覧の size 属性、ログの行が持つ長さのフィールド。すべて整数のバイト数で、この分野で方言を持たない唯一の単位だからです。
API が 5242880 を返せば曖昧さのない事実を伝えていますが、「5.24 MB」を返せば注釈が必要な何かを伝えています。変換はあなたの仕事の最後にすべきことで、そうすることで正確な数字を必要なだけ長く手元に残せます。
このページは 1,000,000 で割ります。mega は 10 の 6 乗を意味する SI 接頭辞で、これはネットワーク標準、ストレージメーカー、あなたが読んでいるヘッダーを定義する仕様書が使う意味です。5,000,000 バイトは 5 MB、12,345,678 バイトは 12.35 MB です。覚える係数はなく、桁の位置が変わるだけです。
二進法での読み方は 1,048,576 で割り、メビバイトの数値を出します。5,000,000 バイトは 4.77 MiB、5,242,880 バイトは 5.00 MiB かつ 5.24 MB です。1 つのファイルに対する 2 つの答えは 4.9 パーセント違い、これは見落とされるほど小さく、宣言された上限と照合するときには効いてくるほど大きい差です。
一般的な Unix ツールは特に指定がなければ 1,024 の意味です。GNU の ls -h は 5,242,880 バイトを 5.0M と表示し、du と df は 1,024 バイトのブロックで報告します。すべてに十進法へ切り替えるフラグ、ls と du の --si があり、接尾辞も kB、MB、GB に変わります。
ブラウザーの開発者ツールやクラウドのコンソールはもっと一貫性がなく、確実な方法は、バイト数がすでに分かっているファイルで確かめることです。ちょうど 1,048,576 バイトのものを用意し、それを 1.0 MB と呼ぶツールは二進法、1.05 MB と呼ぶツールは十進法です。
HTTP レスポンスから取ったバイト数は、ディスク上のファイルより狭いものを測っています。Content-Length は転送される本文の長さで、サーバーが gzip や brotli を適用していれば圧縮後の長さです。HTML や CSS、JavaScript、JSON ではこれが元のサイズの 5 分の 1 から 3 分の 1 程度になることも普通です。
さらに 2 つの見落としがあります。応答ヘッダー自体はこの数字に含まれず、チャンク転送のレスポンスにはそもそも Content-Length がありません。ダウンロードしたファイルと配信されたファイルを比べるなら、展開後のディスク上のファイルどうし、あるいは圧縮どうしで比べてください。
stat 呼び出しはサイズに見える 2 つのフィールドを返し、それぞれ違う問いに答えます。ファイルの長さと、割り当てられたブロック数です。4,096 バイトのブロックを持つファイルシステムでは、1,000 バイトのファイルは長さ 1,000 で占有量 4,096 になります。
ディレクトリー内に小さなファイルが数万個あると、長さの合計より占有容量がずっと大きくなることがあり、これがディスクの空きが内容物より少ない理由の典型です。逆にスパースファイルは長さより少ない容量しか占有しません。変換すべきバイト数はどちらなのか、注記が要ります。
変換されたサイズは判断のためのもので、計算のためのものではありません。4 MB は携帯の写真、5 MB は良い音質の音楽トラック、25 MB は多くのメールサービスが受け付ける上限あたり、100 MB は多くのアップロードフォームが拒否し始める大きさです。4,187,593 バイトを「約 4 MB」に変えることが、この変換の目的そのものです。
メガバイトの数字を再び計算に戻すのは避けてください。小数点 2 桁の MB を往復させると最大 5,000 バイトを失い、100 個のそうした数字から作った合計には見過ごせない誤差が乗ります。
ダウンロードが完全に終わったか確認するにはバイト数を比べる必要があります。途切れたファイルは完全なファイルと同じメガバイトの数字に丸められてしまうことがよくあるからです。アセットの 2 つのビルドを比べる、重複を検出する、チェックサムと長さを突き合わせる、マニフェストの差分を取る——どれも整数が欲しい場面です。
はっきりした境界がある場合も同様です。フィールドの上限、リクエストサイズの上限、メモリー確保の上限はすべてバイト単位で定義され、バイト単位で強制されます。数字について考えるならメガバイトに変換し、行動を起こすならバイトに戻してください。
1 B は 0.000001 MB.画面に出しているのは有効数字 12 桁までです。バイトとメガバイトの比そのものは定義によって決まっている厳密な値で、丸めが入るのは表示のところだけです。
いいえ。計算はブラウザーの中で行われます。通信を切ったままでも計算は続けられますし、それがいちばん手軽な確かめ方でもあります。
同じ名前の単位が 2 つ動いているからです。メーカーは 1 GB を 1,000,000,000 バイト(10 億バイト)として数えます。一方 Windows が表示しているのはギビバイト、つまり 1,073,741,824 バイトで、それを「GB」と呼んでいます。同じディスクが 7 パーセントほど小さく見えるのはこのためです。消えたものは何もありません。
1MBは1000000Bです。同じ関係を逆から読んだだけなので、一方のページの答えをもう一方に通せば、必ず元の値に戻ります。
このページがデータ量の単位について述べていることは検証できます。根拠となる資料は次のとおりです。
係数はページ内の定数で、計算は四則演算だけです。だからどこにも送信されませんし、送信する必要もありません。入力した数値はブラウザーから出ません。運ぶためのリクエストが存在しないからです。