In computer architecture, 4-bit integers, memory addresses, or other data units are those that are 4 bits wide. Also, 4-bit CPU and ALU architectures are those that are based on registers, address buses, or data buses of that size. A group of four bits is also called a nibble and has sixteen (24) possible values.
Some of the first microprocessors had a 4-bit word length and were developed around 1970. The TMS 1000, the world's first single-chip microprocessor, was a 4-bit CPU; it had a Harvard architecture, with an on-chip instruction ROM, 8-bit-wide instructions and an on-chip data RAM with 4-bit words. The first commercial microprocessor was the binary coded decimal (BCD-based) Intel 4004, developed for calculator applications in 1971; it had a 4-bit word length, but had 8-bit instructions and 12-bit addresses.
The HP Saturn processors, used in many Hewlett-Packard calculators between 1984 and 2015 (including the HP 48 series of scientific calculators) are "4-bit" (or hybrid 64-/4-bit) machines; as the Intel 4004 did, they string multiple 4-bit words together, e.g. to form a 20-bit memory address, and most of its registers are 64 bits, storing 16 4-bit digits.
The 4-bit processors were programmed in assembly language or Forth, e.g. "MARC4 Family of 4 bit Forth CPU" because of the extreme size constraint on programs and because common programming languages (for microcontrollers, 8-bit and larger), such as the C programming language, do not support 4-bit (C requires that the size of the
char data type be at least 8 bits, and that all data types other than bitfields have a size that is a multiple of the character size). While larger than 4-bit values can be used by combining more than one manually, the language has to support the smaller values used in the combining. If not, assembly is the only option.[dubious ]
The 1970s saw the emergence of 4-bit software applications for mass markets like pocket calculators.
In the 1970s and 1980s, a number of research and commercial computers used bit slicing, in which the CPU's arithmetic logic unit (ALU) was built from multiple 4-bit-wide sections, each section including a chip such as an Am2901 or 74181 chip.
While 32- and 64-bit processors are more prominent in modern consumer electronics, 4-bit CPUs continue to be used (usually as part of a microcontroller) in cost-sensitive applications which require minimal computing power. For example, one bicycle computer specifies that it uses a "4 bit 1-chip microcomputer". Other typical uses include coffee makers, infrared remote controls, and security alarms.
Use of 4-bit processors has declined relative to 8-bit or even 32-bit processors as they are hard to find cheaper in general computer supplier's stores. The simplest kinds are not available in any of them and others are "Non-stock" and more expensive (a few expensive ones can be found, as of 2014[update], on eBay).
As of 2015[update], most PC motherboards, especially laptop motherboards, use a 4-bit LPC bus (introduced in 1998) to connect the southbridge to the motherboard firmware flash ROM (UEFI or BIOS) and the Super I/O chip.
With four bits, it is possible to create 16 different values. All single digit hexadecimal numbers can be written with four bits. Binary-coded decimal is a digital encoding method for numbers using decimal notation, with each decimal digit represented by four bits.
List of 4-bit processorsEdit
- TMS 1000
- Intel 4004
- Intel 4040
- Atmel MARC4 core – (discontinued: "Last ship date: March 7, 2015")
- Samsung S3C7 (KS57 Series) 4-bit microcontrollers (RAM: 512 to 5264 nibbles, 6 MHz clock)
- Toshiba TLCS-47 series
- HP Saturn
- NEC μPD75X
- NEC μCOM-4
- NEC (now Renesas) µPD612xA (discontinued), µPD613x, μPD6x and μPD1724x infrared remote control transmitter microcontrollers
- EM Microelectronic-Marin EM6600 family, EM6580, EM6682, etc.
- Epson S1C63 family
- National Semiconductor MAPS MM570X
- TMS 1000 Series Data Manual (PDF). Texas Instruments. December 1976. Retrieved July 20, 2013.
- Mack, Pamela E. (November 30, 2005). "The Microcomputer Revolution". Retrieved 2009-12-23.
- "History in the Computing Curriculum" (PDF). Retrieved 2017-06-22.
- "The Saturn Processor". Retrieved December 23, 2015.
- "Guide to the Saturn Processor". Retrieved January 14, 2014.
- "Introduction to Saturn Assembly Language". Retrieved January 14, 2014.
- Forth Chips
- ISO/IEC 9899:1999 specification. p. 20, § 220.127.116.11.1.
- ISO/IEC 9899:1999 specification. p. 37, § 18.104.22.168 (4).
- Marshall Cline. "C++ FAQ: the rules about bytes, chars, and characters".
- "4-bit integer". cplusplus.com. Retrieved November 21, 2014.
- Masatoshi Shima; Federico Faggin; Ralph Ungermann; Michael Slater. "Zilog Oral History Panel on the Founding of the Company and the Development of the Z80 Microprocessor".
- Ken Shirriff. "The Z-80 has a 4-bit ALU.".
- "Cateye Commuter Manual" (PDF). Retrieved February 11, 2014.
- μPD67, 67A, 68, 68A, 69 4-bit single-chip microcontroller for infrared remote control transmission
- Haskell, Richard. "Introduction to Digital Logic and Microprocessors (Lecture 12.2)". Retrieved February 11, 2014.
- Scott Mueller. "Upgrading and Repairing Laptops". 2004. p. 176.
- David S. Lawyer. "Plug-and-Play-HOWTO: LPC Bus" 2007.
- "MARC4 4-bit Microcontrollers - Programmer's Guide" (PDF). Atmel. Archived from the original (PDF) on 2014-12-15. Retrieved January 14, 2014.
- "MARC4 4-Bit Architecture". Atmel. Archived from the original on May 31, 2009.
- Product End-of-Life (EOL) Notification
- μPD6P9 4-bit single-chip microcontroller for infrared remote control transmission
- μPD17240, 17241, 17242, 17243, 17244, 17245, 17246 4-bit single-chip microcontrollers for small general-purpose infrared remote control transmitters
- Microcontrollers for Remote Controllers
- "Mask ROM/ROMless Products 4/8bit Remote Control". Archived from the original on October 28, 2008.
- Robert Cravotta. "Embedded Processing Directory"
- "EM6580 low power Flash 4-bit microcontroller"
- Saturn CPU
- "Products: High Performance 4-bit Microcontrollers [ S1C63 family ]". Epson. Archived from the original on 2013-07-29.
- Considerations for 4-bit processing