The byte is a
unit of digital information that most commonly consists of eight
bit
The bit is the most basic unit of information in computing and digital communications. The name is a portmanteau of binary digit. The bit represents a logical state with one of two possible values. These values are most commonly represented a ...
s. Historically, the byte was the number of bits used to encode a single
character
Character or Characters may refer to:
Arts, entertainment, and media Literature
* ''Character'' (novel), a 1936 Dutch novel by Ferdinand Bordewijk
* ''Characters'' (Theophrastus), a classical Greek set of character sketches attributed to The ...
of text in a computer
and for this reason it is the smallest
addressable unit of
memory
Memory is the faculty of the mind by which data or information is encoded, stored, and retrieved when needed. It is the retention of information over time for the purpose of influencing future action. If past events could not be remembered ...
in many
computer architecture
In computer engineering, computer architecture is a description of the structure of a computer system made from component parts. It can sometimes be a high-level description that ignores details of the implementation. At a more detailed level, the ...
s. To disambiguate arbitrarily sized bytes from the common
8-bit
In computer architecture, 8-bit integers or other data units are those that are 8 bits wide (1 octet). Also, 8-bit central processing unit (CPU) and arithmetic logic unit (ALU) architectures are those that are based on registers or data buses of ...
definition,
network protocol documents such as
The Internet Protocol () refer to an 8-bit byte as an
octet
Octet may refer to:
Music
* Octet (music), ensemble consisting of eight instruments or voices, or composition written for such an ensemble
** String octet, a piece of music written for eight string instruments
*** Octet (Mendelssohn), 1825 com ...
. Those bits in an octet are usually counted with numbering from 0 to 7 or 7 to 0 depending on the
bit endianness. The first bit is number 0, making the eighth bit number 7.
The size of the byte has historically been
hardware-dependent and no definitive standards existed that mandated the size. Sizes from 1 to 48 bits have been used.
The
six-bit character code was an often-used implementation in early encoding systems, and computers using six-bit and nine-bit bytes were common in the 1960s. These systems often had
memory words of 12, 18, 24, 30, 36, 48, or 60 bits, corresponding to 2, 3, 4, 5, 6, 8, or 10 six-bit bytes. In this era, bit groupings in the instruction stream were often referred to as ''
syllables'' or ''slab'', before the term ''byte'' became common.
The modern
de facto standard of eight bits, as documented in ISO/IEC 2382-1:1993, is a convenient
power of two
A power of two is a number of the form where is an integer, that is, the result of exponentiation with number two as the base and integer as the exponent.
In a context where only integers are considered, is restricted to non-negati ...
permitting the
binary-encoded values 0 through 255 for one byte—2 to the power of 8 is 256.
The international standard
IEC 80000-13 codified this common meaning. Many types of applications use information representable in eight or fewer bits and processor designers commonly optimize for this usage. The popularity of major commercial computing architectures has aided in the ubiquitous acceptance of the 8-bit byte.
Modern architectures typically use 32- or 64-bit words, built of four or eight bytes, respectively.
The unit symbol for the byte was designated as the upper-case letter B by the
International Electrotechnical Commission
The International Electrotechnical Commission (IEC; in French: ''Commission électrotechnique internationale'') is an international standards organization that prepares and publishes international standards for all electrical, electronic and ...
(IEC) and
Institute of Electrical and Electronics Engineers
The Institute of Electrical and Electronics Engineers (IEEE) is a 501(c)(3) professional association for electronic engineering and electrical engineering (and associated disciplines) with its corporate office in New York City and its operat ...
(IEEE).
Internationally, the unit ''
octet
Octet may refer to:
Music
* Octet (music), ensemble consisting of eight instruments or voices, or composition written for such an ensemble
** String octet, a piece of music written for eight string instruments
*** Octet (Mendelssohn), 1825 com ...
'', symbol o, explicitly defines a sequence of eight bits, eliminating the potential ambiguity of the term "byte".
Etymology and history
The term ''byte'' was coined by
Werner Buchholz in June 1956,
during the early design phase for the
IBM Stretch computer, which had addressing to the bit and variable field length (VFL) instructions with a byte size encoded in the instruction.
It is a deliberate respelling of ''
bite'' to avoid accidental mutation to ''bit''.
Another origin of ''byte'' for bit groups smaller than a computer's word size, and in particular groups of
four bits, is on record by Louis G. Dooley, who claimed he coined the term while working with
Jules Schwartz and Dick Beeler on an air defense system called
SAGE at
MIT Lincoln Laboratory
The MIT Lincoln Laboratory, located in Lexington, Massachusetts, is a United States Department of Defense federally funded research and development center chartered to apply advanced technology to problems of national security. Research and d ...
in 1956 or 1957, which was jointly developed by
Rand, MIT, and IBM.
Later on, Schwartz's language
JOVIAL actually used the term, but the author recalled vaguely that it was derived from
AN/FSQ-31.
Early computers used a variety of four-bit
binary-coded decimal
In computing and electronic systems, binary-coded decimal (BCD) is a class of binary encodings of decimal numbers where each digit is represented by a fixed number of bits, usually four or eight. Sometimes, special bit patterns are used fo ...
(BCD) representations and the
six-bit codes for printable graphic patterns common in the
U.S. Army (
FIELDATA) and
Navy
A navy, naval force, or maritime force is the branch of a nation's armed forces principally designated for naval and amphibious warfare; namely, lake-borne, riverine, littoral, or ocean-borne combat operations and related functions. It include ...
. These representations included alphanumeric characters and special graphical symbols. These sets were expanded in 1963 to seven bits of coding, called the
American Standard Code for Information Interchange (ASCII) as the
Federal Information Processing Standard
The Federal Information Processing Standards (FIPS) of the United States are a set of publicly announced standards that the National Institute of Standards and Technology (NIST) has developed for use in computer systems of non-military, America ...
, which replaced the incompatible teleprinter codes in use by different branches of the U.S. government and universities during the 1960s. ASCII included the distinction of upper- and lowercase alphabets and a set of
control characters to facilitate the transmission of written language as well as printing device functions, such as page advance and line feed, and the physical or logical control of data flow over the transmission media.
During the early 1960s, while also active in ASCII standardization, IBM simultaneously introduced in its product line of
System/360
The IBM System/360 (S/360) is a family of mainframe computer systems that was announced by IBM on April 7, 1964, and delivered between 1965 and 1978. It was the first family of computers designed to cover both commercial and scientific applic ...
the eight-bit
Extended Binary Coded Decimal Interchange Code (EBCDIC), an expansion of their
six-bit binary-coded decimal (BCDIC) representations used in earlier card punches.
The prominence of the System/360 led to the ubiquitous adoption of the eight-bit storage size,
while in detail the EBCDIC and ASCII encoding schemes are different.
In the early 1960s,
AT&T
AT&T Inc. is an American multinational telecommunications holding company headquartered at Whitacre Tower in Downtown Dallas, Texas. It is the world's largest telecommunications company by revenue and the third largest provider of mobile tel ...
introduced
digital telephony
Telephony ( ) is the field of technology involving the development, application, and deployment of telecommunication services for the purpose of electronic transmission of voice, fax, or data, between distant parties. The history of telephony is i ...
on long-distance
trunk lines. These used the eight-bit
μ-law encoding. This large investment promised to reduce transmission costs for eight-bit data.
The development of
eight-bit microprocessor
A microprocessor is a computer processor where the data processing logic and control is included on a single integrated circuit, or a small number of integrated circuits. The microprocessor contains the arithmetic, logic, and control circu ...
s in the 1970s popularized this storage size. Microprocessors such as the
Intel 8008, the direct predecessor of the
8080 and the
8086
The 8086 (also called iAPX 86) is a 16-bit microprocessor chip designed by Intel between early 1976 and June 8, 1978, when it was released. The Intel 8088, released July 1, 1979, is a slightly modified chip with an external 8-bit data bus (allo ...
, used in early personal computers, could also perform a small number of operations on the
four-bit pairs in a byte, such as the decimal-add-adjust (DAA) instruction. A four-bit quantity is often called a
nibble, also ''nybble'', which is conveniently represented by a single
hexadecimal
In mathematics and computing, the hexadecimal (also base-16 or simply hex) numeral system is a positional numeral system that represents numbers using a radix (base) of 16. Unlike the decimal system representing numbers using 10 symbols, h ...
digit.
The term ''
octet
Octet may refer to:
Music
* Octet (music), ensemble consisting of eight instruments or voices, or composition written for such an ensemble
** String octet, a piece of music written for eight string instruments
*** Octet (Mendelssohn), 1825 com ...
'' is used to unambiguously specify a size of eight bits.
It is used extensively in
protocol definitions.
Historically, the term ''octad'' or ''octade'' was used to denote eight bits as well at least in Western Europe;
however, this usage is no longer common. The exact origin of the term is unclear, but it can be found in British, Dutch, and German sources of the 1960s and 1970s, and throughout the documentation of
Philips
Koninklijke Philips N.V. (), commonly shortened to Philips, is a Dutch multinational conglomerate corporation that was founded in Eindhoven in 1891. Since 1997, it has been mostly headquartered in Amsterdam, though the Benelux headquarters is ...
mainframe computers.
Unit symbol
The unit symbol for the byte is specified in
IEC 80000-13,
IEEE 1541 and the Metric Interchange Format
as the upper-case character B.
In the
International System of Quantities
The International System of Quantities (ISQ) consists of the quantities used in physics and in modern science in general, starting with basic quantities such as length and mass, and the relationships between those quantities. This system underl ...
(ISQ), B is the symbol of the ''
bel BEL can be an abbreviation for:
* The ISO 3166-1 alpha-3 country code for Belgium
* ''BEL'' or bell character in the C0 control code set
* Belarusian language, in the ISO 639-2 and SIL country code lists
* Bharat Electronics Limited, an Indian stat ...
'', a unit of logarithmic power ratio named after
Alexander Graham Bell
Alexander Graham Bell (, born Alexander Bell; March 3, 1847 – August 2, 1922) was a Scottish-born inventor, scientist and engineer who is credited with patenting the first practical telephone. He also co-founded the American Telephone and T ...
, creating a conflict with the IEC specification. However, little danger of confusion exists, because the bel is a rarely used unit. It is used primarily in its decadic fraction, the
decibel (dB), for
signal strength and
sound pressure level measurements, while a unit for one-tenth of a byte, the decibyte, and other fractions, are only used in derived units, such as transmission rates.
The lowercase letter o for
octet
Octet may refer to:
Music
* Octet (music), ensemble consisting of eight instruments or voices, or composition written for such an ensemble
** String octet, a piece of music written for eight string instruments
*** Octet (Mendelssohn), 1825 com ...
is defined as the symbol for octet in IEC 80000-13 and is commonly used in languages such as
French
French (french: français(e), link=no) may refer to:
* Something of, from, or related to France
** French language, which originated in France, and its various dialects and accents
** French people, a nation and ethnic group identified with Franc ...
and
Romanian, and is also combined with metric prefixes for multiples, for example ko and Mo.
Multiple-byte units
More than one system exists to define larger units based on the byte. Some systems are based on
powers of 10
Powers may refer to:
Arts and media
* Powers (comics), ''Powers'' (comics), a comic book series by Brian Michael Bendis and Michael Avon Oeming
** Powers (American TV series), ''Powers'' (American TV series), a 2015–2016 series based on the com ...
; other systems are based on
powers of 2. Nomenclature for these systems has been the subject of confusion. Systems based on powers of 10 reliably use standard
SI prefix
The International System of Units, known by the international abbreviation SI in all languages and sometimes pleonastically as the SI system, is the modern form of the metric system and the world's most widely used system of measurement. ...
es (''
kilo'', ''
mega'', ''
giga
Giga ( or ) is a unit prefix in the metric system denoting a factor of a short-scale billion or long-scale milliard (109 or ). It has the symbol G.
''Giga'' is derived from the Greek word (''gígas''), meaning "giant". The ''Oxford English Di ...
'', ...) and their corresponding symbols (k, M, G, ...). Systems based on powers of 2, however, might use binary prefixes (''kibi'', ''mebi'', ''gibi'', ...) and their corresponding symbols (Ki, Mi, Gi, ...) ''or'' they might use the prefixes K, M, and G, creating ambiguity.
While the numerical difference between the decimal and binary interpretations is relatively small for the kilobyte (about 2% smaller than the kibibyte), the systems deviate increasingly as units grow larger (the relative deviation grows by 2.4% for each three orders of magnitude). For example, a power-of-10-based yottabyte is about 17% smaller than power-of-2-based yobibyte.
Units based on powers of 10
Definition of prefixes using powers of 10—in which 1 ''kilobyte'' (symbol kB) is defined to equal 1,000 bytes—is recommended by the
International Electrotechnical Commission
The International Electrotechnical Commission (IEC; in French: ''Commission électrotechnique internationale'') is an international standards organization that prepares and publishes international standards for all electrical, electronic and ...
(IEC).
[Prefixes for Binary Multiples](_blank)
— The NIST Reference on Constants, Units, and Uncertainty The IEC standard defines eight such multiples, up to 1 yottabyte (YB), equal to 1000
8 bytes. The additional prefixes ''ronna-'' for 1000
9 and ''quetta-'' for 1000
10 were adopted by the
International Bureau of Weights and Measures
The International Bureau of Weights and Measures (french: Bureau international des poids et mesures, BIPM) is an intergovernmental organisation, through which its 59 member-states act together on measurement standards in four areas: chemistry ...
(BIPM) in 2022.
This definition is most commonly used for
data-rate units in
computer network
A computer network is a set of computers sharing resources located on or provided by network nodes. The computers use common communication protocols over digital interconnections to communicate with each other. These interconnections ar ...
s, internal bus, hard drive and flash media transfer speeds, and for the capacities of most
storage media, particularly
hard drives,
flash-based storage, and
DVDs.
Operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
s that use this definition include
macOS
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac (computer), Mac computers. Within the market of ...
,
iOS,
Ubuntu, and
Debian
Debian (), also known as Debian GNU/Linux, is a Linux distribution composed of free and open-source software, developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. The first version of De ...
. It is also consistent with the other uses of the
SI prefix
The International System of Units, known by the international abbreviation SI in all languages and sometimes pleonastically as the SI system, is the modern form of the metric system and the world's most widely used system of measurement. ...
es in computing, such as
CPU clock speeds or
measures of performance.
Units based on powers of 2
A system of units based on
powers of 2 in which 1 kibibyte (KiB) is equal to 1,024 (i.e., 2
10) bytes is defined by international standard IEC 80000-13 and is supported by national and international standards bodies (
BIPM,
IEC,
NIST
The National Institute of Standards and Technology (NIST) is an agency of the United States Department of Commerce whose mission is to promote American innovation and industrial competitiveness. NIST's activities are organized into physical sc ...
). The IEC standard defines eight such multiples, up to 1 yobibyte (YiB), equal to 1024
8 bytes. The natural binary counterparts to ''ronna-'' and ''quetta-'' were given in a consultation paper of the International Committee for Weights and Measures' Consultative Committee for Units (CCU) as ''robi-'' (Ri, 1024
9) and ''quebi-'' (Qi, 1024
10), but they have not yet been adopted by the IEC and ISO.
An alternate system of nomenclature for the same units (referred to here as the ''customary convention''), in which 1 ''kilobyte'' (KB) is equal to 1,024 bytes, 1 ''megabyte'' (MB) is equal to 1024
2 bytes and 1 ''gigabyte'' (GB) is equal to 1024
3 bytes is mentioned by a 1990s
JEDEC standard. Only the first three multiples (up to GB) are mentioned by the JEDEC standard, which makes no mention of TB and larger. The customary convention is used by the
Microsoft Windows operating system
and
random-access memory
Random-access memory (RAM; ) is a form of computer memory that can be read and changed in any order, typically used to store working data and machine code. A random-access memory device allows data items to be read or written in almost t ...
capacity, such as main memory and
CPU cache
A CPU cache is a hardware cache used by the central processing unit (CPU) of a computer to reduce the average cost (time or energy) to access data from the main memory. A cache is a smaller, faster memory, located closer to a processor core, wh ...
size, and in marketing and billing by telecommunication companies, such as
Vodafone
Vodafone Group Public limited company, plc () is a British Multinational corporation, multinational Telephone company, telecommunications company. Its registered office and Headquarters, global headquarters are in Newbury, Berkshire, England. It ...
,
AT&T
AT&T Inc. is an American multinational telecommunications holding company headquartered at Whitacre Tower in Downtown Dallas, Texas. It is the world's largest telecommunications company by revenue and the third largest provider of mobile tel ...
,
Orange and
Telstra
Telstra Group Limited is an Australian telecommunications company that builds and operates telecommunications networks and markets voice, mobile, internet access, pay television and other products and services. It is a member of the S&P/ASX ...
.
This definition was used by Apple Inc. operating systems prior to Mac OS X 10.6 Snow Leopard and iOS 10 before switching to units based on powers of 10.
Parochial units
Various computer vendors have coined terms for data of various sizes, sometimes with different sizes for the same term even within a single vendor. These terms include ''double word'', ''half word'', ''long word'', ''quad word'', ''slab'', ''superword'' and ''syllable''. There are also informal terms. e.g., ''half byte'' and ''nybble'' for 4 bits, ''octal K'' for .
History of the conflicting definitions
Contemporary computer memory has a
binary architecture making a definition of memory units based on powers of 2 most practical. The use of the metric prefix ''kilo'' for binary multiples arose as a convenience, because 1,024 is approximately 1,000.
This definition was popular in early decades of
personal computing, with products like the
Tandon
Tandon (or Tandan, Tanden, or Tondon) is a surname found among Hindu Khatris and Sikhs of Punjab, India. It is derived from a Khatri clan.
Notable people
Notable people include:
Activists
*Purushottam Das Tandon, ''Bharat Ratna'', Indian freed ...
5-inch
DD floppy format (holding 368,640 bytes) being advertised as "360 KB", following the 1,024-byte convention. It was not universal, however. The
Shugart SA-400 5-inch
floppy disk
A floppy disk or floppy diskette (casually referred to as a floppy, or a diskette) is an obsolescent type of disk storage composed of a thin and flexible disk of a magnetic storage medium in a square or nearly square plastic enclosure lined ...
held 109,375 bytes unformatted, and was advertised as "110 Kbyte", using the 1000 convention. Likewise, the 8-inch
DEC RX01 floppy (1975) held 256,256 bytes formatted, and was advertised as "256k". Other disks were advertised using a ''mixture'' of the two definitions: notably, -inch HD disks advertised as "1.44 MB" in fact have a capacity of 1,440 KiB, the equivalent of 1.47 MB or 1.41 MiB.
In 1995, the
International Union of Pure and Applied Chemistry
The International Union of Pure and Applied Chemistry (IUPAC ) is an international federation of National Adhering Organizations working for the advancement of the chemical sciences, especially by developing nomenclature and terminology. It is ...
's (IUPAC) Interdivisional Committee on Nomenclature and Symbols attempted to resolve this ambiguity by proposing a set of
binary prefixes for the powers of 1024, including kibi (kilobinary), mebi (megabinary), and gibi (gigabinary).
In December 1998, the
IEC addressed such multiple usages and definitions by adopting the IUPAC's proposed prefixes (kibi, mebi, gibi, etc.) to unambiguously denote powers of 1024. Thus one kibibyte (1 KiB) is 1024
1 bytes = 1024 bytes, one mebibyte (1 MiB) is 1024
2 bytes = bytes, and so on.
In 1999,
Donald Knuth
Donald Ervin Knuth ( ; born January 10, 1938) is an American computer scientist, mathematician, and professor emeritus at Stanford University. He is the 1974 recipient of the ACM Turing Award, informally considered the Nobel Prize of computer ...
suggested calling the kibibyte a "large kilobyte" (''KKB'').
Modern standard definitions
The IEC adopted the IUPAC proposal and published the standard in January 1999. The IEC prefixes are now part of the
International System of Quantities
The International System of Quantities (ISQ) consists of the quantities used in physics and in modern science in general, starting with basic quantities such as length and mass, and the relationships between those quantities. This system underl ...
. The IEC further specified that the kilobyte should only be used to refer to 1,000 bytes.
Lawsuits over definition
Lawsuits arising from alleged consumer confusion over the binary and decimal definitions of multiples of the byte have generally ended in favor of the manufacturers, with courts holding that the legal definition of gigabyte or GB is 1 GB = 1,000,000,000 (10
9) bytes (the decimal definition), rather than the binary definition (2
30). Specifically, the United States District Court for the Northern District of California held that "the U.S. Congress has deemed the decimal definition of gigabyte to be the 'preferred' one for the purposes of 'U.S. trade and commerce'
..The California Legislature has likewise adopted the decimal system for all 'transactions in this state.'"
Earlier lawsuits had ended in settlement with no court ruling on the question, such as a lawsuit against drive manufacturer
Western Digital.
Western Digital settled the challenge and added explicit disclaimers to products that the usable capacity may differ from the advertised capacity.
Seagate was sued on similar grounds and also settled.
Practical examples
Common uses
Many
programming language
A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language.
The description of a programming l ...
s define the
data type
In computer science and computer programming, a data type (or simply type) is a set of possible values and a set of allowed operations on it. A data type tells the compiler or interpreter how the programmer intends to use the data. Most progra ...
''byte''.
The
C and
C++ programming languages define ''byte'' as an "''addressable unit of data storage large enough to hold any member of the basic character set of the execution environment''" (clause 3.6 of the C standard). The C standard requires that the integral data type ''
unsigned
Unsigned can refer to:
* An unsigned artist is a musical artist or group not attached or signed to a record label
** Unsigned Music Awards, ceremony noting achievements of unsigned artists
** Unsigned band web, online community
* Similarly, the ...
char'' must hold at least 256 different values, and is represented by at least eight bits (clause 5.2.4.2.1). Various implementations of C and C++ reserve 8, 9, 16, 32, or 36 bits for the storage of a byte.
In addition, the C and C++ standards require that there are no gaps between two bytes. This means every bit in memory is part of a byte.
Java's primitive data type ''byte'' is defined as eight bits. It is a signed data type, holding values from −128 to 127.
.NET programming languages, such as C#, define ''byte'' as an unsigned type, and the ''sbyte'' as a signed data type, holding values from 0 to 255, and
−128 to 127, respectively.
In data transmission systems, the byte is used as a contiguous sequence of bits in a serial data stream, representing the smallest distinguished unit of data. A transmission unit might additionally include start bits, stop bits, and
parity bit
A parity bit, or check bit, is a bit added to a string of binary code. Parity bits are a simple form of error detecting code. Parity bits are generally applied to the smallest units of a communication protocol, typically 8-bit octets (bytes) ...
s, and thus its size may vary from seven to twelve bits to contain a single seven-bit
ASCII
ASCII ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because ...
code.
See also
*
Data
In the pursuit of knowledge, data (; ) is a collection of discrete values that convey information, describing quantity, quality, fact, statistics, other basic units of meaning, or simply sequences of symbols that may be further interpret ...
*
Data hierarchy
*
Nibble
*
Octet (computing)
*
Primitive data type
In computer science, primitive data types are a set of basic data types from which all other data types are constructed. Specifically it often refers to the limited set of data representations in use by a particular processor, which all compiled ...
*
Tryte
*
Word (computer architecture)
Notes
References
Further reading
*
* Ashley Taylor. “Bits and Bytes.” Stanford. https://web.stanford.edu/class/cs101/bits-bytes.html
{{Data types
Data types
Units of information
Binary arithmetic
Computer memory
Data unit
Primitive types
1950s neologisms
8 (number)