Primary
Byte (B) ○◂|Definition|1st|20251119205401-00-⌔
Byte
The byte is a unit of digital information that most commonly consists of eight bits. Historically, the byte was the number of bits used to encode a single character of text in a computer12 and for this reason it is the smallest addressable unit of memory in many computer architectures. To disambiguate arbitrarily sized bytes from the common 8-bit definition, network protocol documents such as the Internet Protocol (RFC 791) refer to an 8-bit byte as an octet.3 Those bits in an octet are usually counted with numbering from 0 to 7 or 7 to 0 depending on the bit endianness.
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.4567 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, and persisted, in legacy systems, into the twenty-first century. In this era, bit groupings in the instruction stream were often referred to as syllables8 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 permitting the binary-encoded values 0 through 255 for one byte, as 2 to the power of 8 is 256.9 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.10 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 (IEC) and Institute of Electrical and Electronics Engineers (IEEE).11 Internationally, the unit octet explicitly defines a sequence of eight bits, eliminating the potential ambiguity of the term “byte”.1213 The symbol for octet, ‘o’, also conveniently eliminates the ambiguity in the symbol ‘B’ between byte and bel.
Printed 2026-06-28.
(echo:: @ ᯤ)
Link to original Footnotes
Blaauw, Gerrit Anne; Brooks, Jr., Frederick Phillips; Buchholz, Werner (1962), “Chapter 4: Natural Data Units” (PDF), in Buchholz, Werner (ed.), Planning a Computer System - Project Stretch, McGraw-Hill Book Company, Inc./The Maple Press Company, York, PA., pp. 39–40, LCCN 61-10466, archived from the original (PDF) on 2017-04-03, retrieved 2017-04-03 Terms used here to describe the structure imposed by the machine design, in addition to bit, are listed below.
Byte denotes a group of bits used to encode a character, or the number of bits transmitted in parallel to and from input-output units. A term other than character is used here because a given character may be represented in different applications by more than one code, and different codes may use different numbers of bits (i.e., different byte sizes). In input-output transmission the grouping of bits may be completely arbitrary and have no relation to actual characters. (The term is coined from bite, but respelled to avoid accidental mutation to bit.)
A word consists of the number of data bits transmitted in parallel from or to memory in one memory cycle. Word size is thus defined as a structural property of the memory. (The term catena was coined for this purpose by the designers of the Bull GAMMA 60 computer.)
Block refers to the number of words transmitted to or from an input-output unit in response to a single input-output instruction. Block size is a structural property of an input-output unit; it may have been fixed by the design or left to be varied by the program. ↩Bemer, Robert William (1959), “A proposal for a generalized card code of 256 characters”, Communications of the ACM, 2 (9): 19–23, doi:10.1145/368424.368435, S2CID 36115735 ↩
Postel, J. (September 1981). Internet Protocol DARPA INTERNET PROGRAM PROTOCOL SPECIFICATION. IETF. p. 43. doi:10.17487/RFC0791. RFC 791. Retrieved 28 August 2020. octet An eight bit byte. ↩
Buchholz, Werner (1956-06-11). “7. The Shift Matrix” (PDF). The Link System. IBM. pp. 5–6. Stretch Memo No. 39G. Archived from the original (PDF) on 2017-04-04. Retrieved 2016-04-04. […] Most important, from the point of view of editing, will be the ability to handle any characters or digits, from 1 to 6 bits long.
Figure 2 shows the Shift Matrix to be used to convert a 60-bit word, coming from Memory in parallel, into characters, or ‘bytes’ as we have called them, to be sent to the Adder serially. The 60 bits are dumped into magnetic cores on six different levels. Thus, if a 1 comes out of position 9, it appears in all six cores underneath. Pulsing any diagonal line will send the six bits stored along that line to the Adder. The Adder may accept all or only some of the bits.
Assume that it is desired to operate on 4 bit decimal digits, starting at the right. The 0-diagonal is pulsed first, sending out the six bits 0 to 5, of which the Adder accepts only the first four (0-3). Bits 4 and 5 are ignored. Next, the 4 diagonal is pulsed. This sends out bits 4 to 9, of which the last two are again ignored, and so on.
It is just as easy to use all six bits in alphanumeric work, or to handle bytes of only one bit for logical analysis, or to offset the bytes by any number of bits. All this can be done by pulling the appropriate shift diagonals. An analogous matrix arrangement is used to change from serial to parallel operation at the output of the adder. […] ↩3600 Computer System - Reference Manual (PDF). K. St. Paul, Minnesota, US: Control Data Corporation (CDC). 1966-10-11 [1965]. 60021300. Archived from the original (PDF) on 2017-04-05. Retrieved 2017-04-05. Byte - A partition of a computer word.
NB. Discusses 12-bit, 24-bit and 48-bit bytes. ↩Rao, Thammavaram R. N.; Fujiwara, Eiji (1989). McCluskey, Edward J. (ed.). Error-Control Coding for Computer Systems. Prentice Hall Series in Computer Engineering (1 ed.). Englewood Cliffs, NJ, US: Prentice Hall. ISBN 0-13-283953-9. LCCN 88-17892.
NB. Example of the usage of a code for “4-bit bytes”. ↩Tafel, Hans Jörg (1971). Einführung in die digitale Datenverarbeitung [Introduction to digital information processing] (in German). Munich: Carl Hanser Verlag. p. 300. ISBN 3-446-10569-7. Byte = zusammengehörige Folge von i.a. neun Bits; davon sind acht Datenbits, das neunte ein Prüfbit
NB. Defines a byte as a group of typically 9 bits; 8 data bits plus 1 parity bit. ↩The term syllable was used for bytes containing instructions or constituents of instructions, not for data bytes. ↩
ISO/IEC 2382-1: 1993, Information technology - Vocabulary - Part 1: Fundamental terms. 1993. byte:
A string that consists of a number of bits, treated as a unit, and usually representing a character or a part of a character.
NOTES:
1 The number of bits in a byte is fixed for a given data processing system.
2 The number of bits in a byte is usually 8. ↩“Internet History of 1960s # 1964”. Computer History Museum. 2017 [2015]. Archived from the original on 2022-06-24. Retrieved 2022-08-17. ↩
Jaffer, Aubrey (2011) [2008]. “Metric-Interchange-Format”. Archived from the original on 2017-04-03. Retrieved 2017-04-03. ↩
Kozierok, Charles M. (2005-09-20) [2001]. “The TCP/IP Guide - Binary Information and Representation: Bits, Bytes, Nibbles, Octets and Characters - Byte versus Octet”. 3.0. Archived from the original on 2017-04-03. Retrieved 2017-04-03. ↩
ISO 2382-4, Organization of data (2 ed.). byte, octet, 8-bit byte: A string that consists of eight bits. ↩
Secondary
• • •