Kenbak-1

Kenbak-1
Kenbak1.jpg
En Kenbak-1 på Computer History Museum
Utvecklare John Blankenbaker
Tillverkare Kenbak Corporation
Typ Personlig dator
Utgivningsdatum 1971 ; 52 år sedan ( 1971 )
Introduktionspris 750 USD (motsvarande 5 020 USD 2021)
Avvecklad 1973 ( 1973 )
Enheter sålda 44
Minne 256 byte minne _

Kenbak -1 anses av Computer History Museum , Computer Museum of America och American Computer Museum vara världens första " persondator ", uppfann av John Blankenbaker (född 1929) från Kenbak Corporation 1970, och såldes först i tidigt 1971. Mindre än 50 maskiner har någonsin byggts med Bud Industries kapslingar som sitt hus. Systemet såldes först för US$ 750. Idag är det bara känt att 14 maskiner existerar över hela världen, i händerna på olika samlare och museer. Produktionen av Kenbak-1 avbröts 1973 när Kenbak misslyckades och togs över av CTI Education Products, Inc. CTI bytte namn på inventariet och döpte om det till 5050, även om försäljningen förblev svårfångad.

Eftersom Kenbak-1 uppfanns före den första mikroprocessorn , hade maskinen inte en enchips- CPU utan baserades istället enbart på småskalig integration av TTL - chips . 8-bitarsmaskinen erbjöd 256 byte minne , implementerad på Intels typ 1404A silicon gate MOS -skiftregister . Klocksignalperioden var 1 mikrosekund ( motsvarande en klockhastighet på 1 MHz ), men programhastigheten var i genomsnitt under 1000 instruktioner per sekund på grund av många klockcykler som behövs för varje operation och långsam åtkomst till seriellt minne.

Maskinen programmerades i ren maskinkod med hjälp av en rad knappar och omkopplare. Utgången bestod av en rad lampor.

Internt har Kenbak-1 en seriell datorarkitektur som bearbetar en bit i taget.

Teknisk beskrivning

Register

Kenbak-1 registrerar sig
07 06 05 04 03 02 01 00 (bitposition)
Huvudregister
A A
B B
X X (index)
P P rogramräknare
Flaggor
000 000 C O A flaggor
000 000 C O B flaggor
000 000 C O X flaggor
Ingång/utgång
Produktion Ljus
Inmatning Växlar

Kenbak-1 har totalt nio register. Alla är minnesmappade. Det har tre allmänna register: A, B och X. Register A är den implicita destinationen för vissa operationer. Register X är också känt som indexregistret och förvandlar de direkta och indirekta lägena till indexerade direkta och indexerade indirekta lägen. Den har även programräknare, kallad Register P, tre "overflow and carry"-register för A, B respektive X samt ett Input Register och ett Output Register.

Adresseringslägen

Addera, subtrahera, ladda, lagra, ladda kompliment och och eller instruktioner fungerar mellan ett register och en annan operand med fem adresseringslägen:

  • Omedelbar (operand är i den andra byten av instruktionen)
  • Minne (andra byte av instruktion är adressen till operanden)
  • Indirekt (andra byte av instruktion är adressen till operandens adress)
  • Indexerad (andra byte av instruktion läggs till X för att bilda operandens adress)
  • Indirekt indexerad (andra byte med instruktion pekar på en plats som läggs till X för att bilda operandens adress)

Instruktionstabell

Instruktionerna är kodade i 8 bitar, med en möjlig andra byte som ger ett omedelbart värde eller adress. Vissa instruktioner har flera möjliga kodningar.


Se även

externa länkar