Nibble

Four-bit unit of binary data From Wikipedia, the free encyclopedia

In computing, a nibble,[1] also spelled nybble to match byte, is a unit of information that consists of four bits. A nibble is half of a byte, or octet.[1][2][3] The unit is alternatively called nyble, nybl, half-byte[4] or tetrade.[5][6] In networking or telecommunications, the unit is often called a semi-octet,[7] quadbit,[8] or quartet.[9][10]

An octet code page 866 font table ordered by nibbles.

As a nibble can represent sixteen (24) possible values, a nibble value is often shown as a hexadecimal digit (hex digit).[11] A byte is two nibbles, and therefore, a value can be shown as two hex digits.

Four-bit computers use nibble-sized data for storage and operations, in the form of the word unit. Such computers were used in early microprocessors, pocket calculators and pocket computers. They continue to be used in some microcontrollers. In this context, 4-bit groups were sometimes also called characters[12] rather than nibbles.[1]

History

The term nibble originates from its representing half a byte, with byte a homophone of the English word bite.[4]

David B. Benson, at the time a Washington State University professor, might have originated the term nibble in 1958 as a joke.[13]

In 1977, an early use of the spelling nybble for the term was recorded within the consumer-banking technology group at Citibank. It created a pre-ISO 8583 standard for transactional messages between cash machines and Citibank's data centers that used the basic data unit nabble.[citation needed]

In the early 1980s, the alternative spelling nybble reflected the spelling of byte, as noted in editorials of Kilobaud and Byte.[citation needed]

Historically, nybble was used in many cases for a group of bits greater than 4. On the Apple II, much of the disk drive control and group-coded recording was implemented in software. Writing data to a disk was done by converting 256-byte pages into sets of 5-bit (later, 6-bit) nibbles and loading disk data required the reverse.[14][15][16] Moreover, 1982 documentation for the Integrated Woz Machine refers consistently to an "8 bit nibble".[17] The term byte once had the same ambiguity and meant a set of bits but not necessarily 8, hence the distinction of bytes and octets or of nibbles and quartets (or quadbits). Today, the terms byte and nibble almost always refer to 8-bit and 4-bit collections, respectively, and are very rarely used to express any other sizes.[citation needed]

Part of a byte

Nibble is used to describe the amount of memory used to store a digit of a number stored in packed decimal format (BCD) within an IBM mainframe. This technique is used to make computations faster and debugging easier. An 8-bit byte is split in half, and each nibble is used to store one decimal digit. The last (rightmost) nibble of the variable is reserved for the sign. Thus, a variable that can store up to nine digits would be packed into 5 bytes. Ease of debugging resulted from the numbers' being readable in a hex dump where two hex numbers are used to represent the value of a byte, as 16×16 = 28. For example, a five-byte BCD value of 31 41 59 26 5C represents a decimal value of +314159265.[citation needed]

Packed nibbles can also describe binary numbers. The low and high nibbles of a byte are its two halves, which are the least and the most significant bits within the byte, respectively.[18] For example in binary,

ninety-seven = 9710 = (0110 0001)2

the high nibble is 01102 (616), and the low nibble is 00012. The total value is high-nibble × 1610 + low-nibble (6 × 16 + 1 = 9710).

Value representation

A nibble-sized value can be represented in different numeric bases:

More information Binary, Decimal ...
BinaryDecimalHexadecimal
000000
000111
001022
001133
010044
010155
011066
011177
100088
100199
101010A
101111B
110012C
110113D
111014E
111115F
Close

See also

  • Binary number – Number expressed in the base-2 numeral system
  • Syllable – Platform-specific data size used for some historical digital hardware
  • Word – Base memory unit handled by a computer

References

Related Articles

Wikiwand AI