Was ist ein/eine Mebibyte (MiB)?
Formal Definition
The mebibyte (symbol: MiB) is a unit of digital information storage defined by the International Electrotechnical Commission (IEC) as exactly 2²⁰ bytes, or 1,048,576 bytes. The prefix "mebi-" is a contraction of "mega-binary," and the mebibyte is part of the IEC 80000-13 binary prefix standard introduced in 1998. One mebibyte equals 1,024 kibibytes (KiB).
The mebibyte was created to provide an unambiguous term for the quantity that had traditionally been called a "megabyte" in computing contexts. In computing, memory and storage were historically measured in powers of 1024 due to the binary nature of digital systems, but the same SI prefix "mega" was used — creating ambiguity with the SI definition of mega as exactly 10⁶ (1,000,000). The IEC binary prefix system resolves this: one mebibyte (MiB) is exactly 1,048,576 bytes, while one megabyte (MB) is exactly 1,000,000 bytes.
Size Comparison
One mebibyte is 4.858% larger than one megabyte. While this difference may seem small, it compounds at larger scales and can be significant in practice. A file reported as "100 MB" in decimal contains 100,000,000 bytes, while "100 MiB" in binary contains 104,857,600 bytes — a difference of nearly 5 million bytes. In memory-constrained environments such as embedded systems, firmware development, and operating system kernel programming, this distinction is critical.
Etymology
Construction of the Term
The word "mebibyte" was constructed by the IEC Technical Committee 25 following a systematic naming convention. The prefix "mebi-" combines the first two letters of "mega" with the first two letters of "binary," yielding "mebi" (pronounced MEH-bee). This construction pattern applies to all IEC binary prefixes: kibi, mebi, gibi, tebi, pebi, and exbi. The symbol MiB uses "Mi" for the prefix and "B" for byte.
Linguistic Reception
The term "mebibyte" has faced significant resistance in everyday usage, with many engineers and users finding the IEC binary prefix names awkward or unfamiliar. Critics have noted that words like "mebibyte" and "gibibyte" are phonetically similar and can sound unusual in English. Despite this, the terms have gained steady acceptance in technical documentation, scientific publications, and standards-compliant software over the past two decades.
Precise Definition
IEC 80000-13 Standard
The mebibyte is defined in IEC 80000-13 (formerly IEC 60027-2) as: 1 MiB = 2²⁰ B = 1,048,576 B = 1,024 KiB. The standard explicitly distinguishes this from the megabyte: 1 MB = 10⁶ B = 1,000,000 B = 1,000 kB. Both definitions are precise and unambiguous within their respective frameworks.
International Endorsement
The IEC binary prefixes, including the mebibyte, are endorsed by NIST (in its Guide for the Use of the International System of Units), IEEE (in IEEE 1541-2002), ISO (in ISO/IEC 80000), and BIPM. The standards community has reached consensus that SI prefixes should refer exclusively to powers of 1000, and binary prefixes should be used for powers of 1024. Implementation by software vendors, however, remains inconsistent.
Practical Implications
The difference between MiB and MB affects real-world calculations. When a programmer allocates 256 MB of memory, the operating system typically allocates 256 × 1,048,576 = 268,435,456 bytes (256 MiB). But if a network protocol specifies a 256 MB data limit using the SI definition, it means 256,000,000 bytes. The mebibyte provides a way to specify exactly which interpretation is intended.
Geschichte
Origins of the Megabyte Confusion
The term "megabyte" has been ambiguous since the early days of computing. In the 1970s and 1980s, when computer memory was measured in kilobytes and megabytes, the computing industry universally used these terms to mean powers of 1024. The Intel 8086 processor (1978) could address 1 MB of memory, meaning 1,048,576 bytes. The Commodore Amiga (1985), Macintosh (1984), and IBM PC AT (1984) all used "megabyte" to mean 2²⁰ bytes.
The confusion began when storage manufacturers started using the SI definition. Floppy disks, hard drives, and optical media were marketed using powers of 1000, while operating systems displayed sizes using powers of 1024. This discrepancy became a persistent source of consumer complaints and technical confusion.
The IEC Response
The IEC first published the binary prefix standard in 1998, introducing the mebibyte and its sibling units. The standard underwent revision and was incorporated into IEC 80000-13 in 2008. The goal was straightforward: give the binary interpretation its own distinct name and symbol, leaving "megabyte" to mean exactly 10⁶ bytes as the SI prefix system dictates.
Adoption Timeline
Linux distributions began adopting MiB notation in the mid-2000s. The GNU coreutils added IEC binary prefix support. Ubuntu, Fedora, and other distributions updated their file managers and system tools. Apple took a different approach in 2009, making macOS use strict SI decimal definitions (1 MB = 1,000,000 bytes). Microsoft Windows remains the most significant holdout, continuing to use binary calculations with SI labels through Windows 11.
Aktuelle Verwendung
Software Development
The mebibyte is widely used in software development for specifying memory limits, buffer sizes, and file size constraints. Java Virtual Machine (JVM) memory settings use MiB values: "-Xmx512m" allocates 512 MiB of heap space. Docker container memory limits, Kubernetes resource requests, and cloud function memory allocations are all typically specified in MiB. The Go programming language's runtime reports memory usage in bytes, but developers commonly convert to MiB for readability.
Operating Systems
Linux kernel messages, memory management tools, and system monitors report memory in MiB and GiB. The free command displays memory in kibibytes by default, with -h flag showing human-readable MiB/GiB values. macOS displays memory in decimal MB and GB. Windows displays memory in binary values but labels them as MB and GB, creating a hybrid approach that matches neither standard perfectly.
Networking and Protocols
In networking, file transfer protocols often specify sizes in MiB. FTP, SFTP, and HTTP Content-Length headers use exact byte counts, but user-facing transfer applications display progress in MiB. BitTorrent clients typically display file sizes and transfer rates using binary prefixes (MiB/s).
Embedded Systems and Firmware
Embedded systems commonly have memory measured in exact powers of two: 1 MiB, 2 MiB, 4 MiB, 8 MiB, or 16 MiB of flash storage. Microcontrollers like the ESP32 have 4 MiB of flash memory, and firmware images must fit within these exact binary-sized partitions. The mebibyte is the natural unit for these calculations.
Everyday Use
Common File Sizes
Many everyday files fall in the mebibyte range. A high-resolution smartphone photograph (12 MP, JPEG) is typically 3 to 8 MiB. A three-minute MP3 song at 320 kbps is approximately 7 MiB. A PDF document of 50 pages with images might be 5 to 20 MiB. A one-minute 1080p video clip compressed with H.264 is roughly 15 to 30 MiB depending on bitrate.
Understanding Your Storage
When your computer shows that a folder contains "256 MB" of files, the actual byte count depends on the operating system. On Windows, this means approximately 268 million bytes (256 MiB). On macOS, it means approximately 256 million bytes (256 MB). Understanding this distinction helps explain why a file downloaded from the internet might appear to be a different size depending on which computer you view it on.
Email and Messaging
Email attachment limits are typically specified in mebibytes, though labeled as megabytes. Gmail's 25 MB attachment limit means 25 × 1,000,000 = 25,000,000 bytes. However, base64 encoding used for email attachments increases file size by approximately 33%, so the practical limit is closer to 18.75 MB (17.88 MiB) of original file data.
In Science & Industry
Computer Architecture Research
In computer architecture, the mebibyte is essential for describing cache sizes, memory bandwidth, and page table structures. Modern CPUs have L2 caches of 256 KiB to 2 MiB per core and L3 caches of 8 to 128 MiB shared across cores. Memory bandwidth is measured in MiB/s or GiB/s. Research papers in computer architecture use MiB notation to ensure precision when reporting performance metrics.
Data Compression Research
Compression algorithm benchmarks measure compression ratios using exact byte counts, typically expressed in MiB. The Canterbury Corpus, a standard test suite for compression algorithms, includes files ranging from a few KiB to several MiB. Research papers report compressed sizes in MiB to allow precise comparison between algorithms.
Operating Systems Research
Operating systems research relies on precise memory measurements. Studies of memory allocation patterns, page fault behavior, working set sizes, and memory fragmentation all require unambiguous units. The mebibyte is the standard unit in ACM and IEEE publications on operating systems, virtual memory, and system performance.
Network Protocol Analysis
Network researchers analyze packet captures and traffic patterns using tools that report sizes in MiB. Wireshark, tcpdump, and similar tools display capture file sizes and throughput in both MiB and MB, depending on configuration. Published research on network performance, congestion control, and protocol optimization uses MiB to avoid SI prefix ambiguity.
Interesting Facts
The difference between 1 MiB and 1 MB is 48,576 bytes — enough to store approximately 48 pages of plain text. At the terabyte scale, this discrepancy grows to nearly 100 GiB, equivalent to roughly 25 HD movies.
The original Apple Macintosh (1984) shipped with 128 KiB of RAM, which Apple marketed as '128K.' Its successor, the Macintosh 512K, had exactly 512 KiB (524,288 bytes) — a quantity that can only be expressed cleanly using binary prefixes.
A standard CD-ROM holds 700 MB (700,000,000 bytes) of data, which equals approximately 667.6 MiB. This discrepancy of 32.4 MiB is why early CD burning software sometimes showed confusing capacity figures.
The first computer to ship with 1 MiB of RAM was the VAX-11/780 (1977), which could be configured with up to 8 MiB. At the time, this was an extraordinary amount of memory, costing tens of thousands of dollars.
Video game cartridges provide a clear example of MiB usage: the original Super Nintendo cartridges ranged from 0.5 MiB to 6 MiB, while Nintendo 64 cartridges maxed out at 64 MiB. Modern Switch game cards hold up to 32 GiB.
The Linux kernel's out-of-memory (OOM) killer, which terminates processes when memory runs low, uses exact MiB calculations to determine memory usage. A miscalculation of even a few MiB could mean killing the wrong process.