Hoofdstuk 1:
Computersystemen, algoritmes en software
1. Computersystemen
1.1. De digitale revolutie
De digitale revolutie is een kernpunt in het huidige beleid van de EU.
→ Ingrijpende impact op onze manier van leven en werken
Het houdt in dat veel processen die vroeger fysiek werden uitgevoerd, nu digitaal worden
uitgevoerd.
→ Gevolgen:
1. Kan de bestaande markt omgooien
2. Vergt een mentaal-culturele omslag van mensen
Op technologisch vlak wordt de digitale transformatie mogelijk gemaakt door een enorme
vooruitgang in de informatie- en communicatietechnologie.
→ Zowel inzake de hardware als de software
1.2. Computers
De digitale revolutie wordt gedragen door computers.
→ Via netwerken verbonden en vaak niet eens zichtbaar voor de gebruiker
→ Doorheen de geschiedenis veel technologische ontwikkelingen om eigen beperkte
mogelijkheden uit te breiden, maar toch is de computer fundamenteel verschillend:
De computer is via software programmeerbaar voor meerdere toepassingen
Definitie computer:
Een computer is een hardwaremachine om berekeningen uit te voeren, die met software
programmeerbaar is om op dezelfde machine meerdere programma’s te kunnen uitvoeren.
Het is een apparaat waarmee gegevens volgens formele procedures (algoritmes)
verwerkt/bewerkt kunnen worden om tot het gewenste resultaat te komen.
1.2.1. Evolutie van computers
De eerste programmeerbare computers waren er in de 19e eeuw al.
→ Obv mechanische componenten
→ Vb. Babbage machine
,In de 20e eeuw kwamen er computers met elektronische componenten.
→ WO II en de Koude Oorlog zorgden voor een drijfveer om krachtigere computers te
bouwen. (vb. om codes te kraken van vijanden of trajecten van raketten te berekenen)
→ Eerst elektronenbuizen, daarna halfgeleidercomponenten (transistoren)
Elektronenbuizen Halfgeleidercomponenten
Groot Kleiner
Verbruikten veel vermogen Verbruikten minder vermogen
Weinig bedrijfszeker
Betrouwbaarder en sneller
Vb. Colossus, ENIAC
door de halfgeleidertechniek werden de computers dus kleiner én krachtiger en dat zorgde voor
de ontwikkeling van:
- Persoonlijke computer
- Laptop
- Tablet
- Netbook
Tegelijk ontstonden de eerste bedrijven die software aanboden als product.
→ Vb. Microsoft
→ Naarmate de computers krachtiger werden, kwamen de softwarefirma’s ook steeds met
nieuwe diensten en softwaretoepassingen (vb. Amazon, Netflix, Google, Facebook,
Youtube, Spotify, OpenAI,…)
1.2.2. De von Neumann-computerarchitectuur
De standaardarchitectuur van een computer noemen we de Von Neumann architectuur. Hij
stelde in 1945 een rapport voor over hoe hij dacht dat we een computer moesten bouwen (first
draft of report on the EDVAC).
→ Zijn architectuur gebruiken we vandaag de dag nog steeds voor klassieke computers
Een Neumann computer werkt als volgt:
,De computer werkt dan met een cyclus van opladen – decoderen – uitvoeren – wegschrijven.
→ Computer wordt geprogrammeerd met een softwareprogramma en dat programma wordt
ingelezen en opgeslagen in het geheugen van de computer
→ De CPU haalt 1 voor 1 de programma-instructies uit het geheugen en voert ze uit op de
data die ingevoerd worden
→ De resultaten worden opnieuw naar het geheugen weggeschreven
De CPU’s worden doorheen de jaren alsmaar krachtiger en ook de opslagcapaciteit neemt toe.
→ Moderne computerchip heeft meerdere CPU’s naast elkaar die met hetzelfde geheugen
verbonden zijn -> softwareprogramma’s kunnen nog sneller uitgevoerd worden of er
kunnen verschillende taken tegelijk uitgevoerd worden
→ Vaak ook bijkomende processoren voor specifieke taken (vb. GPU: graphical
processing unit)
Bij de Neumann computer kan de ophaling van de volgende instructie en de uitvoering van een
bewerking op de data niet op hetzelfde moment plaatsvinden.
→ Beperkt de snelheid
→ Eenvoud van de computer is zowel zijn sterkte als zijn zwakte
→ Dus op zoek naar nieuwe architecturen: neuroforme- en kwantumcomputers
1.3. Elektronica en de wet van Moore
De huidige computers zijn opgebouwd met micro/nano-elektronica.
→ Basisbouwblok daarvan is de transistor
→ Transistor is de schakelaar:
Aan = 1
Uit = 0
→ Door transistoren te combineren, kunnen alle bewerkingen uitgevoerd worden op dit bits
(0-1)
→ Voor een volledige computer: heel veel transistoren nodig die met elkaar verbonden
moeten worden
→ Om kostprijs te drukken: zoveel mogelijk transistoren samen op 1 chip
Gordon Moore was 1 van de oprichters van Intel en na een tijdje in die firma, stelde hij vast dat
men technologisch de transistoren eigenlijk steeds kleiner kon maken. Daardoor kon je er meer
op een zelfde stukje chip zetten.
Hij voorspelde in 1965 dat het aantal transistoren op een chip elk 1,5 jaar zou verdubbelen dankzij
de continue verkleining ervan.
→ Bijgesteld naar verdubbeling elke 2 jaar
→ Door de verdubbeling worden computers sneller en krachtiger en krijgen ze meer
rekenkracht
De wet van Moore is dus een verdubbeling om de 2 jaar. Dat is een exponentiële toename van de
rekenkracht met de tijd.
→ Bij exponentiële groei krijg je per stap een vaste factor waarmee de huidige waarde
vermenigvuldigd wordt.
, <-> lineaire groei: per stap een vast increment dat wordt bijgeteld bij de huidige waarde
(maar geen vaste factor)
Daarnaast is ook het aantal computers enorm toegenomen.
→ Netwerken tussen die computers versterken de exponentiële groei nog meer
→ Gevolg: problemen sneller oplossen, moeilijkere problemen kunnen oplossen
→ Belangrijkste gevolg: er kunnen diensten aangeboden worden waarvoor de
rekenkracht/dataopslag fysiek ergens anders staat dan op je eigen computer
→ Ook supercomputers: speciaal ontwikkeld voor buitengewoon groot rekenvermogen
-> intern heel veel processoren die intern met zeer snel netwerk verbonden zijn
De huidige schaalverkleining is niet oneindig mogelijk, maar wetenschappers en ingenieurs
ontwikkelen al nieuwe technologieën om de groei in rekenkracht verder te zetten.
→ Tegen 2050: verwacht dat computers even krachtig zijn als menselijk brein (van iedereen
samen)
→ Vanaf dan technologische singulariteit: technologische vooruitgang gaat zo snel dat
mensen de maatschappij niet meer kunnen begrijpen of beheersen
1.4. Toekomstige computerarchitecturen
In de toekomst zijn er nog krachtigere computers nodig en daarvoor gaat men op zoek naar nieuwe
technologieën.
1.4.1. Neuromorfe computers
Deze computers zijn zo opgebouwd dat ze de neurobiologische architectuur en werking van
onze hersenen en zenuwen proberen na te bootsen.
→ Zelflerende systemen: via training en continue bijstelling voortdurend verbetering
→ Plasticiteit: kunnen zich aanpassen aan de omstandigheden
Ze worden vooral gebruikt voor cognitieve toepassingen.
→ Visie, gehiird, autonome auto’s,…
Het is voor deze computers belangrijk te weten hoe ons brein precies werkt.
→ Nog niet alles geweten daarover
→ Niet de bedoeling om het precies na te maken, wel om inspiratie te halen uit de werking
en structuur van het brein
Deze artificiële neurale systemen kunnen op bestaande computers ingebouwd worden, maar
implementaties in specifieke neuroforme hardware zijn sneller en verbruiken minder energie.
1.4.2. Kwantumcomputers
Bij deze computers maakt de rekenprocessor gebruik van de principes van de
kwantummechanica.
→ Basiselement = quantum bits (QPU’s): kunnen tegelijkertijd 0 en 1 zijn, dus rekenkracht
stijgt met aantal qubits
→ Kan parallel dezelfde berekeningen uitvoeren voor een zeer grote hoeveelheid data, dus
veel sneller dan klassieke computers
Computersystemen, algoritmes en software
1. Computersystemen
1.1. De digitale revolutie
De digitale revolutie is een kernpunt in het huidige beleid van de EU.
→ Ingrijpende impact op onze manier van leven en werken
Het houdt in dat veel processen die vroeger fysiek werden uitgevoerd, nu digitaal worden
uitgevoerd.
→ Gevolgen:
1. Kan de bestaande markt omgooien
2. Vergt een mentaal-culturele omslag van mensen
Op technologisch vlak wordt de digitale transformatie mogelijk gemaakt door een enorme
vooruitgang in de informatie- en communicatietechnologie.
→ Zowel inzake de hardware als de software
1.2. Computers
De digitale revolutie wordt gedragen door computers.
→ Via netwerken verbonden en vaak niet eens zichtbaar voor de gebruiker
→ Doorheen de geschiedenis veel technologische ontwikkelingen om eigen beperkte
mogelijkheden uit te breiden, maar toch is de computer fundamenteel verschillend:
De computer is via software programmeerbaar voor meerdere toepassingen
Definitie computer:
Een computer is een hardwaremachine om berekeningen uit te voeren, die met software
programmeerbaar is om op dezelfde machine meerdere programma’s te kunnen uitvoeren.
Het is een apparaat waarmee gegevens volgens formele procedures (algoritmes)
verwerkt/bewerkt kunnen worden om tot het gewenste resultaat te komen.
1.2.1. Evolutie van computers
De eerste programmeerbare computers waren er in de 19e eeuw al.
→ Obv mechanische componenten
→ Vb. Babbage machine
,In de 20e eeuw kwamen er computers met elektronische componenten.
→ WO II en de Koude Oorlog zorgden voor een drijfveer om krachtigere computers te
bouwen. (vb. om codes te kraken van vijanden of trajecten van raketten te berekenen)
→ Eerst elektronenbuizen, daarna halfgeleidercomponenten (transistoren)
Elektronenbuizen Halfgeleidercomponenten
Groot Kleiner
Verbruikten veel vermogen Verbruikten minder vermogen
Weinig bedrijfszeker
Betrouwbaarder en sneller
Vb. Colossus, ENIAC
door de halfgeleidertechniek werden de computers dus kleiner én krachtiger en dat zorgde voor
de ontwikkeling van:
- Persoonlijke computer
- Laptop
- Tablet
- Netbook
Tegelijk ontstonden de eerste bedrijven die software aanboden als product.
→ Vb. Microsoft
→ Naarmate de computers krachtiger werden, kwamen de softwarefirma’s ook steeds met
nieuwe diensten en softwaretoepassingen (vb. Amazon, Netflix, Google, Facebook,
Youtube, Spotify, OpenAI,…)
1.2.2. De von Neumann-computerarchitectuur
De standaardarchitectuur van een computer noemen we de Von Neumann architectuur. Hij
stelde in 1945 een rapport voor over hoe hij dacht dat we een computer moesten bouwen (first
draft of report on the EDVAC).
→ Zijn architectuur gebruiken we vandaag de dag nog steeds voor klassieke computers
Een Neumann computer werkt als volgt:
,De computer werkt dan met een cyclus van opladen – decoderen – uitvoeren – wegschrijven.
→ Computer wordt geprogrammeerd met een softwareprogramma en dat programma wordt
ingelezen en opgeslagen in het geheugen van de computer
→ De CPU haalt 1 voor 1 de programma-instructies uit het geheugen en voert ze uit op de
data die ingevoerd worden
→ De resultaten worden opnieuw naar het geheugen weggeschreven
De CPU’s worden doorheen de jaren alsmaar krachtiger en ook de opslagcapaciteit neemt toe.
→ Moderne computerchip heeft meerdere CPU’s naast elkaar die met hetzelfde geheugen
verbonden zijn -> softwareprogramma’s kunnen nog sneller uitgevoerd worden of er
kunnen verschillende taken tegelijk uitgevoerd worden
→ Vaak ook bijkomende processoren voor specifieke taken (vb. GPU: graphical
processing unit)
Bij de Neumann computer kan de ophaling van de volgende instructie en de uitvoering van een
bewerking op de data niet op hetzelfde moment plaatsvinden.
→ Beperkt de snelheid
→ Eenvoud van de computer is zowel zijn sterkte als zijn zwakte
→ Dus op zoek naar nieuwe architecturen: neuroforme- en kwantumcomputers
1.3. Elektronica en de wet van Moore
De huidige computers zijn opgebouwd met micro/nano-elektronica.
→ Basisbouwblok daarvan is de transistor
→ Transistor is de schakelaar:
Aan = 1
Uit = 0
→ Door transistoren te combineren, kunnen alle bewerkingen uitgevoerd worden op dit bits
(0-1)
→ Voor een volledige computer: heel veel transistoren nodig die met elkaar verbonden
moeten worden
→ Om kostprijs te drukken: zoveel mogelijk transistoren samen op 1 chip
Gordon Moore was 1 van de oprichters van Intel en na een tijdje in die firma, stelde hij vast dat
men technologisch de transistoren eigenlijk steeds kleiner kon maken. Daardoor kon je er meer
op een zelfde stukje chip zetten.
Hij voorspelde in 1965 dat het aantal transistoren op een chip elk 1,5 jaar zou verdubbelen dankzij
de continue verkleining ervan.
→ Bijgesteld naar verdubbeling elke 2 jaar
→ Door de verdubbeling worden computers sneller en krachtiger en krijgen ze meer
rekenkracht
De wet van Moore is dus een verdubbeling om de 2 jaar. Dat is een exponentiële toename van de
rekenkracht met de tijd.
→ Bij exponentiële groei krijg je per stap een vaste factor waarmee de huidige waarde
vermenigvuldigd wordt.
, <-> lineaire groei: per stap een vast increment dat wordt bijgeteld bij de huidige waarde
(maar geen vaste factor)
Daarnaast is ook het aantal computers enorm toegenomen.
→ Netwerken tussen die computers versterken de exponentiële groei nog meer
→ Gevolg: problemen sneller oplossen, moeilijkere problemen kunnen oplossen
→ Belangrijkste gevolg: er kunnen diensten aangeboden worden waarvoor de
rekenkracht/dataopslag fysiek ergens anders staat dan op je eigen computer
→ Ook supercomputers: speciaal ontwikkeld voor buitengewoon groot rekenvermogen
-> intern heel veel processoren die intern met zeer snel netwerk verbonden zijn
De huidige schaalverkleining is niet oneindig mogelijk, maar wetenschappers en ingenieurs
ontwikkelen al nieuwe technologieën om de groei in rekenkracht verder te zetten.
→ Tegen 2050: verwacht dat computers even krachtig zijn als menselijk brein (van iedereen
samen)
→ Vanaf dan technologische singulariteit: technologische vooruitgang gaat zo snel dat
mensen de maatschappij niet meer kunnen begrijpen of beheersen
1.4. Toekomstige computerarchitecturen
In de toekomst zijn er nog krachtigere computers nodig en daarvoor gaat men op zoek naar nieuwe
technologieën.
1.4.1. Neuromorfe computers
Deze computers zijn zo opgebouwd dat ze de neurobiologische architectuur en werking van
onze hersenen en zenuwen proberen na te bootsen.
→ Zelflerende systemen: via training en continue bijstelling voortdurend verbetering
→ Plasticiteit: kunnen zich aanpassen aan de omstandigheden
Ze worden vooral gebruikt voor cognitieve toepassingen.
→ Visie, gehiird, autonome auto’s,…
Het is voor deze computers belangrijk te weten hoe ons brein precies werkt.
→ Nog niet alles geweten daarover
→ Niet de bedoeling om het precies na te maken, wel om inspiratie te halen uit de werking
en structuur van het brein
Deze artificiële neurale systemen kunnen op bestaande computers ingebouwd worden, maar
implementaties in specifieke neuroforme hardware zijn sneller en verbruiken minder energie.
1.4.2. Kwantumcomputers
Bij deze computers maakt de rekenprocessor gebruik van de principes van de
kwantummechanica.
→ Basiselement = quantum bits (QPU’s): kunnen tegelijkertijd 0 en 1 zijn, dus rekenkracht
stijgt met aantal qubits
→ Kan parallel dezelfde berekeningen uitvoeren voor een zeer grote hoeveelheid data, dus
veel sneller dan klassieke computers