· Text 446 · w8 · inlagg
Jag kommer här med ett förslag till kursplan för Z80/assembler kursen,
det kommer att bli en hel del inledande avsnitt att läsa/bearbeta innan
vi börjar programmera på allvar.
Jag har tittat lite på det hela och kommit fram till att det är alltid
bra att ha en viss hårdvarumässig bakgrund när man börjar programmera
i assembler, därför föreslår jag att vi kompleterar kursmaterialet med
en svensk bok som heter Mikrodatorns ABC skriven av Gunnar Marksjö, den
beskriver hur ABC80 är uppbyggd och fungerar hårdvarumässigt och till
viss del mjukvarumässigt, dock innehåller den ett antal grundläggande
kapitel som kan vara bra att läsa. Även viss annan referenslitteratur
kan vara av värde SGS Technical Reference Manual Z80 Microprocessor
Family, där finns beskrivet alla kringkretsar och hur man programmerar
dessa PIO, SIO, DART, CTC, DMA och CPU:n, även BIT för BIT med ABC800
och avancerad programmering på ABC80 kan vara aktuella lite längre
fram.
När det gäller assemblator så är det inte så akut då de 4-5 första
avsnitten inte kräver detta och sedan till en början så bör vi hand-
assemblera för att greppa det hela på ett bra sätt.
Kursplanen gör inte anspråk på att vara komplett utan bara som en upp-
delning av kursen i avsnitt, därför har inte målplaner och syfte med
varje avsnitt formulerats.
Litteratur: Programming the Z80, Mikrodatorns ABC
Ref.litt: Z80 Family Technical reference Manual, BIT för BIT med ABC800
Avancerad programmering på ABC80
När det gäller litteratur så skall vi försöka göra samköp för att få
den till så bra priser som möjligt (Jag är själv åf. för vissa böcker
så att jag skall försöka göra vad jag kan för att få till bra priser).
KURSPLAN
1. Talsystem & Binäraritmetik
- Lära sig binära,oktala,hexadecimala talsystemet, en-komplement,
två-komplement, vissa enkla logiska funktioner
- Kapitel 1 i Prog the Z80.
2. Grundläggande inledning till datorns funktion
- Kapitel 1 i Mikro. ABC
3. Grundläggande (enkel) digitalteknink/ Elektroniska byggblock
- Lära sig enkla grindar & vippor, lite om minnen ROM, RAM, sekvens-
kretsar, minnesavkodning, addringskrets (half-adder)
- Kapitel 2 i Mikro. ABC
4. Datorns funktion i princip
- Lära sig lite mer om hur en dator fungerar, intern funktion hos
en CPU.
- Kapitel 3 i Mikro. ABC
5. Z80 - CPU hårdvarumässiga uppbyggnad
- Lära sig: system arkitektur, register, flaggor, bussar, stack,
instruktionscykel, vissa instruktioner, minne och I/O hantering.
- Kapitel 2 i Prog the Z80.
6. Exempel på ett komplett system (för trafikljusstyrning), med
vissa programmeringsexempel.
- Lära sig hur ett mikrodatorsystem kan vara uppbyggt, lära sig
hur utveckling av mjukvara går till assemblatorer mm.
- Kapitel 4 i Mikro. ABC
7. Grundläggande programmering (enkla rutiner, handassemblering)
- Lära sig skriva enkla små assemblerprogram, och handassemblera
dessa och köra de på den egna maskinen.
- Eget material designat av lärarna.
8. Grundläggande programmering med kännedom om assemblatorer
- Lära sig skriva lite större program (ca 20 talet instruktioner),
använda sig av assemblatorer.
- Eget material från lärarna.
9. Aritmetiska program för multiplikation & division
- Lära sig skriva lite större program (ca 50 instruk), skriva
enkla program för heltalsmultiplikation och division.
- Kapitel 3 i Prog the Z80
10. Z80 - Instruktionsset
- Skaffa sig ett grepp om Z80:n instruktionsuppsättning.
- Kapitel 4 i Prog the Z80
11. Programexempel I
- Mål att lära sig fler instruktioner
12. Programexempel II
- Mål att lära sig fler instruktioner
13. Genomgång av instruktion för instruktion
- Mål att skummläsa instruktionsuppsättningen och bilda sig en djupare
uppfattning om de olika instruktionerna, dvs lära sig ungefär
vilka som finns och var.
- Prog the Z80 "mittuppslaget"