nsg informatica hardware (1). nsg informatica opbouw van een computer een computer bestaat uit veel...
Post on 04-Jun-2015
220 Views
Preview:
TRANSCRIPT
NSG Informatica
Hardware (1)Hardware (1)
NSG Informatica
Opbouw van een computerOpbouw van een computer
Een computer bestaat uit veel verschillende componenten.
Bijvoorbeeld:•Processor•Intern geheugen•Harde schijf•Netwerkkaart•Toetsenbord•Monitor•Geluidskaart•…
SGDB Informatica
Von Neumann architectuurVon Neumann architectuur
• Belangrijkste componenten– Processor– Geheugen
Intern Geheugen
ProcessorInstructies
Data
NSG Informatica
SamenwerkingSamenwerking
• Elk component heeft een eigen functie
• Componenten werken samen• Componenten communiceren met
elkaar via de Bus• De Bus is een onderdeel van het
moederbord• Elk component is verbonden met
moederbord (en dus met de Bus)
NSG Informatica
Moederbord (nieuwere PC)Moederbord (nieuwere PC)
PCI-slots
DIMM sockets
Processor slot
SATA ports
Chipset
PCI-e-slots
NSG Informatica
De bus (1)De bus (1)
TOETSEN-BORD
CPU WERK-GEHEUGEN
HARDDISK PRINTER
• Zender zet informatie + bestemming op bus• Ontvanger leest informatie van de bus• Overige componenten negeren informatie
• Initiatief bij zender: schrijfactie• Initiatief bij ontvanger: leesactie (vaak gevolgd
door schrijfactie)
NSG Informatica
De bus (2)De bus (2)
De bus bestaat eigenlijk uit 3 kanalen:• Databus
– Verstuurt gegevens– Bijvoorbeeld: de te printen letters
• Adresbus– Bevat adres ontvanger– Bijvoorbeeld: adres van de printer
• Controlbus– Verstuurt commando’s– Bijvoorbeeld: Print de tekens van de databus
databusadresbuscontrolbus
NSG Informatica
Bus (3)Bus (3)
• Verkeer op de bus wordt geregeld door busarbiter• Een transactie moet (via controlbus) worden aangevraagd• Bus wordt gedreven door een klok• Elke tik vindt één buscyclus plaats:– Zender zet data op bus– Ontvanger leest van bus– Bus wordt leeggemaakt
NSG Informatica
Bus (4)Bus (4)
• Capaciteit van de (data)bus wordt bepaald door:– Kloksnelheid (aantal transacties per
seconde– Busbreedte (hoeveel data kan er
tegelijk op de bus staan?)
NSG Informatica
GeheugenGeheugen
• Het geheugen bestaat uit geheugenplaatsen van 1 byte met elk een eigen adres
• De memorycontroller is de “archivaris” en “kijkt” naar de bus
128110 128111 128112 128113
128114
128118
128115
128119
128116 128117
128120 128121
memorycontroller
SGDB Informatica
De processorDe processor
• Het “brein” van de computer• Voert alle bewerkingen en
opdrachten uit• Andere namen:– CPU (Central Processing Unit)– CVE (Centrale Verwerkings Eenheid)
Instructies (machinetaal)Instructies (machinetaal)
Intern Geheugen
ProcessorInstructies
Data
• Alleen hele eenvoudige operaties– Optellen– Vergelijken – Herhalen– …
• Miljoenen operaties per seconde, dus toch ingewikkelde dingen mogelijk
• Vergelijkbaar met alfabet: maar 26 letters, toch zeer veel woorden mogelijk
SGDB Informatica
Processor onderdelenProcessor onderdelen
• ALU– Voert de bewerkingen en berekeningen uit
• Registers– Tijdelijke opslag voor berekeningen (een soort kladblok)
• Control unit– Leest de stroom instructies van de controlbus– Zorgt dat de instructies worden uitgevoerd door de ALU
ALU
databus
adresbus
controlebus
CONTROL UNITREGISTERS
SGDB Informatica
InstructiecyclusInstructiecyclus
Ophaleninstructie
Uitvoereninstructie
Analysereninstructie
1. De Control Unit haalt instructie op waar de programcounter naar verwijst en zet deze in het instructieregister.
De programcounter wordt verhoogd
2. De Control Unit analyseert de instructie.
De benodigde gegevens worden in de registers gezet
3. De ALU voert de bewerking uit
Resultaten worden in het register opgeslagen
SGDB Informatica
MachinetaalMachinetaal
Iedere instructie bestaat uit een rij bits.
01101101000010010000001100000100
In een machinetaal zou de instructie voor het optellen van de inhoud van twee registers er als volgt kunnen uitzien:
operandcode: 00000100 register 4
Deze opdracht kan betekenen:Tel de inhoud van de registers 3 en 4 bij elkaar op en zet het resultaat in register 9.
operatiecode: 01101101 optellen van de inhoud van twee registersoperandcode: 00001001 register 9operandcode: 00000011 register 3
SGDB Informatica
AssembleertaalAssembleertaal
• Machinetaal is lastig voor mensen– Slecht leesbaar– Snel fouten
• Oplossing: assembleertaal
01101101 00001001 00000011 00000100wordt ADD R9, R3, R4
• Vertaling: assembler– Vertaalt assembly code naar machinetaal– Is het enige programma dat in machinetaal
geschreven hoeft te worden– Processorafhankelijk
SGDB Informatica
Assembleertaal (2)Assembleertaal (2)
• Voorbeeld:
LOAD R0, 1234LOOP:ADD R0, #1CMP R0, #12JNG LOOPLOAD 1234, R0
1. Rekenkundige of logische instructiesADD, CMP
2. SpronginstructiesJNG
3. Instructies voor datatransportLOAD
top related