What is a nibble?
In computing and digital technology, a nibble is four consecutive binary digits or half of an 8-bit byte. When referring to a byte, it is either the first four bits or the last four bits, which is why a nibble is sometimes referred to as a half-byte. The term nibble also carries on the "edible data" metaphor established with bit and byte. Due to its byte connection, a nibble is occasionally spelled nybble or nyble.
Because a nibble is made up of binary data, each of the four digits is either a 0 or 1, in any combination, as in 0010, 0110, 1011 or 1111. The total number of possible combinations is 16, calculated as 24. A nibble can also be represented by a hexadecimal digit. Hexadecimal is a base-16 numbering system that uses the digits 0 through 9 and the letters A through F to represent data, including nibbles and bytes. Figure 1 shows each possible bit combination in a nibble, along with its hexadecimal and decimal equivalent.
Two-digit hexadecimal numbers are used to represent bytes, which are made up of two consecutive nibbles. Figure 2 shows the digital data from a small text file based on American Standard Code for Information Interchange (ASCII) text encoding. Figure 2 includes both the binary data and the corresponding hexadecimal digits (in the rightmost column). Each row, except the last, contains four bytes, separated by spaces.
The first byte (01010100) in the first row is highlighted, as is its corresponding hexadecimal code (54). The highlighted byte is the ASCII letter T (uppercase), which is ASCII code 084. The first nibble in the byte, 0101, is represented by the hexadecimal number 5, and the second nibble in the byte, 0100, is represented by the hexadecimal number 4, resulting in a byte hexadecimal value of 54.
What is a nibble in communications?
In communications, a nibble is sometimes referred to as a quadbit. As with any nibble, the quadbit is 4 bits and has 16 possible combinations. A signal might be encoded in quadbits rather than one bit at a time. Nibble interleaving, a process used in multiplexing, takes a quadbit from a lower-speed channel as input for a multiplexed signal on a higher-speed channel.