Tämä kirja on tarkoitettu henkilöille, joilla on elektronikan perustietous ja jotka haluavat perehtyä mikrotietokonetekniikkaan. Kirjan pohjaksi on kirjoittaja valinnut ruotsalaisen mikrotietokonejärjestelmän ABC 80, joka on suunniteltu Z80A-mikrosuorittimen ympärille.
Kirjan alussa käsitellään vakiopiireistä rakennetun mikrotietokoneen komponentteja ja toimintoja. Tämän jälkkeen tutustutaan erääseen yleiseen mikrotietokonejärjestelmään ja sen tärkeimpiin oheislaitteisiin kuten näppäimistöön, näyttöpäätteeseen ja kasettimuistiyksikköön. Lisäksi tarkastellaan mikrotietokoneen laajennusmahdollisuuksia väylän avulla. Kirjan lopussa luodaan katsaus järjestelmän pehmoon ja käsitellään useita ohjelmaesimerkkejä yksityiskohtaisesti.
Kirja soveltuu erityisen hyvin ammatillisten ja teknillisten oppilaitosten käyttöön oppikirjaksi sekä harrastelijoille itseopiskelun tueksi.
Table of Contents |
Mikrotietokoneiden ABC | 1 |
|
1. Tietokoneen toiminta | 2 |
1. Liikennevalon tehtävä | 2 |
2. Kolme periaateratkaisua | 4 |
3. Liitäntäpiiri | 4 |
3.1 Ottopiiri | 7 |
3.2 Antopiiri | 7 |
4. Tietokoneen tehtävä | 8 |
|
2. Elektroniset rakenneosat | 9 |
1. Neljä peruspiiriä | 9 |
1.1 Invertteri | 10 |
1.2 Veräjä | 11 |
1.3 Kolmetilapiirit | 13 |
1.4 Kiikku | 14 |
2. Kombinaatiopiirit | 17 |
2.1 Veräjäverkko | 17 |
2.2 Tulkki | 20 |
2.3 Lukumuistit | 21 |
2.4 Valitsin | 25 |
3. Sekvenssipiirit | 26 |
3.1 Rekisterit | 26 |
3.2 Laskuri | 28 |
3.3 Hakumuisti | 29 |
|
3. Tietokoneen toimintaperiaate | 33 |
1. Lähtökohdat | 33 |
2. Väylät | 35 |
3. Mikrosuoritin | 37 |
3.1 Keskusyksikön rekisterit | 38 |
3.2 Ohjausyksikkö | 41 |
3.3 Mikro-ohjelma | 42 |
3.4 ALU | 44 |
3.5 CPU:n liput | 53 |
3.6 Pino-osoitin | 55 |
3.7 Aliohjelma | 56 |
3.8 Keskusyksikön rakenne | 58 |
4. Liikennevalo-ohjelma | 62 |
4.1 Pääohjelma | 62 |
4.2 Aliohjelma VALOT | 64 |
|
4. Liinnevalojen ohjausjärjestelmä | 66 |
1. Kovo | 66 |
1.1 Ohjausväylä | 66 |
1.2 Yleinen tietokoneen rakenne | 68 |
1.3 Eräs minimijärjestelmä | 69 |
1.4 Oma mikrotietokone vai mikrotietokonekortti? | 72 |
2 Pehmo | 74 |
2.1 Z80-suorittimen miellekoodi | 74 |
2.2 Assembler-käskyjen kirjoittaminen | 76 |
2.3 Miten assembler-ohjelma kirjoitetaan? | 78 |
2.4 Yksinkertainen lähdeohjelma | 79 |
2.5 Lähdeohjelma käännettynä | 86 |
2.6 Ammattimaisesti kirjoitettu ohjelma | 86 |
|
5. ABC 80 -tietokoneen elektroniikka | 89 |
1. Yleinen järjestelmä | 89 |
2. Lohkokaavio | 91 |
3. Muisti | 97 |
3.1 Lukumuisti (ROM) | 98 |
3.2 Hakumuisti (RAM) | 100 |
4. Äänigeneraattori | 105 |
4.1 Eri vamistustekniikat | 105 |
4.2 Äänigeneraattorin toiminnot | 107 |
5. PIO-piiri | 114 |
5.1 Keskeytykset | 115 |
5.2 PIO:n lohkokaavio | 118 |
5.3 PIO:n kytkentä ABC 80 -mikrotietokoneessa | 120 |
6. Väyläliitäntä | 125 |
6.1 Ulkoisen muistin liittäminen | 126 |
6.2 lkoisten otto/antoyksiköiden liittäminen | 129 |
|
6. Oheislaitteet | 133 |
1. Näppäimistö | 135 |
1.1 Näppäinkoodit | 135 |
1.2 Näppäimistön elektroniikka | 136 |
2. Videoliitäntä | 143 |
2.1 TV-kuva | 144 |
2.2 Laskurit | 145 |
2.3 Kuvaosoite ja muistiosoite | 146 |
2.4 Merkkien muodostaminen | 150 |
2.5 Merkit, graafiset merkit ja osoitin | 152 |
2.6 ABC 80 -mikrotietokoneen grafiikka | 154 |
2.7 Merkkimuoto ja grafiikkamuoto | 155 |
2.8 Erityiskoodit | 157 |
2.9 Keskusyksikkö ja kuvamuisti | 158 |
2.10 Videosignaali | 160 |
3. Nauhoitinliitäntä | 160 |
3.1 Tallennusmenetelmä | 160 |
3.2 Nauhoitinliitännän piirit | 164 |
3.3 ABC 80 -nauhoitinohjelma | 167 |
4. ABC-väylä | 198 |
4.1 Periaate | 170 |
4.2 Väylän muistiosa | 171 |
4.3 Esimerkki muistikortista | 172 |
4.4 Otto/antoväylä | 174 |
4.5 Esimerkki otto/antokortista | 175 |
4.6 ABC-väylän käytännön rakenne | 179 |
|
7. Ohjelmisto | 181 |
1. Alustus | 182 |
1.1 Kolme rutiinia | 182 |
1.2 Muut nollaukset | 184 |
1.3 PIO:n ohjelmointi | 184 |
1.4 Osoitin | 184 |
1.5 Muisti | 185 |
2. BASIC-tulkki | 186 |
2.1 Rivipuskuri BUF1 | 186 |
2.2 Käsky tai BASIC-lause | 187 |
2.3 Lausepuskuri BUF2 | 188 |
2.4 Kolmentyyppisiä muuttujia | 189 |
2.5 Välikielikääntäjä | 190 |
2.6 Toteutus tai tallennus | 191 |
2.7 Ohjelmasuoritus | 198 |
2.8 Nauharutiinit | 193 |
3. Esimerkkiohjelma | 196 |
3.1 Äänigeneraattorin ohjaus | 196 |
3.2 Bittikäsittely | 200 |
3.3 Moottoriohjaus | 202 |
3.4 Näppäimistö | 203 |
3.5 Muisti | 205 |
3.6 Kuvamuisti | 207 |
3.7 V24-liitäntä | 208 |
3.8 Teho-ohjaus | 211 |
4. ABC 80 -mikrotietokoneen pehmo | 213 |
4.1 Koetinohjelma | 213 |
4.2 ABC 80 -mikrotietokoneen grafiikka | 214 |
4.3 Liukulukumuuttujat | 215 |
4.4 Satunnaislukugeneraattori | 216 |
5. ABC-väylän ohjelmointi | 218 |
6. Ohjelmaesimerkkejä | 221 |
6.1 ABC 80 -mikrotietokoneen reaaliaikakello | 221 |
6.2 Simulointi | 224 |
|
Liite A Z80 Instruction Set | 226 |
|
Liite B Seitsemänsegmenttikello | 228 |
|
Liite C Liikennesimulointi | 230 |
|
Sanasto | 231 |