8-bit computing: Difference between revisions

Content deleted Content added
mNo edit summary
No edit summary
Line 3:
{{multiple issues|
{{more citations needed|date=October 2009}}
{{primary sources|date=August 2012}}
{{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=2017-08-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=2025-05-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 June 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 ==
Line 29:
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&nbsp;[[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&nbsp;KB of [[random-access memory|RAM]] plus 32&nbsp;KB of [[read-only memory|ROM]]. Others like the very popular [[Commodore 64]] had full 64&nbsp;KB RAM, plus 20&nbsp;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-04-08|website=www.c64-wiki.com}}</ref> without exploiting [[bank switching]], which allows for breaking the 64&nbsp;KB (RAM) limit in some systems. Other computers would have as low as 1&nbsp;KB (plus 4&nbsp;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&nbsp;KB, i.e. 128&nbsp;KB RAM, also the [[BBC Master]] with it expandable to 512&nbsp;KB of RAM.
 
While in general 8-bit CPUs have 16-bit addressing, in some architectures you have both, 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.
Line 94:
| 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-10-28|url-status=dead|access-date=10 February 2009-02-10}}</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=February 9, February 2019|url=https://www.vice.com/en/article/diy-8-bit-cpu/|access-date=November 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 ==