The word bit is short for binary digit. It is a unit of information that can take on only one of two states: one or zero. So a bit can be thought of as a single digit in a binary (base two) numbering system.
The bit is the natural unit of information for transistor-based systems. Most transistors are two-state devices. Because the vast majority of computers are based on trasistor technology, they are essentially an incredibly dense collection of switches that can be on, or off. This makes their natural language binary.
Today the bit has become the heart of the digital revolution. The vast majority of information we transmit and store is stored as a collection of bits. This raises a couple of questions:
- How do we represent bits, and
- How do we use bits to represent more complex information?
How we actually represent a bit varies depending on whether wee are storing it or transmitting it, and what we are using as the storage or transmission system.
- Early on, bits were stored on magnetic core memories. By applying current in different combinations to two intersecting wires, a small memory element located at the junction of the wires could be set spinning in one direction or another. It's direction of spin, governed by its magnetic charge, could be interpreted as a one or a zero.
- As magnetic tape and disk systems emerged, we began storing bits as minute magnetic fields in a prescribed region on the surface of these media. On modern hard disks, the regions are as small as 20x200 nanometers, which means 100 billion bits can be stored in a region approximately one inch square.
- Many compact discs use a fairly simple technique. The platter is a smooth reflective surface organized in tracks. Along each track, the track is left smooth (ground) to represent a zero, and has a hole burned (pit) to represent a one. When a laser is shone on the disk, it reflects on the smooth surface, but is trapped by a pit. A simple photo-detector can read the series of bits.
- On digital electrical transmission systems, a bit can be represented by a particular voltage level. For example, a one could be a positive voltage and a zero a negative voltage. It is also common to find a zero represented by no voltage whatsoever. It is also possible to have multiple signal levels and use each to represent several bits at the same time. For example, a +3 volt signal could be 00, a +1 volt signal could be 01, a -1 volt signal could be 10, and a -3 volt signal could be 11.
- On an analog electrical transmission system, we can establish an wave of electrical energy whose voltage is continuously changing with a set pattern. Typically, a sine wave is used. Then the frequency, phase, or amplitude of the signal can be altered (known as modulation) to represent ones or zeroes.
- In the radio world, we can establish waves of electromagnetic energy and then use the same modulation techniques we use in an electrical domain to convey information.
- On an optical transmission system, the presence of light could represent a one, and the absence of light represent a zero.
These are only a few fairly simple ways we can represent bits for storage or transmission. Many other examples are available.
Clearly computers are used to handle and represent more complex information than just ones and zeroes. There are several ways to represent more complex information using bits:
- Other numbering systems can be represented by simply converting them to binary, manipulating them in binary, and converting them back for display purposes. So the decimal number 165 can be represented in binary as 1010 0101.
- Letters, punctuation, and all of the rest of characters on the QWERTY keyboard can be represented by assigning each of the a unique binary code. The most common of such codes is called ASCII.
- Images are essentially a collection of colors. To represent them in binary (e.g., digitally), we need a color palette. Each color on our palette is assigned a unique binary code. The more bits in our code, the more colors we can have on our palette. Eight bits yield a 256 color palette. 24 bits yields palette with over 16 million colors! To digitize the picture, we divide it into very narrow rows and columns. Each intersection of a row with a column is called a pixel. It's color is assessed, mapped to the palette, and represented by its corresponding binary code. This process creates what is know as a bitmap. Every image file with the .bmp extension is coded this way. Other formats (e.g., JPG) apply a compression technique to represent the picture using fewer bits.
- Video is simply a set of still images flashed before the eye in rapid succession. It should come as no surprise that each of these images can be represented as described in the previous bullet. To reduce the total amount of data, the individual images are typically compressed spatially (e.g., with JPG), and then the series is compressed temporally (e.g., with MPEG).
- Audio is actually a mechanical event: a set of air pressure waves of varying pressure impact on our eardrums. To transmit audio, we represent it with an electrical signal whose voltage is constantly changing as an analog of the original voice signal. To digitize it, we merely measure the voltage of the wave at discrete intervals, and represent the voltage using a digital code. Once again, we need a form of "voltage palette." In North America, that palette is called mu-255, which defines an 8-bit code. The process of measuring the voltage is called Pulse Amplitude Modulation (PAM). The samples are taken every 125 microseconds (i.e., 8,000 times per second), and then represented using the appropriate digital code, a process called Pulse Code Modulation (PCM). This is the basis for the 64,000 bits per second (bps transmitted across the PSTN, also known as the DS-0 rate.
These are just a few of the ways to represent more complex information using bits.
Groups of Bits
Bits are processed, stored, and transmitted. In doing so, we have names for larger groups of bits. These include:
- Bit: A single digit. A bit has 2 possible values (i.e., 1 or 0).
- Crumb: A pair of bits. This term is rarely used. A crumb has 4 possible values (i.e. 00, 01, 10, 11)
- Nibble: Four bits. This term is still fairly rare, but more common than crumb. A nibble has 16 possible values.
- Byte: Eight bits. This is the most common meaning today, although older computer systems had different byte lengths. A byte has 256 possible values.
- Octet: Eight bits. This term is more precise, but is not as commonly used in North America. it is more common in other countries.
- Word: There is no consistent definition for this term. It is usually a multiple of eight bits, but there have historically been 16-bit words, 32-bit words, and 64-bit words. In general, the word length of a given computer is the unit of information it processes in parallel. So a 64-bit computer has a 64-bit word.
Transmission systems are typically expressed in the number of bits they can carry per unit of time, and the unit of time is typically one second. Here too there is a hierarchy that include kilobits per second (kbps), megabits per second (Mbps), gigabits per second (Gbps), and so forth.