"Simulering" av datamaskin




Jeg refererer her til analogien (se figur)  mellom en datamaskin og personen som sitter ved skrivebordet og arbeider, der hjernen er CPU, kladdearket på skrivebordet er indre lager, innkurven er innenheter, utenheten er utenheter og arkivskuffen er ytre lager.

På en pult kan vi legge ut papirark som kan forestille forskjellige enheter i maskinen:

I all sin enkelhet virker datamaskinen ved at CPU kontinuerlig arbeider etter følgende instruks:

  1. Les neste instruksjon fra RAM eller ROM
  2. Utfør instruksjonen
  3. Gå til 1

Et program må altså ligge i indre lager  for å kunne bli utført!  Dette impliserer at programmer må hentes inn fra ytre lager til indre lager før programmet kan kjøres.

Vi har i prinsippet 4 forskjellige programtyper:

  1. CPU-programmet som er fast innlagt i CPU (mikroprogram). (Se over)
  2. Oppstartsprogram som ligger i ROM. (Når maskinen slåes på er alle andre program på ytre lager og RAM er tom!)
  3. Operativsystem som
  4. Applikasjonsprogrammer (tekstbehandling, nettleser, epostprogrammer osv.)

Følgende programeksempler kan skrives på ark:

ROM:

Ytre Lager:

Det som skjer ved oppstart og kjøring av programmet summer er da følgende:

Jeg understreker at dette er sterkt forenklet, men riktig i prinsippet! Det kan være en tankevekker at en datamaskin er kompleks i den forstand at den har mange deler og  gjør mange ting fort. Men, den jobber etter svært enkle prinsipper og er enkel i den forstand at CPU bare kan utføre noen få hundre forskjellige ting og bare kan gjøre en instruksjon av gangen.
CPU har også ekstremt dårlig kortidsminne, den husker ikke engang den instruksjonen den gjorde for ca 0.000 000 01 sekund siden! Det er derfor CPU må kladde alt den gjør i RAM!