Thebit is the most basicunit of information incomputing and digitalcommunication. The name is aportmanteau ofbinary digit.[1] The bit represents alogical state with one of two possiblevalues. These values are most commonly represented as either"1" or "0", but other representations such astrue/false,yes/no,on/off, or+/− are also widely used.
The relation between these values and the physical states of the underlyingstorage ordevice is a matter of convention, and different assignments may be used even within the same device orprogram. It may be physically implemented with a two-state device.
A contiguous group of binary digits is commonly called abit string, a bit vector, or a single-dimensional (or multi-dimensional)bit array.A group of eight bits is called one byte, but historically the size of the byte is not strictly defined.[2] Frequently, half, full, double and quadruple words consist of a number of bytes which is a low power of two. A string of four bits is usually anibble.
Ininformation theory, one bit is theinformation entropy of a randombinary variable that is 0 or 1 with equal probability,[3] or the information that is gained when the value of such a variable becomes known.[4][5] As aunit of information ornegentropy, the bit is also known as ashannon,[6] named afterClaude E. Shannon. As a measure of the length of a digital string that is encoded as symbols over a 0-1 (binary) alphabet, the bit has been called a binit,[7] but this usage is now rare.[8]
Indata compression, the goal is to find a shorter representation for a string, so that it requires fewer bits during storage or transmission — but it must be "compressed" before doing so, and then "decompressed" after. The field ofAlgorithmic Information Theory is devoted to the study of the "irreducible information content" of a string (i.e. its shortest-possible representation length, in bits), under the assumption that the receiver has minimala priori knowledge of the method used to compress the string. Inerror detection and correction, the goal is to add redundant data to a string, to enable the detection and/or correction of errors during storage or transmission — but the redundant data has to be computed before doing so, and then "checked" or "corrected" after.
The symbol for the binary digit is either "bit", per theIEC 80000-13:2008 standard, or the lowercase character "b", per theIEEE 1541-2002 standard. Use of the latter may create confusion with the capital "B" which is the international standard symbol for the byte.
A bit can be stored by a digital device or other physical system that exists in either of two possible distinctstates. These may be the two stable states of aflip-flop, two positions of anelectrical switch, two distinctvoltage orcurrent levels allowed by acircuit, two distinct levels oflight intensity, two directions ofmagnetization orpolarization, the orientation of reversible double strandedDNA, etc.
Perhaps the earliest example of a binary storage device was thepunched card invented byBasile Bouchon and Jean-Baptiste Falcon (1732), developed byJoseph Marie Jacquard (1804), and later adopted bySemyon Korsakov,Charles Babbage,Herman Hollerith, and early computer manufacturers likeIBM. A variant of that idea was the perforatedpaper tape. In all those systems, the medium (card or tape) conceptually carried an array of hole positions; each position could be either punched through or not, thus carrying one bit of information. The encoding of text by bits was also used inMorse code (1844) and early digital communications machines such asteletypes andstock ticker machines (1870).
The first electrical devices for discrete logic (such aselevator andtraffic light controlcircuits,telephone switches, and Konrad Zuse's computer) represented bits as the states ofelectrical relays which could be either "open" or "closed". When relays were replaced byvacuum tubes, starting in the 1940s, computer builders experimented with a variety of storage methods, such as pressure pulses traveling down amercury delay line, charges stored on the inside surface of acathode-ray tube, or opaque spots printed onglass discs byphotolithographic techniques.
Bits are transmitted one at a time inserial transmission. By contrast, multiple bits are transmitted simultaneously in aparallel transmission. Aserial computer processes information in either a bit-serial or a byte-serial fashion. From the standpoint of data communications, a byte-serial transmission is an 8-way parallel transmission with binary signalling.
In programming languages such asC, abitwise operation operates on binary strings as though they are vectors of bits, rather than interpreting them asbinary numbers.
Data transfer rates are usually measured in decimal SI multiples. For example, achannel capacity may be specified as 8 kbit/s = 8 kb/s = 1 kB/s.
File sizes are often measured in (binary) IEC multiples of bytes, for example 1 KiB = 1024 bytes = 8192 bits. Confusion may arise in cases where (for historic reasons) filesizes are specified with binary multipliers using the ambiguous prefixes K, M, and G rather than the IEC standard prefixes Ki, Mi, and Gi.[13]
Mass storage devices are usually measured in decimal SI multiples, for example 1 TB = bytes.
Confusingly, the storage capacity of a directly-addressable memory device, such as aDRAM chip, or an assemblage of such chips on a memory module, is specified as a binary multiple -- using the ambiguous prefix G rather than the IEC recommended Gi prefix. For example, a DRAM chip that is specified (and advertised) as having "1 GB" of capacity has bytes of capacity. As at 2022, the difference between the popular understanding of a memory system with "8 GB" of capacity, and the SI-correct meaning of "8 GB" was still causing difficulty to software designers.[14]
The bit is not defined in theInternational System of Units (SI). However, theInternational Electrotechnical Commission issued standardIEC 60027, which specifies that the symbol for binary digit should be 'bit', and this should be used in all multiples, such as 'kbit', for kilobit.[15] However, the lower-case letter 'b' is widely used as well and was recommended by theIEEE 1541 Standard (2002). In contrast, the upper case letter 'B' is the standard and customary symbol for byte.
Multiple bits may be expressed and represented in several ways. For convenience of representing commonly reoccurring groups of bits in information technology, severalunits of information have traditionally been used. The most common is the unitbyte, coined byWerner Buchholz in June 1956, which historically was used to represent the group of bits used to encode a singlecharacter of text (untilUTF-8 multibyte encoding took over) in a computer[2][16][17][18][19] and for this reason it was used as the basicaddressable element in manycomputer architectures. By 1993, the trend in hardware design had converged on the 8-bitbyte.[20] However, because of the ambiguity of relying on the underlying hardware design, the unitoctet was defined to explicitly denote a sequence of eight bits.
Computers usually manipulate bits in groups of a fixed size, conventionally named "words". Like the byte, the number of bits in a word also varies with the hardware design, and is typically between 8 and 80 bits, or even more in some specialized computers. In the early 21st century, retail personal or server computers have a word size of 32 or 64 bits.
TheInternational System of Units defines a series of decimal prefixes for multiples of standardized units which are commonly also used with the bit and the byte. The prefixeskilo (103) throughyotta (1024) increment by multiples of one thousand, and the corresponding units are thekilobit (kbit) through theyottabit (Ybit).
^abBemer, Robert William (2000-08-08)."Why is a byte 8 bits? Or is it?".Computer History Vignettes. Archived fromthe original on 2017-04-03. Retrieved2017-04-03.[…] WithIBM'sSTRETCH computer as background, handling 64-character words divisible into groups of 8 (I designed the character set for it, under the guidance of Dr.Werner Buchholz, the man who DID coin the term "byte" for an 8-bit grouping). […] TheIBM 360 used 8-bit characters, although not ASCII directly. Thus Buchholz's "byte" caught on everywhere. I myself did not like the name for many reasons. […]
^Anderson, John B.; Johnnesson, Rolf (2006),Understanding Information Transmission
^National Institute of Standards and Technology (2008),Guide for the Use of the International System of Units.Online version.Archived 3 June 2016 at theWayback Machine
^Buchholz, Werner (1956-06-11)."7. The Shift Matrix"(PDF).The Link System.IBM. pp. 5–6.Stretch Memo No. 39G.Archived(PDF) from the original on 2017-04-04. Retrieved2016-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 […] the Shift Matrix to be used to convert a 60-bitword, coming from Memory in parallel, intocharacters, or "bytes" as we have called them, to be sent to theAdder serially. The 60 bits are dumped intomagnetic cores on six different levels. Thus, if a 1 comes out of position 9, it appears in all six cores underneath. […] The Adder may accept all or only some of the bits. […] Assume that it is desired to operate on 4 bitdecimal 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 inalphanumeric work, or to handle bytes of only one bit for logical analysis, or to offset the bytes by any number of bits. […]
^Buchholz, Werner (February 1977)."The Word "Byte" Comes of Age..."Byte Magazine.2 (2): 144.[…] The first reference found in the files was contained in an internal memo written in June 1956 during the early days of developingStretch. Abyte was described as consisting of any number of parallel bits from one to six. Thus a byte was assumed to have a length appropriate for the occasion. Its first use was in the context of the input-output equipment of the 1950s, which handled six bits at a time. The possibility of going to 8 bit bytes was considered in August 1956 and incorporated in the design of Stretch shortly thereafter. The first published reference to the term occurred in 1959 in a paper "Processing Data in Bits and Pieces" byG A Blaauw,F P Brooks Jr andW Buchholz in theIRE Transactions on Electronic Computers, June 1959, page 121. The notions of that paper were elaborated in Chapter 4 ofPlanning a Computer System (Project Stretch), edited by W Buchholz,McGraw-Hill Book Company (1962). The rationale for coining the term was explained there on page 40 as follows: Bytedenotes 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 thancharacter 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 (ie, 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 frombite, but respelled to avoid accidental mutation tobit.) System/360 took over many of the Stretch concepts, including the basic byte and word sizes, which are powers of 2. For economy, however, the byte size was fixed at the 8 bit maximum, and addressing at the bit level was replaced by byte addressing. […]