2004_week1_1

advertisement
1/
2IC20:
eindhoven university of technology
Computersystemen
Week 1: inleiding
/
faculty of Computer Science
1/
eindhoven university of technology
Huishoudelijke mededelingen
Docent: Michael Franssen
Vak ‘homepage’:
http://www.win.tue.nl/michaelf/2IC20/
/
 practicum handleiding
 programmatuur voor practicum  laptop!
 powerpoint slides van college
 oude tentamens met uitwerkingen (pré-IDaSS)
faculty of Computer Science
2
1/
eindhoven university of technology
Onderdelen van de cursus
College: 2 uur/week dinsdag uur 3+4
Practicum: 3 uur/week vanaf week 2 (9 sessies)
 2 groepen do. uur 5-7 & vr. uur 2-4
telkens in zaal MA144 (Matrixgebouw)
 2 studenten per groepje, 1 laptop!
 Twee onderwerpen in practicum:
 µProcessor simuleren
 Programmeren in assembler
Zelfstudie: gemiddeld 2 uur/week!
/
faculty of Computer Science
3
1/
eindhoven university of technology
Doel van dit vak
 Bruikbare basiskennis computerarchitectuur
 Richten op raakvlak ‘hardware’ - ’software’:
 Processor bezien vanuit software
‘instructieset architectuur’ en ‘assembleertalen’
 Processor bezien vanuit hardware
computer- en processor ‘architectuur’, geheugens,
in- en uitvoer
 Ondersteuning ‘hogere’ talen en besturingssystemen
speciale instructies en geheugen-’modellen’,
programma-onderbrekingen en parallelle processen
/
faculty of Computer Science
4
1/
eindhoven university of technology
En dan nog dit...
 Examen in deelexamens:
 In tussenweek over weken 1-5, minimaal 5,0 halen!
 Eind wintertrimester over weken 6-10
(wederom minimaal 5,0 halen)
 plus herkansing over weken 1-5
punt is gemiddelde van niet afgerondde deelpunten
 Volledige herkansing medio lentetrimester
 Open boek tentamen
(Boek, slides; géén laptop/aantekeningen)
 Oefenopgaven in boek van Tanenbaum
/
 Aan het eind van ieder hoofdstuk: maak ze!
faculty of Computer Science
5
1/
eindhoven university of technology
De ‘computer’ is al heel oud...
Mechanische rekenmachine (Pascal): 1642
 Alleen + en –
 * en ÷ rond 1670
(von Leibniz)
Mechanische computer (Babbage): 1834
/
 Ponskaart in- en uitvoer, programma op
ponskaarten
 1000 getallen geheugen
faculty of Computer Science
6
1/
eindhoven university of technology
De ‘Von Neumann-machine’: 1952
Binair rekenen met 40 bit getallen
Programma en gegevens in één geheugen
Geheugen
Besturing
/
Dit alles met
vacuumbuizen!
Aritmetische en
logische eenheid
(ALU)
Invoer
Accumulator
Uitvoer
faculty of Computer Science
7
1/
eindhoven university of technology
De PDP-8: een 12 bits minicomputer
 Circa 1965: losse transistoren, ‘slechts’ $16000
 Belangrijkste vernieuwing: de ‘bus’
CPU
Geheugen
Consoleterminal
Ponsband I/O
Andere
I/O
De ‘Omnibus’
/
faculty of Computer Science
8
1/
eindhoven university of technology
De eerste microprocessor: Intel 4004
 15 november 1971
 2300 transistors
 4 bits processor,
4096 byte programma,
640 x 4 bit gegevens
 60000 instructies/sec
 Voor zakrekenmachine!
/
faculty of Computer Science
9
1/
eindhoven university of technology
De toekomst: de ‘wet van Moore’
 Voorspelling in 1965 door oprichter van Intel:
“aantal transistoren per chip verdubbeld
iedere 18 maanden” (60% groei per jaar)
/
Aantal bits op geheugenchips,
‘K’ = 1024, ‘M’ = 1048576
faculty of Computer Science
10
1/
eindhoven university of technology
We vinden processoren overal...
“Zingende wenskaart”: computer van 20 cent!
“Embedded” in apparatuur: 1..5 euro
Spelcomputer/PC:
50..500 euro
Intel Pentium-Pro:
5,5 miljoen transistoren,
600 miljoen instructies/sec.
/
Weersvoorspelling: 5 miljoen euro monster
faculty of Computer Science
11
1/
eindhoven university of technology
Lagen in een computer
Computers en op te lossen problemen
complex
Deel ze op in gestapelde lagen of schillen:
/
 Iedere laag/schil gebruikt onderliggende lagen
 … voegt nieuwe functies toe
 … vormt een nieuwe (‘virtuele’) machine
 … kent eigen ‘machinetaal’ voor het beschrijven
van het op te lossen probleem
faculty of Computer Science
12
1/
Niveau n
Niveau 2
eindhoven university of technology
Virtuele machine Mn
met machinetaal Tn
Virtuele machine M2
met machinetaal T2
Vertaling in Tx:
geschikt maken voor (directe)
uitvoering op Mx
Interpretatie op Mx:
Tx programma op Mx ‘leest’
hoger niveau programma en
voert het stap voor stap uit
Niveau 1
Virtuele machine M1
met machinetaal T1
Programma’s in T1 worden
eerst vertaald in T0, of
geïnterpreteerd door een
programma op M0
Niveau 0
Echte computer M0
met machinetaal T0
Programma’s in T0 worden
direct door electronica
uitgevoerd
/
faculty of Computer Science
13
1/
Niveau 5
Niveau 4
Niveau 3
Niveau 2
Niveau 1
/
Niveau 0
eindhoven university of technology
Probleemgerichte taal
Niveaugrenzen
Vertaling (compiler)
verschuiven
Assembleertaal
steeds!
Vertaling (assembler)
Besturingssysteemmachine
Gedeeltelijke interpretatie
Instructiesetarchitectuur
Interpretatie (‘microprogramma’)
of directe uitvoering
Microarchitectuur
Hardware
Digitale logica
Hieronder: elektronische componenten!
faculty of Computer Science
14
1/
eindhoven university of technology
De lagen 0..2:
Digitale logica: schakeltechniek!
Microarchitectuur: ‘datapad’ binnen processor
 ‘registers’, ‘rekenorganen’ en ‘bussen’
 per ‘klok’ uitgevoerde bewerkingen
 eventueel ‘besturing’ om complexe bewerkingen
op te delen over meerdere klokken
(‘microprogramma’)
Instructiesetarchitectuur: zo gebruik je ‘m
/
 beschikbare instructies (basisbewerkingen)
 geheugens en invoer/uitvoer
faculty of Computer Science
15
1/
eindhoven university of technology
De lagen 3..5:
De besturingssysteemmachine: VIRTUEEL
 Voegt algemeen bruikbare complexe functies toe
 Is al vertaald uit assembleer- en/of hogere taal
Assembleertaal: een-op-een met instructies
 Symbolische namen in plaats van getallen!
Hogere talen: concepten i.p.v. instructies
/
 Standaard talen: BASIC, C, Java, LISP, Fortran
 Applicatietalen: databases, symbolische wiskunde
faculty of Computer Science
16
Download