Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
8-bit computing
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Computer architectures using an 8-bit word}} {{Redirect|8-bit}} {{multiple issues| {{more citations needed|date=October 2009}} {{Original research|date=May 2019}} }} {{Computer architecture bit widths}} {{Use dmy dates|date=May 2025}} In [[computer architecture]], '''8-bit''' [[integer (computer science)|integer]]s or other [[data (computing)|data]] units are those that are 8 [[bit]]s wide (1 [[octet (computing)|octet]]). Also, 8-bit [[central processing unit]] (CPU) and [[arithmetic logic unit]] (ALU) architectures are those that are based on [[processor register|register]]s or [[bus (computing)|data bus]]es of that size. [[Memory address]]es (and thus [[address bus]]es) for 8-bit CPUs are generally larger than 8-bit, usually 16-bit. 8-bit [[microcomputer]]s are microcomputers that use 8-bit [[microprocessor]]s. The term '8-bit' is also applied to the [[character encoding|character set]]s that could be used on computers with 8-bit bytes, the best known being various forms of [[extended ASCII]], including the [[ISO/IEC 8859]] series of national character sets{{snd}} especially [[ISO/IEC 8859-1|Latin 1]] for English and Western European languages. The [[IBM System/360]] introduced byte-addressable memory with 8-bit bytes, as opposed to bit-addressable or decimal digit-addressable or word-addressable memory, although its [[general-purpose registers]] were 32 bits wide, and addresses were contained in the lower 24 bits of those addresses. Different models of System/360 had different internal data path widths; the [[IBM System/360 Model 30]] (1965) implemented the 32-bit System/360 architecture, but had an 8-bit native path width, and performed 32-bit arithmetic 8 bits at a time.<ref>{{Cite journal|last1=Amdahl|first1=G. M.|last2=Blaauw|first2=G. A.|author2-link=Gerrit Blaauw|last3=Brooks|first3=F. P.|author3-link=Fred Brooks|year=1964|title=Architecture of the IBM System/360|url=https://www.ece.ucdavis.edu/~vojin/CLASSES/EEC272/S2005/Papers/IBM360-Amdahl_april64.pdf|url-status=live|journal=[[IBM Journal of Research and Development]]|volume=8|issue=2|pages=87β101|doi=10.1147/rd.82.0087|archive-url=https://web.archive.org/web/20170810085620/https://www.ece.ucdavis.edu/~vojin/CLASSES/EEC272/S2005/Papers/IBM360-Amdahl_april64.pdf|archive-date=10 August 2017|author1-link=Gene Amdahl}}</ref> The first widely adopted 8-bit [[microprocessor]] was the [[Intel 8080]], being used in many hobbyist computers of the late 1970s and early 1980s, often running the [[CP/M]] [[operating system]]; it had 8-bit data words and 16-bit addresses. The [[Zilog Z80]] (compatible with the 8080) and the [[Motorola 6800]] were also used in similar computers. The Z80 and the [[MOS Technology 6502]] 8-bit CPUs were widely used in [[home computer]]s and [[Second generation of video game consoles|second-]] and [[Third generation of video game consoles|third-generation game consoles]] of the 1970s and 1980s. Many 8-bit CPUs or [[microcontroller]]s are the basis of today's ubiquitous [[embedded system]]s. As of 2025, 8-bit microcontrollers cost well under a dollar<ref>{{Cite web |title=The Amazing $1 Microcontroller |url=https://jaycarlson.net/microcontrollers/ |access-date=21 May 2025 |website=Jay Carlson |language=en-US}}</ref><ref>{{Cite web |title=STM8S103K3T6CTR 28 1KB STM8 8KB LQFP-32(7x7) Microcontroller |url=https://www.alibaba.com/product-detail/STM8S103K3T6CTR-28-1KB-STM8-8KB-LQFP_1601399505160.html}}</ref> (with some exceptions), but the cheapest 16-bit microcontrollers cost less than other types<!-- 0,224 β¬ in volume vs 0,286 β¬ (cheapest in volume) for higher volume of 8-bit vs 0,306 β¬ for 32-bit ARM lower volume --><ref>{{Cite web |title=16-bit Microcontrollers - MCU |url=https://eu.mouser.com/c/semiconductors/integrated-circuits-ics/embedded-processors-controllers/microcontrollers-mcu/16-bit-microcontrollers-mcu/?sort=pricing}}</ref> even including cheapest 8-bit (and are more powerful, and easier to program generally), making 8-bit legacy, i.e. not worth it for new applications; 32-bit microcontrollers are also well under half a dollar, close to cheapest 16-bit, and cheapest than most 8-bit. == Historical context == 8-bit microprocessors were the first widely used microprocessors in the computing industry, marking a major shift from mainframes and minicomputers to smaller, more affordable systems. The introduction of 8-bit processors in the 1970s enabled the production of personal computers, leading to the popularization of computing and setting the foundation for the modern computing landscape. The 1976 [[Zilog Z80]], one of the most popular 8-bit CPUs (though with [[4-bit computing|4-bit]] ALU, at least in the original), was discontinued in 2024 (its product line Z84C00), with Last Time Buy (LTB) orders by 14 June 2024.<ref>{{Cite web |date=15 April 2024 |title=X80 Product line: Z84C00 |url=https://www.mouser.com/PCN/Littelfuse_PCN_Z84C00.pdf}}</ref> == Details == [[File:MOS 6502AD 4585 top.jpg|thumb|MOS Technology 6502, a popular 8-bit microprocessor introduced in 1975. 1985 date code.]] An 8-bit register can store 2<sup>8</sup> different values. The [[range (computer programming)|range]] of [[integer]] values that can be stored in 8 bits depends on the [[Integer (computer science)#Value and representation|integer representation]] used. With the two most common representations, the range is 0 through 255 {{nowrap|(2<sup>8</sup> β 1)}} for representation as an ([[signedness|unsigned]]) [[binary number]], and β128 {{nowrap|(β1 Γ 2<sup>7</sup>)}} through 127 {{nowrap|(2<sup>7</sup> β 1)}} for representation as [[two's complement]]. 8-bit CPUs use an [[octet (computing)|8-bit]] [[bus (computing)|data bus]] and can therefore access 8 bits of data in a single [[Instruction (computer science)|machine instruction]]. The address bus is typically a double octet ([[16-bit computing|16 bit]]s) wide, due to practical and economical considerations. This implies a direct [[address space]] of 64 [[kilobyte|KB]] (65,536 bytes) on most 8-bit processors. Most [[home computer]]s from the 8-bit era fully exploited the address space, such as the [[BBC Micro]] (Model B) with 32 KB of [[random-access memory|RAM]] plus 32 KB of [[read-only memory|ROM]]. Others like the very popular [[Commodore 64]] had full 64 KB RAM, plus 20 KB ROM, meaning with 16-bit addressing not all of the RAM could be used by default (e.g. from the included [[BASIC]] language interpreter in ROM);<ref>{{Cite web|title=Bank Switching - C64-Wiki|url=https://www.c64-wiki.com/wiki/Bank_Switching|access-date=8 April 2021|website=www.c64-wiki.com}}</ref> without exploiting [[bank switching]], which allows for breaking the 64 KB (RAM) limit in some systems. Other computers would have as low as 1 KB (plus 4 KB ROM), such as the Sinclair [[ZX80]] (while the later very popular [[ZX Spectrum]] had more memory), or even only 128 bytes of RAM (plus [[storage (memory)|storage]] from a [[ROM cartridge]]), as in an early game console [[Atari 2600]] and thus 8-bit addressing would have been enough for the RAM, if it would not have needed to cover ROM too). The [[Commodore 128]], and other 8-bit systems, meaning still with 16-bit addressing, could use more than 64 KB, i.e. 128 KB RAM, also the [[BBC Master]] with it expandable to 512 KB of RAM. While in general 8-bit CPUs have 16-bit addressing, in some architectures both are available, such as in the [[MOS Technology]] [[MOS Technology 6502|6502]] CPU, where the [[zero page]] is used extensively, saving one byte in the instructions accessing that page, and also having 16-bit addressing instructions that take 2 bytes for the address plus 1 for the opcode. Some [[index register]]s, such as the two in the 6502, are 8-bit. This limits the size of the arrays addressed using [[indexed addressing]] instructions to objects of up to 256 bytes without requiring more complicated code. Other 8-bit CPUs, such as the [[Motorola 6800]] and [[Intel 8080]], have 16-bit index registers. == Notable 8-bit CPUs == {{Main|Microprocessor chronology}} The first commercial 8-bit processor was the [[Intel 8008]] (1972) which was originally intended for the [[Datapoint 2200]] [[intelligent terminal]]. Most competitors to [[Intel]] started off with such character oriented 8-bit microprocessors. Modernized variants of these 8-bit machines are still one of the most common types of processor in embedded systems. The [[MOS Technology 6502]], and variants of it, were used in personal computers, such as the [[Apple I]], [[Apple II]], [[Atari 8-bit computers]], [[BBC Micro]], [[Commodore PET|PET]], [[VIC-20]], and in [[home video game console]]s such as the [[Atari 2600]] and the [[Nintendo Entertainment System]]. {| class="wikitable center-all sortable" |+ style="font-size: 105%;" | Early or popular 8-bit processors (incomplete) ! Manufacturer !! Processor !! Year !! Comment |- | Intel || [[Intel 8008|8008]] || 1972 || [[Datapoint 2200]] compatible |- | Intel || [[Intel 8080|8080]] || 1974 || 8008 source compatible |- | [[Motorola]] || [[Motorola 6800|6800]] || 1974 || |- | [[Signetics]] || [[Signetics 2650|2650]] || 1975 || |- | [[Fairchild Semiconductor|Fairchild]] || [[Fairchild F8|F8]] || 1975 || |- | [[MOS Technology|MOS]] || [[MOS Technology 6502|6502]] || 1975 || Similar to 6800, but incompatible |- | [[Microchip Technology|Microchip]] || [[PIC microcontroller|PIC]] || 1975 ||[[Harvard architecture]] microcontroller |- | [[Electronic Arrays]] || [[EA9002]] || 1976 || 8-bit data, 12-bit addressing |- | [[RCA]] || [[RCA 1802|1802]] || 1976 || |- | [[Zilog]] || [[Zilog Z80|Z80]] || 1976 || 8080 binary compatible |- | Intel || [[Intel 8085|8085]] || 1976 || 8080 binary compatible |- | Zilog || [[Zilog Z8|Z8]] || 1978 ||Harvard architecture microcontroller |- | Motorola || [[Motorola 6809|6809]] || 1978 || 6800 source compatible |- | Intel || [[Intel 8051|8051]] || 1980 || Harvard architecture microcontroller |- | MOS || [[MOS Technology 6510|6510]] || 1982 || Enhanced 6502 custom-made for use in the [[Commodore 64]] |- | [[Ricoh]] || [[Ricoh 2A03|2A03]] || 1982 || 6502 clone minus BCD instructions for the [[Nintendo Entertainment System]] |- | Zilog || [[Zilog Z180|Z180]] || 1985 || Z80 binary compatible |- | Motorola || [[Freescale 68HC11|68HC11]] || 1985 || |- | [[Hudson Soft|Hudson]] || [[Hudson Soft HuC6280|HuC6280]] || 1987 || 65C02 binary compatible |- | [[Atmel]] || [[Atmel AVR|AVR]] || 1996 || |- | Zilog || [[Zilog eZ80|eZ80]] || 1999 ||Z80 binary compatible |- | [[Infineon]] || [[XC800 family|XC800]] || 2005 || |- | [[Freescale Semiconductor|Freescale]] || [[Freescale 68HC08|68HC08]] || {{dunno}} || |- | Motorola || [[Motorola 6800 family|6803]] || {{dunno}} || |- | [[NEC]] || [[NEC 78K0|78K0]]<ref>{{Cite web|url=http://www.am.necel.com/micro/product/all_8_general.html/|title=NEC 78K0|publisher=[[NEC]]|archive-url=https://web.archive.org/web/20081028210428/http://www.am.necel.com/micro/product/all_8_general.html/|archive-date=28 October 2008|url-status=dead|access-date=10 February 2009}}</ref> || {{dunno}} || |} == Use for training, prototyping, and general hardware education == 8-bit processors continue to be designed for general education about computer hardware, as well as for hobbyists' interests. One such CPU was designed and implemented using [[7400-series integrated circuits]] on a [[breadboard]].<ref>{{cite web|first=Daniel|last=Oberhaus|title= This Guy Designed and Built an 8-bit CPU from Scratch|website=[[Motherboard (website)|Motherboard]]|date=9 February 2019|url=https://www.vice.com/en/article/diy-8-bit-cpu/|access-date=4 November 2021}}</ref><ref>{{cite AV media|url=https://www.youtube.com/watch?v=g_ZaioqF1B0|title=Homebuilt 8-bit CPU + Computer with graphics and sound made from scratch using 74HC Logic|first=Paulo|last=Constantino}}</ref> Designing 8-bit CPUs and their respective assemblers is a common training exercise for engineering students, engineers, and hobbyists. [[FPGA]]s are used for this purpose. == See also == * [[Kenbak-1]] == References == {{Reflist}} {{CPU technologies}} {{Authority control}} [[Category:Data unit]] [[Category:8-bit computers]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Authority control
(
edit
)
Template:CPU technologies
(
edit
)
Template:Cite AV media
(
edit
)
Template:Cite journal
(
edit
)
Template:Cite web
(
edit
)
Template:Computer architecture bit widths
(
edit
)
Template:Dunno
(
edit
)
Template:Main
(
edit
)
Template:Multiple issues
(
edit
)
Template:Nowrap
(
edit
)
Template:Redirect
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Snd
(
edit
)
Template:Use dmy dates
(
edit
)