B naar MiB omrekenen

B
9,53674316406e-7MiB

1 B = 9,53674316406e-7 MiB

Tik een waarde in en de omrekening van byte naar mebibyte loopt mee terwijl je typt. De factor is precies 9,53674316406e-7: zoveel MiB komt er op 1 B. De berekening gebeurt op je eigen apparaat; na het laden vraagt deze pagina geen server meer iets.

  • Waar het draait In je browser. Het getal dat je intikt komt nooit in een verzoek terecht.
  • Exact per definitie 1 B is precies 9,53674316406e-7 MiB — een definitie, geen afgeronde factor.
  • Antwoordt terwijl je typt Geen knop, geen wachten. Het antwoord staat al op de pagina voordat er een script draait.

byte naar mebibyte in de praktijk

  • 5000000 B is 4,768 MiB

    — een foto die met de telefoon is gemaakt.

  • 1024 B is 0,0009766 MiB

    — een kibibyte, en daar begint de verwarring.

  • 734000000 B is 700 MiB

    — een audio-cd, waar dat getal vandaan komt.

  • 8389000 B is 8 MiB

    — een geheugenblok zoals een programma dat reserveert.

byte en mebibyte in één oogopslag

Elk getal in deze tabel is berekend uit dezelfde definitie als de rekenmachine gebruikt, dus de tabel kan niet afwijken van het antwoord hierboven.
BMiB
100000,00953674316406
200000,0190734863281
500000,0476837158203
1000000,0953674316406
5000000,476837158203
10000000,953674316406
50000004,76837158203
100000009,53674316406

byte en mebibyte

Een byte is acht bits, en dat stond niet altijd vast: de eerste computers gebruikten er zes, zeven of negen. Acht won omdat er een teken in past en omdat het getal netjes in helften uiteenvalt.

Een mebibyte is 1.024 kibibyte, oftewel 1.048.576 bytes. De hulpmiddelen van Linux en de geheugengetallen bedoelen vrijwel altijd dit, ook als er «MB» staat.

Er gaan 1.048.576 bytes in één mebibyte

Deze kant op is het een deling, en wel door een heel getal: er gaan er 1.048.576 in één mebibyte, zonder rest. Het enige lastige is dat de uitkomsten in breuken vallen — een derde, een twaalfde — in plaats van de ronde getallen die de andere richting geeft.

Er gaat toch niets verloren, want de deling is exact. Wil je uitkomst als decimaal niet stil blijven staan — 0,0833… en familie —, dan is dat de breuk die doorschemert, geen fout die binnensluipt.

MiB is de binaire eenheid

Eén MiB is 1.024 van de eenheid eronder; één MB is 1.000. Op deze pagina is dat het verschil tussen 1048576 B en 1000000 B — 4,9 % — en het gat groeit bij elke stap omhoog: op een foto een verwaarloosbare afronding, op een harde schijf een zichtbaar stuk.

Hierin zit het raadsel van de verdwenen opslag volledig. Een schijf die als terabyte verkocht wordt bevat in decimale eenheden precies wat erop staat; Windows telt hem daarna in binaire eenheden maar houdt de decimale naam aan, en daar krimpt het getal zonder dat er iets weg is. macOS telt deze eenheden sinds 10.6 decimaal, en daarom kan dezelfde schijf op twee computers twee maten lijken.

Van een exacte bytetelling naar een veld dat MiB wil

De bytetelling is het betrouwbare getal in deze uitwisseling. Hij komt uit een bestandssysteemaanroep of een content-length-header, kent geen eenheidsdiscussie, en is wat de software uiteindelijk vergelijkt. Het MiB-cijfer is een menselijk gemak erbovenop, en elk probleem in deze richting ontstaat door dat gemak als bron van waarheid te behandelen.

Doe de omzetting dus in de volgorde die de bytetelling gezaghebbend houdt: deel door 1.048.576, beslis waarop je afrondt, en vermenigvuldig terug om te bevestigen dat de limiet die je schreef het bestand dat je mat nog steeds toelaat.

Een bytetelling afronden tot een limiet zonder hem te breken

Een bestand van 10.486.000 bytes is 10,0002 MiB. Geschreven in een uploadlimiet als "10m" is het nu groter dan de limiet en wordt het geweigerd. Naar beneden afronden is de standaardgewoonte, en voor een bovengrens is dat altijd de verkeerde — de grens moet minstens zo groot zijn als het grootste wat hij zou moeten toelaten.

Het spiegelbeeld is een reservering in plaats van een plafond. Ruimte gereserveerd voor een cache moet naar beneden afronden, want naar boven afronden belooft capaciteit die er niet is. Eén vraag beslist steeds de richting: wordt dit getal met een byte fout, wil ik dan liever iets te veel of iets te weinig?

De achtervoegsels die decimaal lijken en dat niet zijn

Veel configuratie accepteert een achtervoegsel, en het achtervoegsel zegt zelden bij welk systeem het hoort. nginx leest k als 1.024 en m als 1.048.576, dus client_max_body_size 10m is 10.485.760 bytes. De JVM doet hetzelfde met -Xmx en -Xms.

Kubernetes is degene om van te leren, want het weigert te gokken. Mi, Gi en Ti zijn de binaire hoeveelheden en M, G en T de decimale, allebei geldig in een manifest, en een geheugenlimiet van 512M is 4,6 procent kleiner dan een van 512Mi. Niets waarschuwt je: het manifest wordt toegepast, de pod start, en de limiet zit niet waar bedoeld.

Machten van twee, en waarom 1.048.576 een schoon getal is

Een mebibyte is 2 tot de twintigste macht, en dat verklaart waarom het opduikt als de natuurlijke grootte voor dingen die een kernel toewijst. Pagina’s zijn 4 KiB, huge pages zijn vaak 2 MiB, en een buffer op een macht van twee gezet, sluit overal netjes op aan zonder rest.

Het praktische gevolg is dat binair gemaakte waarden zich voortplanten. Is je blokgrootte een macht van twee, en je deelgrootte een veelvoud daarvan, en je limiet een veelvoud van je deelgrootte, dan deelt alles precies en heeft geen stap een restje aan het eind.

Object storage, multipart-uploads en deelgrootte-rekenwerk

Een groot object in delen uploaden is waar deze getallen ophouden cosmetisch te zijn. Een deelgrootte gekozen in binaire eenheden verdeelt een bestand in een geheel aantal volle delen plus een rest, en het aantal delen is beperkt, dus de deelgrootte moet groot genoeg zijn dat het object binnen dat plafond past.

De controle is rekenwerk en de moeite waard vóór de overdracht: deel de exacte objectgrootte in bytes door de deelgrootte in bytes, rond naar boven af, en bevestig dat het resultaat binnen de limiet van de provider valt.

Waar een MiB-cijfer informatie verliest die niet terugkomt

10,5 MiB tonen is prima. 10,5 MiB opslaan en later de bytetelling reconstrueren niet, want de weergave heeft alles onder ongeveer duizend bytes weggegooid en er is geen manier om dat terug te krijgen. Manifesten en auditrecords horen de bytetelling te dragen en het vriendelijke cijfer pas bij weergave af te leiden.

Dezelfde regel geldt voor vergelijkingen. Twee objecten allebei getoond als 4,2 MiB kunnen vijftigduizend bytes verschillen, en een deduplicatie- of driftcontrole geschreven tegen de weergegeven waarde noemt ze identiek.

Een byte is acht bits, en een groottevveld telt bytes

De duurste fout op deze pagina is niet de 4,9 procent tussen MB en MiB, het is de factor acht tussen bytes en bits. Opslag- en bestandsgroottes worden in bytes geteld; doorvoer wordt in bits per seconde opgegeven, wat verklaart waarom een verbinding van 100 Mb/s hoogstens 12,5 MB/s levert.

De conventie die ze onderscheidt is een hoofdletter B voor bytes en een kleine letter b voor bits, en die wordt vaak genoeg gevolgd om erop te vertrouwen en vaak genoeg geschonden om te controleren. Oogt een cijfer acht keer te groot of te klein, dan is dat het eerste om te toetsen.

B naar MiB omrekenen: veelgestelde vragen

Hoeveel is 1 B in MiB?

1 B is 9,53674316406e-7 MiB. De waarde is exact en niet afgerond: de verhouding tussen byte en mebibyte ligt per definitie vast.

Wordt wat ik intik ergens heen gestuurd?

Nee. De berekening gebeurt in je browser. Je kunt de verbinding verbreken en gewoon doorrekenen, en dat is meteen de eenvoudigste manier om het na te gaan.

Waarom toont mijn schijf minder ruimte dan erop staat?

Omdat twee verschillende eenheden dezelfde naam dragen. Fabrikanten rekenen 1 GB = 1.000.000.000 bytes; Windows toont gibibytes, dus 1.073.741.824 bytes, maar noemt ze «GB». Dezelfde schijf lijkt daardoor zeven procent kleiner. Er is niets verdwenen.

Andersom: mebibyte naar byte

Eén MiB is 1048580 B. Het is dezelfde verhouding achterstevoren gelezen, dus een uitkomst van de ene pagina die je door de andere haalt, moet weer uitkomen waar hij begon.

Waar deze cijfers vandaan komen

Wat deze pagina over informatie-eenheden beweert, is na te gaan, en dit zijn de documenten die de zaak beslechten.

Hoe deze pagina werkt

De factor is een constante op de pagina en de som is vier bewerkingen, dus er gaat niets ergens heen en er hoeft ook niets heen. Het getal dat je intikt verlaat de browser niet — er is geen verzoek waarin het zou kunnen meereizen.