1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van...

32
1 Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam

Transcript of 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van...

Page 1: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

1Ben Bruidegom

Hoe werkt een rekenmachine?

Ben Bruidegom

AMSTEL Instituut Universiteit van Amsterdam

Page 2: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

2Ben Bruidegom

Onderwerpen:

Uit welke hardware-componenten bestaat de machine? Welke instructies kan de machine uitvoeren? Practicum met de rekenmachinesimulator I Uitbreiding van de machine voor het verwerken van

constante getallen Practicum met de rekenmachinesimulator II

Page 3: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

3Ben Bruidegom

Hardware-componenten:

Uit welke hardware-componenten bestaat de machine? Welke instructies kan de machine uitvoeren? Practicum met de rekenmachinesimulator I Uitbreiding van de machine voor het verwerken van

constante getallen Practicum met de rekenmachinesimulator II

Page 4: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

4Ben Bruidegom

Hardwarecomponenten

Instruction Memory

Arithmetic Logic Unit(ALU)

ProgramCounter

(PC)

Registers

Rekenmachine bestaat uit 4 hoofdcomponenten:

Page 5: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

5Ben Bruidegom

Hoe werkt een rekenmachine?

Instruction Memory

Arithmetic Logic Unit(ALU)

ProgramCounter

(PC)

Registers

Rekenmachine bestaat uit 4 hoofdcomponenten:

De ALU voert de berekeningen uit

Page 6: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

6Ben Bruidegom

ALU

S1 S0 Operator Functie

0 0 + (plus) Y = A + B

0 1 - (min) Y = A - B

1 0 & (bitwise AND) Y = A & B

1 1 B-doorlaten Y = B

A

B

Y

S0 S1

AA

B

Y

S1 S0

Data-ingangen A en B en uitgang Y zijn 16 bits

Ingangen S1 en S2 selecteren de operator

Page 7: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

7Ben Bruidegom

Architectuur van de rekenmachine4 hoofdcomponenten:

Instruction Memory

Arithmetic Logic Unit(ALU)

ProgramCounter

(PC)

Registers

Registers bewaren (tussen)resultaten van berekeningen

Page 8: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

8Ben Bruidegom

Registers

16 data uitgangen (16 bits)

Hoeveel bits is dit geheugen?

( register)adres

Hoeveel bits is het adres?

adres adres 16 registers

15 1111

14 1110

13 1101

12 1100

11 1011

10 1010

9 1001

8 1000

7 0111

6 0110

5 0101

4 0100 1010110110111000

3 0011

2 0010

1 0001

0 0000

Page 9: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

9Ben Bruidegom

Hoeveel bits is het adres? 4 bits

Hoeveel bits is dit geheugen? 16 * 16 = 256 bits

Page 10: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

10Ben Bruidegom

In- en uitgangen registers

First Register rsAdres Data

Second Register rtAdres Data

Destination Reg. rdAddres

Data

Adres-ingang rs (4bits)

Data-uitgang rs (16 bits)

Data-ingang rd

Data-uitgang rt (16 bits)Adres-ingang rt (4bits)

Adres-ingang rd(4 bits)

clock

Page 11: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

11Ben Bruidegom

Architectuur van de rekenmachine4 hoofdcomponenten:

Instruction Memory

Arithmetic Logic Unit(ALU)

ProgramCounter

(PC)Registers

In het instructiegeheugen worden de instructies opgeslagen

Page 12: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

12Ben Bruidegom

Instruction Memory

Instruction Memory

Address Datadata uitgang

(14 bits)

adres ingang

(16 bits)

Hoeveel bits kan je opslaan in dit geheugen?

Iedere instructie is 14 bits

Page 13: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

13Ben Bruidegom

Hoeveel bits kan je opslaan in dit geheugen?

Totaal: 216 x 14 = 65.536 x 14 = 917.504 bits

Page 14: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

14Ben Bruidegom

Architectuur van de rekenmachine4 hoofdcomponenten:

Instruction Memory

Arithmetic Logic Unit(ALU)

ProgramCounter

(PC)Registers

Program Counter houdt bij welke instructie wordt uitgevoerd

Page 15: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

15Ben Bruidegom

Software:

Uit welke hardware-componenten bestaat de machine? Welke instructies kan de machine uitvoeren? Practicum met de rekenmachinesimulator I Uitbreiding van de machine voor het verwerken van

constante getallen Practicum met de rekenmachinesimulator II

Page 16: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

16Ben Bruidegom

Instructies

Rekenkundige instructies: ADD (optellen) SUB (aftrekken)

Logische instructie AND (bitwise AND)

Datatransfer COPY (Register Register)

Page 17: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

17Ben Bruidegom

Instruction Memory

Registers

ALU

PCInstruction

Address

rs Adres Data

Adres rd

Data rd

rt Adres Data

Datapad van een rekenkundige/logische instructie: bijv. ADD

4 bits adres 16 bits data

Page 18: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

18Ben Bruidegom

Instructieformaat

Instruction Memory

Registers

ALU

PCInstruction

Address

rs Adres Data

Adres rd

Data rd

rt Adres Data

Voorbeeld: ADD rd, rs, rtSyntax: ADD $7, $5, $6Betekenis: register 7 = register 5 + register 6

Page 19: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

19Ben Bruidegom

Instructieformaat

Instruction Memory

Registers

ALU

PCInstruction

Address

rs Adres Data

Adres rd

Data rd

Syntax: ADD rd, rs, rtVoorbeeld: ADD $7, $5, $6

Instructie ADD Adres rs Adres rt Adres rd

00 0101 0110 0111

rt Adres Data

Page 20: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

20Ben Bruidegom

Rekenmachine I

Page 21: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

21Ben Bruidegom

SIM-PL:

Uit welke hardware-componenten bestaat de machine? Welke instructies kan de machine uitvoeren? Practicum met de rekenmachinesimulator I Uitbreiding van de machine voor het verwerken van

constante getallen Practicum met de rekenmachinesimulator II

Page 22: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

22Ben Bruidegom

Practicum met de Rekenmachine I

Voer opdrachten van paragraaf 3.4 uit

Page 23: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

23Ben Bruidegom

Vervolg hardware:

Uit welke hardware-componenten bestaat de machine? Welke instructies kan de machine uitvoeren? Practicum met de rekenmachinesimulator I Uitbreiding van de machine voor het verwerken van

constante getallen Practicum met de rekenmachinesimulator II

Page 24: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

24Ben Bruidegom

Rekenen met constante getallen

Waarom zijn constante getallen zo belangrijk? Heel veel instructies bevatten een constant getal Waar worden constante getallen opgeslagen? In het instructiegeheugen Welke instructies werken met constante getallen? Immediate instructies

Page 25: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

25Ben Bruidegom

Welke immediate instructies zijn er:

LOADI ADDI SUBI ANDI

Page 26: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

26Ben Bruidegom

Alle instructies:

Rekenkundige en logische instructies ADD SUB AND

Immediate instructies (Instructies met één constant getal) LOADI ADDI SUBI ANDI

Datatransfer COPY

Page 27: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

27Ben Bruidegom

Datapad van een instructie met een constant getal

Instruction Memory

RegistersALU

PCInstruction

Address

Constant getal

4 bits address 16 bits data

rs Adres Data

Adres rd

Data rd

rt Adres Data

Page 28: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

28Ben Bruidegom

Assembly Language:

Instruction Memory

RegistersALU

PCInstruction

Address

100Hex

Syntax: ADDI rd, rs, getalVoorbeeld: ADDI $7, $5, 0x100Betekenis: register 7 = register 5 + 100Hex

rs Adres Data

Adres rd

Data rd

rt Adres Data

Page 29: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

29Ben Bruidegom

“Control” van de rekenmachine

Instruction Memory

ALU operatie

PC

InstructionAddress

First Register rsAddress Data

Second Register rtAddress Data

Destination Reg. rdAddress Data4 bits address

16 bits data 3 bits control

Registerfile (16)

Control

Multiplexer (Mux)

ADDI rs rt rd Constant getal

000 0101 x 0111 000 1000 0000 0000

Instructieformaat

ADDI $7, $5, 0x100

Page 30: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

30Ben Bruidegom

Rekenmachine II

Page 31: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

31Ben Bruidegom

SIM-PL:

Uit welke hardware-componenten bestaat de machine? Welke instructies kan de machine uitvoeren? Practicum met de rekenmachinesimulator I Uitbreiding van de machine voor het verwerken van

constante getallen Opdrachten Practicum met de rekenmachinesimulator II

Page 32: 1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.

32Ben Bruidegom

Voer opdrachten van paragraaf 3.6 en paragraaf 3.7 uit.