16-bitine arvutiarhitektuur

Arvutiarhitektuuris on 16-bitiste täisarvude, mäluaadresside või muude andmeüksuste maksimaalseks laiuseks 16 bitti (2 baiti). 16-bitised protsessorite ja aritmeetika-loogikaplokkide arhitektuurid põhinevad sellise suurusega andme- ja aadressisiinidel või registritel. 16-bitisteks nimetatakse ka mikroarvutite põlvkonda, milles kasutati 16-bitiseid mikroprotsessoreid.

16-bitine register mahutab 216 erinevat väärtust. 16-s bitis on võimalik salvestada märgiga täisarve ulatuses −32 768 (−1 × 215) kuni 32 767 (215 – 1), märgita täisarve aga ulatuses 0 kuni 65 535 (216 – 1). Kuna 216 on 65 536, on 16-bitiste mäluaadressidega protsessoril otsene juurdepääs bait-adresseeritavale mälule suurusega 64 KiB.

16-bitine arhitektuur
1951. aastal valminud MIT Whirlwind I on tõenäoliselt esimene 16-bitine arvuti. Teiste varaste 16-bitiste arvutite hulka kuuluvad IBM 1130, HP 2100, Data General Nova ja DEC PDP-11. Mõned varasemad 16-bitised mikroprotsessorid on National Semiconductori poolt loodud IMP-16 ja PACE, Western Digitali MCP-1600, HP BPC ja TI TMS9900. Teiste märkimisväärsete 16-bitiste protsessorite hulka kuuluvad Intel 8086, Intel 80286, WDC 65C816 ja Zilog Z8000. Intel 8088 on binaarselt ühilduv Intel 8086-ga ning selle registrid on 16 bitti laiad. Kuigi selle välissiin on 8 bitti lai, võib see täita 16-bitiseid aritmeetilisi käske.

16-bitised protsessoreid enam personaalarvutite tööstuses sisuliselt ei kasutata. Manusrakendustes kasutatakse neid vähem kui 32-bitiseid (või 8-bitiseid) protsessoreid.

16/32-bitine Motorola 68000 ja Intel 386SX
Motorola 68000 nimetatakse mõnikord 16-bitiseks, sest selle sisemised ja välised andmesiinid on 16 bitti laiad. Siiski võib seda pidada 32-bitiseks protsessoriks selle 32 bitti laiade üldregistrite ja 32-bitist aritmeetikat toetavate aritmeetikakäskude tõttu. See on mikroprogrammeeritud protsessor kolme sisemise aritmeetika-loogikaploki üksusega. Motorola 68000 tarkvara on loomult 32-bitine ja edasiühilduv teiste sama perekonna 32-bitiste protsessoritega. 68008 on Motorola 68000 versioon 8-bitise välise andmeraja ja 1 megabaidise adresseerimisega 48-viigise DIP (Dual In-line Package) versiooni jaoks ning 4 megabaidise adresseerimisega 52-viigise PLCC (Plastic Leaded Chip Carrier) versiooni jaoks. Mitu Apple Inc. Macintoshi mudelit kasutasid kulude säästmiseks 32-bitiseid 68020 ja 68030 protsessoreid 16-bitisel andmesiinil.

Intel 80286 asendusprotsessor Intel 386SX on 32-bitine protsessor 32-bitise aritmeetika-loogikaploki ja sisemiste 32-bitiste andmeradade, 16-bitise välissiini ja 24-bitise adresseerimismeetodiga.

Sega Mega Drive’i 68000 protsessor oli mängukonsooli rohkelt reklaamitud tunnusjoon. Tõhusa reklaamimise tõttu nimetatakse mängukonsoolide ajastut vahemikus 1988–1995 (neljas põlvkond) 16-biti ajastuks.

Inteli 16-bitised mälumudelid
16-bitine Inteli arhitektuur võimaldab erinevaid mälumudeleid ehk võimalusi konkreetse mäluasukoha juurdepääsuks. Põhjus konkreetse mälumudeli kasutamiseks peitub assembleri käskude või viitade jaoks tarviliku mälu suuruses.

Tilluke (tiny)
Kood ja andmed asuvad samas segmendis (registrid CS, DS, ES ja SS viitavad kõik samale segmendile). Alati kasutatakse 16-bitiseid viitasid. Koodi, andmete ja pinu kogusuurus ei ületa 64 KB.

Väike (small)
Kood ja andmed on erinevates segmentides, kasutatakse lühikesi viitasid. Seal on 64 KB ruumi koodi ja 64 KB andmete/pinu jaoks.

Keskmine (medium)
Koodis kasutatakse pikki viitasid, mis võimaldavad suurust 1 MB. Andmeviitade tüüp on jätkuvalt lühike.

Kompaktne (compact)
Kompaktne mälumudel on keskmise vastand. Andmete jaoks kasutatakse pikki ja koodi jaoks lühikesi viitasid.

Suur (large/huge)
Koodi- ja andmeviidad on pikad.

16-bitine rakendus
IBM-ühilduvate ja Winteli riistvara platvormide kontekstis on 16-bitine rakendus tarkvara, mis on kirjutatud operatsioonisüsteemidele MS-DOS, OS/2 1.x või varajastele Microsoft Windowsi versioonidele, mis algselt kasutasid 16-bitiseid Intel 8088 ja Intel 80286 mikroprotsessoreid. Sellised rakendused kasutasid 20-bitiseid või 24-bitiseid segmente, et suurendada adresseeritavate mälukohtade vahemikku. Enam kui 216 baiti (64 kilobaiti) korraldusi sisaldavad programmid vajasid seega erijuhtnööre oma 64-kilobaidiste segmentide vahel ümberlülituste tegemiseks. See suurendas 16-bitiste rakenduste programmeerimise keerukust.

16-bitiste protsessorite nimekiri

 Data General
 Nova
 Eclipse
 Digital Equipment Corporation
 PDP-11
 DEC J-11
 DEC T-11
 EnSilica
 eSi-1600
 Ferranti
 Ferranti F100-L
 Ferranti F200-L
 Freescale
 Freescale 68HC12
 Freescale 68HC16
 General Instrument
 CP1600
 Hewlett-Packard
 HP 21xx/2000/1000/98xx/BPC
 HP 3000
 Honeywell
 Honeywell Level 6/DPS 6
 IBM
 1130/1800
 System/7
 Series/1
 System/36
 Infineon
 XE166 family
 C166 family
 C167 family
 XC2000
 Intel
 Intel 8086/Intel 8088
 Intel 80186/Intel 80188
 Intel 80286
 Intel MCS-96
 Lockheed
 MAC-16
 National Semiconductor
 IMP-16
 PACE/INS8900
 NEC
 V20/V30
 Texas Instruments
 Texas Instruments TMS9900
 TI MSP430
 Western Design Center
 WDC 65816/65802
 Western Digital
 MCP-1600
 Xerox
 Alto
 Zilog
 Zilog Z8000

Viited

Välislingid
 Mängukonsoolide 16-bit ajastu
 16-bitised arvutid 80ndate keskpaigas
 Mis on 16-bitine mikrokontroller?

Arvutiarhitektuur