Deel 1: C-tutorial
1. Opbouw en werking van een computer
1.1 Assembler
1.2 Hogere programmeertalen
1.3 Moderne hogere programmeertalen
1.4 Samenvatting

2. Getalpresentaties en codesystemen
2.1 Talstelsel
2.2 Binair rekenen
2.3 Codesystemen
2.4 Samenvatting

3. Heel kleien C-programma’s
3.1 Drie minimale C-programma’s
3.2 Een meer uitgebreid programma
3.3 Samenvatting
3.4 Opdracht

4. Variabelen en constanten
4.1 Typen variabelen
4.2 Constanten
4.3 Positieve en negatieve getallen
4.4 Toekenning
4.5 Lokale en globale variabelen
4.6 Samenvatting
4.7 Opdrachten

5. Bewerkingen
5.1 Rekenkundige bewerkingen
5.2 Uitdrukkingen en statements
5.3 Samenvatting
5.4 Opdracht

6. Beslissingen
6.1 if-else
6.2 Boolean-uitdrukkingen
6.3 Compound-statement
6.4 Switch
6.5 De constructie?:
6.6 Samenvatting
6.7 Opdracht

7. Herhaalstructuren
7.1 for
7.2 while
7.3 do while
7.4 break en continue
7.5 Aanvullingen for-lus
7.6 Samenvatting
7.7 Opdrachten

8. Arrays en herhalingen
8.1 Het gebruik van een array
8.2 De for-lus in combinatie met een array
8.3 Strings
8.4 Samenvating
8.5 Opdrachten

9. Samengestelde datatypen
9.1 struct
9.2 union
9.3 Samenvatting
9.4 Opdrachten

10. Pointers
10.2 Pointers en adressen van variabelen
10.3 Typecasting
10.4 speciale string-kopieerconstructie
10.5 Pointers naar pointers
10.6 Samenvatting
10.7 opdracht

11. Functies
11.1 Functies en parameters
11.2 Formele en actuele parameters
11.3 Returntype
11.4 Pointer als parameter
11.5 De functie printf
11.6 Prototype van een functie
11.7 Recursieve functie
11.8 Pointers naar functies
11.9 Samenvatting
11.10 Opdrachten

12. Bitoperaties
12.1 Bitgewijze bewerkingen
12.2 Schuifinstructies
12.3 Bitbewerkingen
12.4 Samenvatting
12.5 Opdracht

13. File-I/O
13.1 Elementaire I/O
13.2 Bibliotheekfuncties voor file I/O
13.3 Parameter voor main()
13.4 Dynamische geheugenlocatie
13.5 Samenvatting
13.6 Opdracht

14. Meer bronbestanden
14.1 Het opsplitsen van de broncode
14.2 include-bestanden
14.3 Scope van variabelen
14.4 Overzicht van enkele bibliotheekfunctis
14.5 Samenvating
14.6 Opdrachten

15. Niet gehele getallen
15.1 Floating point-getallen
15.2 Floating point-getallen in C
15.3 Fixed pont-getallen
15.4 Samenvating
15.5 Opdracht

Deel 2: C in een technische omgeving
16 .C in een embedded omgeving
16.1 Geheugengebruik en prestatie
16.2 Veligheid
16.3 Structuur van eenvoudige embedded systemen
16.4 Structuur van meer complexe embedded systemen
16.5 Samenvatting

17. Anatomie van een C-programma
17.1 Parameteroverdracht via de stack
17.2 Framepointer
17.3 Geheugenmodel van een programma in uitvoering
17.4 Runtime startoff
17.5 Het compilatieproces
17.6 Samenvatting

18. Crosscompilatie
18.1 Wat is crosscompilatie?
18.2 Van host naar target
18.3 De compiler compileren
18.4 Een bibliotheek maken
18.5 Samenvatting

19. RAID-ssyteem
19.1 RAID-technologie
19.2 Genereren van een pariteitsblok
19.3 Bepaling van disktoewijzing bij RAID5
19.4 Schrijfacties onder RAID5
19.5 Samenvatting
19.6 Opdracht

20. Het aansturen van hardware vanuit een C-programma
20.1 Eenvoudig stuurprogramma
20.2 Apparaat als statemachine
20.3 Stuurprogramma’s en besturingssysteem (een inleiding)
20.4 Stuurprogramma’s in een Linuxomgeving
20.5 Samenvatting

21. Fixed point-berekeningen
21.1 C en fixed point
21.2 Sinus-en cosinusberekeningen in fixed point
21.3 Het genereren van sintab.h vanuit een C-pogramma
21.4 Winst aan snelheid
21.5 Samenvatting

22. C en Linux
22.1 Besturingssysteem
22.2 Procescreatie
22.3 Zombies, init en orphans
22.4 Gedaanteverwisselingen met exec
22.5 Het onderscheppen van signals
22.6 Interprocescommunicatie met pipe
22.7 File-I/O
22.8 Locking
22.9 Clone
22.10 Samenvatting
22.11 Opdrachten

23. Combinatie van C met assembler
23.1 Wanneer is assembler nodig?
23.2 Een kleine inleiding in assembler
23.3 Assembler in combinatie met C
23.4 Samenvatting

24. C in een netwerktoepassing
24.1 Client/server-systeem
24.2 De realisatie in C
24.3 Uitvoering
24.4 Samenvatting
24.5 Opdracht

A: Het gebruik van de cd-rom