TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA...

33
Däne/Nützel Prof. Fengler TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben Materialien zur Lehrveranstaltung Rechnerarchitekturen 1 Rechnerarchitekturen Technische Informatik 2 (Studiengang IN) (Studiengänge WI, MT) (Modularisiertes Ingenieurstudium) Übungsaufgaben Zur Prüfung NICHT zugelassen!!! TU Ilmenau, Fakultät IA, Institut TTI Fachgebiet Rechnerarchitekturen März 2005 Druck und Vervielfältigung nur zum persönlichen Gebrauch! Bitte benutzen Sie nur aktuelles Material! Die neueste Version finden Sie stets unter http://tin.tu-ilmenau.de/ra/

Transcript of TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA...

Page 1: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

Däne/NützelProf. Fengler

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben

Materialien zur Lehrveranstaltung

Rechnerarchitekturen 1

Rechnerarchitekturen

Technische Informatik 2

(Studiengang IN)

(Studiengänge WI, MT)

(Modularisiertes Ingenieurstudium)

Übungsaufgaben

Zur Prüfung NICHT zugelassen!!!

TU Ilmenau, Fakultät IA, Institut TTIFachgebiet Rechnerarchitekturen

März 2005

Druck und Vervielfältigung nur zum persönlichen Gebrauch!

Bitte benutzen Sie nur aktuelles Material!Die neueste Version finden Sie stets unter http://tin.tu-ilmenau.de/ra/

Page 2: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

a) b)

e)

p1

p2

p3t12

2

2p1

t1 p3

p2

c)

2

22 3

5

p1

t1 p3 t2 p5

p2

p4

d)

295

5

3

2

300 4

p1 p4

t1

p2

p3 p6

p5

100

5

5 3

3

2 2

p1 p4

t1

p2

p3 p6

p5

Petri-NetzeAufgabe 1: Schaltregel

Sind die nachfolgend dargestellten Transitionen schaltfähig?

Wenn nein, so begründen Sie!Wenn ja, so stellen Sie den Zustand nach dem Schalten dar!

Hinweis:In allen Petri-Netzen dieses Materials haben Plätze ohne Kapazitätsangabe stets dieKapazität Eins.

1

Page 3: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

a)

b)

p1 p2

p3

p4

p5

t1

t2

t3

t4

t5

2

33

p1

p2p3

p4

p5

t1 t2

t3

t4

t5

Petri-Netze

Aufgabe 2: Eigenschaften, Erreichbarkeitsgraph

Entwerfen Sie für die dargestellten Netze die Erreichbarkeitsgraphen!

Sind die Netze - konfliktfrei,- lebendig?

2

Page 4: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

a) b)

p1

p2

t1 p3

2 2

p1

p2

p3

t1 p4

c)

3

2

p1

p2

p3

p4

p5

t1

d)3

p1

p2

p3

t1 p4

2 23e)

p1

p2

p3

p4t1

Petri-Netze

Aufgabe 3: Sonderkanten

Untersuchen Sie die Schaltfähigkeit der dargestellten Transitionen!

Stellen Sie gegebenenfalls den Zustand nach dem Schalten dar!

5

2

3

3

3

3

Page 5: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

Takt

x1

x2

y1

y2

y3

y4

y1

x1

x1

x2

y4

y2 y y2 3,

y3

p1 p2

p3

p4 p5

p6

p7

t1

t2

t3 t4

t5

t6

Petri-Netze

Aufgabe 4: Zeitverläufe

Gegeben sind ein Petri-Netz mit Ein- und Ausgabefunktion sowie die Zeitverläufe fürdie zwei Eingangsvariablen x und x . Das Netz modelliert einen getakteten Automaten,wobei die Schaltvorgänge stets mit der 0-1- Flanke des Taktes erfolgen. Vor der erstendargestellten Taktflanke soll der Initialzustand bestehen.

Stellen Sie die Zeitverläufe für die Ausgangsvariablen dar!

1 2

4

Page 6: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

y1

y3

y2x1

x1

33

33 3

3

3

3

3

Takt

y1

y2

y30

1

0

1

0

1

0

1x1

0

1

Petri-Netze

Aufgabe 5: Zeitverläufe

Gegeben sind ein Petri-Netz mit Ein- und Ausgabefunktion sowie der Zeitverlauf fürdie Eingangsvariable x . Das Netz modelliert einen getakteten Automaten, wobeidie Schaltvorgänge stets mit der 0-1- Flanke des Taktes erfolgen. Vor der erstendargestellten Taktflanke soll der Initialzustand bestehen.

Stellen Sie die Zeitverläufe für die Ausgangsvariablen dar!

1

p1

p2 p3

p4

t1 t2

t3

t4 t5

5

Page 7: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

Petri-Netze

Aufgabe 6: Zeitverläufe

Gegeben sind ein Petri-Netz mit Ein- und Ausgabefunktion sowie die Zeitverläufe fürdie zwei Eingangsvariablen x und x . Das Netz modelliert einen getakteten Automaten,wobei die Schaltvorgänge stets mit der 0-1- Flanke des Taktes erfolgen. Vor der erstendargestellten Taktflanke soll der Initialzustand bestehen.

Stellen Sie die Zeitverläufe für die Ausgangsvariablen dar!

1 2

Takt

y1

y2

y3

0

1

0

1

0

1

0

1

0

1x1

x2

0

1

y1

x1

x1

x2

y2y3

p1

p2

p3 p4

t1

t2

t3

t4

t5

t6

2 2

222

6

Page 8: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

y1

y2y3y4

x1

x2

x3x4

A

Takt Reset

x y

x5x6x7x8

Ecke gefahren und ein neuer Tastendruck erwartet.schließlich auf schnellstem Wege in die durch den Tastendruck angewählteEcke), letztes Ziel ist wieder die linke untere Ecke. Von dort aus wirdAnschließend wird 20-mal rechtsherum im Kreis gefahren (von Ecke zu

c) Nach Betätigen einer Taste wird stets die linke untere Ecke angefahren.

an.Taste gedrückt werden. Die zweite Bewegung schließt sich dann unmittelbar

b) Wie a), aber während der Bewegung des Wagens kann bereits die nächste

erwartet.

a) Nach Betätigen einer Taste soll der Wagen so schnell wie möglich in dieangewählte Ecke fahren. Danach wird die nächste Betätigung einer Taste

Die Stellung des Wagens zu Beginn ist jeweils unbekannt. KurzzeitigeUnterbrechungen im Bewegungsablauf sind zulässig. Die Tasten werden stets nurkurzzeitig betätigt. Gleichzeitiges Drücken mehrerer Tasten wird ausgeschlossen.

Dieses soll den geforderten Ablauf realisieren und Havariesituationen (Überfahreneiner Endlage, gleichzeitige Aktivierung entgegengesetzter Bewegungsrichtungen)vermeiden.

Gesucht ist für jede der folgenden Teilaufgaben ein automatentechnischinterpretiertes Petri-Netz, welches einen synchronen Automaten mit denEingangssignalen x1 bis x8 und den Ausgangssignalen y1 bis y4 beschreibt.

Für jede Bewegungsrichtung ist ein Endlagenschalter vorhanden, der jeweils einesder logischen Signale x1 bis x4 aktivieren kann. Ein Tastenfeld mit 4 Tastenbeeinflusst die logischen Signale x5 bis x8.

Gegeben ist ein Kreuztisch mit einem in einer Ebene beweglichen Wagen (sieheBild). Die Bewegung des Wagens wird in der angedeuteten Weise durch dielogischen Signale y1 bis y4 gesteuert. Die gleichzeitige Aktivierung zweierrechtwinklig zueinander liegender Bewegungsrichtungen ist zulässig.

Petri-Netze

Aufgabe 7: Kreuztisch

7

Page 9: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

c)

b)

a)p1

p2

p3

p4

t1

t3

t2

p1

p2

p3

t1 t2

2

2

2

2

p1 p2 p3

t1

t3

t2

2

2

Petri-Netze

Anhang 1

8

Page 10: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

p1

p2

p3

p4

t1 t2 t3

p1

p2p3 t2

t3 t1

2

2 2

p1

p2p3 t2

t3 t1

2

2

p1

p2p3 t2

t3 t1

2

c)

d)

b)

a)

Petri-Netze

Anhang 2

9

Page 11: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

p1

p2p3

p5

p4

t2

t3

t4

t1

2

2

2

p1 p2

p3

p5p4

t3

t4 t5

t2

t1

2

5011 11

33

33

33 32

50

2

b)

a)

Petri-NetzeAnhang 3

10

Page 12: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

p1 p2

p3

t2t3

t1

5

5 2

2

33

p1 p2

p3

t2t3

t1

4

5 2

2

33

p1 p2

p3

t2t3

t1

6

5 2

2

33

c)

b)

a)

Petri-Netze

Anhang 4

11

Page 13: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

p1

p2

p3 p4

p5

t2

t3

t1

2a)

b)

Petri-Netze

Anhang 5

p1

p2 p3 p4

t4

t1 t2

t3

12

Page 14: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben PN

a)

Petri-Netze

Anhang 6

b)

13

Page 15: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben AS 14

Aufgaben zur Assemblerprogrammierung

Allgemeine Hinweise:

• Alle Aufgaben beziehen sich auf das 32-bit-x86-Programmiermodell mit flachem Speicher.• Bei den Programmieraufgaben sind keine vollständigen Programme gefordert, sondern Befehls-

folgen, welche die angegebenen Operationen realisieren.• Es können alle allgemeinen Register des Programmiermodells benutzt werden. • Die Anfangsbelegung der Register und der Flags ist unbestimmt, falls nichts anderes gesagt wird.• Die resultierenden Registerinhalte sind beliebig, außer bei den angegebenen Ergebnisregistern.• Der Stackpointer ist zu Beginn bereits sinnvoll eingestellt, so dass Stackoperationen möglich sind.• Wenn nicht anders angegeben, sollen arithmetische Fehler, Speicherüberläufe, Speicherüberlappun-

gen und andere Sonderfälle nicht gesondert behandelt werden.• Verzichten Sie möglichst auf die Verwendung des Taschenrechners.

Aufgabe 1:

Bitte geben Sie die Resultate der Berechnungen an (als Hexadezimalzahlen), wenn sie in einemFestkomma-Rechenwerk mit der angegebenen Operationsbreite ausgeführt werden. Wie werdendabei das Carry-Flag und das Zero-Flag beeinflusst?

a) 05H + 1FH Breite: 8 bitb) 98H + 89H Breite: 8 bitc) 27H - 14H Breite: 8 bitd) 3DH + C3H Breite: 8 bite) 11H - 14H Breite: 8 bit

f) 003DH + 00C3H Breite: 16 bitg) 836FH + 2C8FH Breite: 16 bith) EDCBH + C233H Breite: 16 biti) 0000H - 0001H Breite: 16 bit

j) 0000 EDCBH + 0000 C233H Breite: 32 bitk) 74EC 51F9H - 74EC 51F9H Breite: 32 bitl) 1234 5678H + EDCB A989H Breite: 32 bit

Page 16: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben AS 15

EAX EBX ECX

Aufgabe 2:

Geben Sie die Adressen der Speicherzellen an, welche durch die einzelnen Befehle angespro-chen werden. Als Registerinhalte sind gegeben:

EAX CBA9 8765H

EBX AAAA BBBBH

ECX 0000 0005H

EDX 0040 0000H

ESI 1234 5678HEDI 0367 7690HEBP 5555 4446HESP 1000 0000H

a) MOV AL,[EBX]b) MOV AL,[ESI+1234H]c) MOV AL,[EBX+EDX]d) MOV AL,[EAX+EBP]e) MOV AL,[EDX+EDI-15]

f) MOV AL,[ECX*2]g) MOV AL,[EDX+EBX*2]h) MOV AL,[EDX+ECX*8+8200H]

i) MOV AL,[ESI]j) MOV AX,[ESI]k) MOV EAX,[ESI]

Aufgabe 3:

Schreiben Sie ein Programmstück, welches einen Ringtausch von drei Registerinhalten nachfolgendem Schema vornimmt:

Aufgabe 4:

Schreiben Sie ein Programmstück, welches einen Ringtausch von drei Speicherinhalten (jeweils32 bit) vornimmt. Die Speicheradressen stehen in den Registern EAX, EBX und ECX.

Aufgabe 5:

Schreiben Sie ein Programmstück, welches einen Ringtausch von drei Speicherinhalten (jeweils32 bit) vornimmt. Die Speicheradressen stehen ebenfalls im Speicher, und zwar aufeinand-erfolgend in Form einer Tabelle (drei Einträge von je 32 bit). Die Anfangsadresse dieser Tabellesteht im Register ESI.

Page 17: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben AS 16

Aufgabe 6:

Schreiben Sie ein Programmstück, welches einen Ringtausch von n Speicherinhalten (jeweils32 bit) vornimmt. Die Zahl n steht im Register ECX (2<n<228). Die Speicheradressen stehenaufeinanderfolgend in Form einer Tabelle (n Einträge von je 32 bit) im Speicher. Die Anfangs-adresse dieser Tabelle steht im Register ESI.

Aufgabe 7:

a) Schreiben Sie ein Programmstück, welches die Summe der Inhalte von EBX und ECX vomDoppelten des Inhalts von EAX abzieht (Überläufe ignorieren). Das Ergebnis soll in EDXstehen. Hinweis: Die vorgegebenen Registerinhalte sollen hier unverändert bleiben.

b) Schreiben Sie ein Programmstück, welches die Summe der Inhalte von AL, BX und ECXbildet (vorzeichenlose Arithmetik). Das Ergebnis soll in EDX stehen.

Zusatz: Diskutieren Sie, unter welchen Bedingungen in Aufgabe b) bei den einzelnen Rechen-schritten Überläufe auftreten können und ob diese evtl. durch andere Gestaltung desProgramms vermeidbar sind.

Aufgabe 8:

Schreiben Sie ein Programmstück, welches den Inhalt von EDI um ein Achtel des Inhalts vonESI (nur ganzzahliger Teil) verringert. Es handelt sich um vorzeichenlose Arithmetik. Verwen-den Sie hier keinen Divisionsbefehl.

Zusatz: Bei Auftreten eines arithmetischen Unterlaufs soll das Ergebnisregister stets mit demWert Null belegt werden.

Aufgabe 9:

Schreiben Sie ein Programmstück, welches mit dem Inhalt des Registers EAX die im Bilddargestellten Bitoperationen vornimmt. Die hell dargestellten Bits des Ergebnisses sollen festmit den eingezeichneten Werten belegt werden. Das Ergebnis soll wiederum in EAX stehen.

0

31 29 128 330 0227 4567891011121314151617181920212223242526

31 29 128 330 0227 4567891011121314151617181920212223242526

0 0 0 00 00 0 00 0 00 00 0 0 000 0

a)

Page 18: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben AS 17

31 29 128 330 0227 4567891011121314151617181920212223242526

31 29 128 330 0227 4567891011121314151617181920212223242526

0

c)

0 00 0 0 0 00 00 0 000 00 00 0 00

31 29 128 330 0227 4567891011121314151617181920212223242526

31 29 128 330 0227 4567891011121314151617181920212223242526

e)

Negation

1

31 29 128 330 0227 4567891011121314151617181920212223242526

31 29 128 330 0227 4567891011121314151617181920212223242526

0

b)

0 00 0 0 0 00 0 00 0 1 111 11 111 1 1 1

Page 19: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben AS 18

0

31 29 128 330 0227 4567891011121314151617181920212223242526

31 29 128 330 0227 4567891011121314151617181920212223242526

f)

& && & &&& &&& && &&& && & && & &&& && & && &&

UND

&

Aufgabe 10:

Schreiben Sie ein Programmstück, welches das Ergebnis der Und-Verknüpfung der Bits 0, 13und 31 aus dem Register EAX und das Ergebnis der Und-Verknüpfung der Bits 5, 6 und 8 ausdem Register EAX Oder-verknüpft. Das Endergebnis soll in Bit 27 von EAX erscheinen. Außerdem Ergebnisbit sollen alle Bits von EAX unverändert bleiben.

Aufgabe 11:

Schreiben Sie ein Programmstück, welches einen Block von Doppelworten von einem Speicher-bereich in einen anderen kopiert. Die Anfangsadresse des Quellbereiches steht in ESI, dieAnfangsadresse des Zielbereiches steht in EDI. Die Anzahl der zu übertragenden Doppelwortesteht in ECX.

a) Die Speicherbereiche überlappen sich nicht.b) Der Zielbereich soll auch dann korrekt beschrieben werden, wenn sich beide Speicherberei-

che überlappen.c) Der Zielbereich soll in gespiegelter Richtung beschrieben werden. Die in EDI gegebene

Adresse ist in diesem Falle die Adresse des letzten Doppelwortes im Zielbereich.

Aufgabe 12:

Schreiben Sie ein Programmstück, welches die Summe aller Bytes eines Speicherblocks bildet(8-bit-Arithmetik, Überläufe ignorieren). Die Anfangsadresse des Speicherblocks steht in EAX,die Anzahl der Bytes in EBX. Das Ergebnis der Addition soll in DL stehen.

Aufgabe 13:

Schreiben Sie ein Programmstück, das den Speicher ab der in EBX gegebenen Adresse mitgenau dreißigtausend Worten füllt, deren Wert ab Null hochgezählt wird.

Page 20: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben AS 19

Aufgabe 14:

Schreiben Sie ein Programmstück, das für einen Block aufeinanderfolgender Doppelworte imSpeicher von jedem einzelnen Doppelwort einen konstanten Wert abzieht. Die Anfangsadressedes Blocks steht in EBP, die Anzahl der Doppelworte in ESI. Der zu subtrahierende Wert stehtin EDX.

Aufgabe 15:

Schreiben Sie ein Programmstück, welches eine Anzahl nicht zusammenhängender Speicher-zellen (Bytes) mit dem Wert Eins beschreibt. Die Adressen dieser Speicherzellen stehen alsTabelle aus Doppelworten im Speicher, die Anfangsadresse dieser Tabelle ist in EDI gegeben.Das Ende dieser Tabelle ist durch einen Eintrag mit dem Wert Null gekennzeichnet.

Zusatz: Nach Programmende soll im Register ECX die Anzahl der bearbeiteten Bytesstehen. Alle allgemeinen Register mit Ausnahme von ECX sollen am Ende wiederihren ursprünglichen Wert aufweisen.

Aufgabe 16:

Schreiben Sie ein Programmstück, welches für einen zusammenhängenden Speicherblock ausWorten in jedem Wort das niederwertige und das höherwertige Byte miteinander vertauscht. DieAnfangsadresse des Speicherblocks steht in EAX, die Anzahl der Worte in ECX.

Aufgabe 17:

Schreiben Sie ein Programmstück, das in einem Block aus Bytes zählt, wie oft in diesem Blockein bestimmter Wert vorkommt. Der Block beginnt auf der in ESI gegebenen Adresse, dieAnzahl der Bytes steht in EDI. Der zu suchende Wert ist im Register AL vorgegeben. Dieermittelte Anzahl soll nach Programmende in EBX stehen. Der im Speicher vorgegebene Blocksoll nicht verändert werden.

Aufgabe 18:

Schreiben Sie ein Programmstück, das in einem Block aus Bytes die Häufigkeit des Vor-kommens jedes einzelnen Wertes von 00H bis FFH zählt. Der Block beginnt auf der in ESIgegebenen Adresse, die Anzahl der Bytes steht in EDI. Die ermittelten Anzahlen sollen nachProgrammende in Form einer Tabelle (256 Einträge mit je 32 bit) hintereinander im Speicherstehen. Die Anfangsadresse dieser Tabelle ist in EBP vorgegeben. Der im Speicher vorgegebeneBlock soll nicht verändert werden.

Page 21: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben AS 20

yx

64x4

x16

= ++ + . . .

Aufgabe 19:

Schreiben Sie ein Programmstück, welches für einen Block aus Doppelworten den arithmeti-schen Mittelwert der (vorzeichenlosen) Zahlenwerte berechnet. Das Ergebnis (nur ganzzahligerTeil) soll im Register EAX erscheinen. Die Adresse des ersten Elements ist in ESI gegeben, dieAdresse des letzten Elements in EDI (EDI ist stets größer als ESI).

Zusatz: Legen Sie die Berechnung so aus, dass keine arithmetischen Überläufe auftretenkönnen!

Aufgabe 20:

Schreiben Sie ein Programmstück, welches die folgende Summe berechnet:

Die Zahl x ist in EBX vorgegeben (32 bit vorzeichenlos). Die Berechnung soll nur mit ganzenZahlen erfolgen. Die Iterationen sollen abbrechen, wenn der ganzzahlige Teil des aktuellenSummanden Null geworden ist. Das Ergebnis y soll im Register EAX erscheinen.

a) Iteration mit einer Programmschleifeb) Iteration durch rekursiven Unterprogrammaufrufc) Berechnung mit einer Summenformeld) Diskutieren Sie die Vor- und Nachteile der einzelnen Varianten!

Zusatz: Verfeinern Sie die Berechnung bei Aufgabe a) oder b) durch Berücksichtigung dergebrochenen Anteile.

Aufgabe 21:

Entwerfen Sie ein Programmstück, welches einen Algorithmus für die Berechnung des ganzzah-ligen Teils der Quadratwurzel für eine in ESI gegebene vorzeichenlose 32-bit-Zahl x (x>1)implementiert. Das Ergebnis soll wiederum in ESI erscheinen.

Der folgende Algorithmus arbeitet ausschließlich mit Ganzzahl-Arithmetik und benutzt dasPrinzip der Intervallhalbierung:

1. Festlegen eines anfänglichen Intervalls [0,x]2. Bestimmen der Mitte m des Intervalls (ganzzahliger Teil)3. Wenn m gleich der unteren Intervallgrenze ist, weiter bei Schritt 7.4. Berechnen von m2 und Vergleich mit x5. Festlegen eines neuen Intervalls entsprechend dem Ergebnis des Vergleichs6. Weiter bei Schritt 2.7. Die untere Grenze des letzten Intervalls ist die Lösung.

Zusatz: Versuchen Sie einen effektiveren Algorithmus zu finden.

Page 22: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben AS 21

Aufgabe 22:

Welchen Zahlenwert (dezimal) enthält das Register BL nach vollständiger Abarbeitung dergegebenen Befehlsfolge?

MOV CL,8MOV BL,0MOV AL,BL

m1: ADD AL,2ADD BL,ALSUB CL,1JNZ m1

Aufgabe 23:

Welchen Zahlenwert (hexadezimal) enthält das Register EAX nach vollständiger Abarbeitungder gegebenen Befehlsfolge?

MOV EAX,0SUB EAX,1ADD AH,2ADD AL,3

Aufgabe 24:

Welchen Zahlenwert (dezimal) enthält das Register AX nach vollständiger Abarbeitung dergegebenen Befehlsfolge?

MOV AX,1024MOV BX,AX

m2: SHR BX,1JZ m3SUB AX,BXJMP m2

m3: NOP

Aufgabe 25:

Welche Zahlenwerte (hexadezimal) enthalten die Register EAX, EBX, CL und EDX nach demletzten Befehl der in der linken Spalte gegebenen Befehlsfolge?

MOV EAX,0CHCALL upMOV EDX,EBXMOV EAX,3CALL upSUB EDX,EBX

up: MOV CL,7AND EAX,0FHMOV EBX,EAX

u1: SHL EAX,4OR EBX,EAXDEC CLJNZ u1RET

Page 23: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben AS 22

Aufgabe 26:

Die folgenden Befehlszeilen enthalten formale Fehler. Bitte finden Sie diese und diskutieren Siedie Hintergründe.

a) ADD BX,ALb) MOV 2000,EAXc) MOV [EBX],[ECX]d) SUB [ESI+EDI*5],EDIe) ADD [DX],BXf) SUB EAX,B5B4Hg) SHL CH

Aufgabe 27:

Bitte stellen Sie für die folgenden Befehle tabellarisch die Abfolge der Buszyklen dar, welchebei der Ausführung der Befehle zu beobachten sind. Geben Sie nach Möglichkeit auch dieInhalte von Adress- und Datenbus während der einzelnen Zyklen an.

Bemerkung: Alle Adressen sollen durch 4 teilbar sein. In Vereinfachung der realen Verhältnissewird angenommen, dass die Zugriffe auf Speicheroperanden sowie das Lesen desBefehlscodes stets in jeweils einem einzigen Zyklus erfolgen und dass alle Zyklenzusammenhängend in der für die Operation erforderlichen Reihenfolge ablaufen.

a) MOV [EBX],EAXb) MOV EBX,[EAX]c) SUB EBX,EAXd) ADD EBX,[EAX]e) ADD [EBX],EAXf) IN EAX,18Hg) OUT 64,EAX

Page 24: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben SP 23

Aufgaben zu Speicherbaugruppen

Aufgabe 1:

Bitte geben Sie für die unten aufgeführten Speicherzugriffe folgende Informationen in Ta-bellenform an:

- Zahlenwert der Adresse auf dem Adressbus (hexadezimal)- Belegung der Speicherzugriffssignale /MRD und /MWR- Belegung der Bytefreigabesignale /BE0, /BE1, /BE2 und /BE3

Bemerkung: Eventuell ist mehr als ein Speicherzyklus notwendig. Die Reihenfolge ist dann irrele-vant. Weiterhin wird in Vereinfachung der realen Verhältnisse angenommen, dass dieBuszyklen stets nur den angegebenen Speicherzugriff bedienen.

a) Schreiben eines Doppelwortes (32 bit) auf 7654 3210Hb) Lesen eines Doppelwortes (32 bit) von 5678 9ABCHc) Schreiben eines Wortes (16 bit) auf 1000 0006Hd) Schreiben eines Doppelwortes (32 bit) auf 1000 0006He) Schreiben eines Doppelwortes (32 bit) auf 1000 0005Hf) Schreiben eines Bytes (8 bit) auf 2000 0000Hg) Schreiben eines Bytes (8 bit) auf 2000 0003Hh) Schreiben eines Wortes (16 bit) auf 2000 0003Hi) Schreiben eines Wortes (16 bit) auf 1AB8 F199H

Aufgabe 2:

Entwerfen Sie eine für ROM und sRAM geeignete Baugruppe für den 32-bit-x86-Systembus!Vervollständigen Sie dazu den Vordruck in Bild 1.

Es gelten folgende Parameter:- Größe der Baugruppe: 1 MiByte- Anfangsadresse: E0 0000H

- Maximaler Speicherausbau des Gesamtsystems: 16 MiByte- Anzahl der Speicherbausteine: 4

a) Bestimmen Sie die Anzahl der aktiven Adressbits und die höchste benutzbare Adresse desGesamtsystems!

b) Bestimmen Sie die Endadresse (inklusiv und exklusiv) der Baugruppe!c) Bestimmen Sie die Anzahl von Adress- und Datenanschlüssen der Speicherbausteine!d) Zeichnen Sie die Schaltung zunächst für eine ROM-Baugruppe!e) Geben Sie den zugehörigen Adressdekoder als logische Gleichung und als Schaltung an!f) Ergänzen Sie in der Schaltung die für eine sRAM-Baugruppe zusätzlich notwendigen Signale

und zeichnen Sie den veränderten Adressdekoder!

Page 25: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben SP 24

Bemerkung: Die Freigabe der einzelnen Speicherbausteine soll sowohl beim Lesen als auch beimSchreiben byteweise erfolgen. Die Buszyklussignale sind im Adressdekoder mit zuverwenden. Als Ausgangssignal des Dekoders dient das low-aktive /FR („Freigabe“).

Aufgabe 3:

In Tabelle 1 beschreibt jede Zeile die Parameter einer Speicherbaugruppe für den 32-bit-x86-Systembus. Bitte füllen Sie die leeren Felder aus. Entwerfen Sie anschließend die logischenGleichungen oder die Logikschaltungen für die zugehörigen Adressdekoder. Die Buszyklus-signale sind diesmal nicht einzubeziehen.

Aufgabe 4:

Um die Freigabesignale für Speicherbaugruppen mit den nachfolgend genannten Adressberei-chen zu bilden, ist die Verknüpfung mehrerer nach dem bisher benutzten Verfahren entworfenerDekoder erforderlich. Bitte geben Sie an, für welche Adressbereiche die Dekoder jeweilsentworfen werden müssen und wie deren Ausgangssignale zu verknüpfen sind (für high-aktiveFreigabesignale).

Zusatz: Geben Sie minimierte logische Gleichungen für die Gesamtverknüpfungen an (ohneBeachtung der Buszyklussignale)!

a) Anfang: 0000 0000H Größe: 6 MiByteb) Anfang: 0280 0000H Größe. 16 MiBytec) Anfang: 05E0 0000H Größe: 20 MiByted) Anfang: 4000 0000H Ende: 5DFF FFFFH (inklusiv)

Aufgabe 5:

Bitte ergänzen Sie in der in Bild 2 schematisch dargestellten sRAM-Baugruppe einen SatzDatenbustreiber! Bilden Sie die Steuersignale für die Treiberbausteine aus den im Bild bereitsvorhandenen Signalen. Die Freigabe der Treiber soll grundsätzlich byteweise erfolgen. Verwen-den Sie geeignete Treiberbausteine aus den Arbeitsblättern. Die im Bild dargestellten Dekoderberücksichtigen auch die Buszyklussignale.

Aufgabe 6:

Bitte ergänzen Sie in der in Bild 3 schematisch dargestellten Speicherbaugruppe, welche auseiner ROM- und einer sRAM-Baugruppe zusammengesetzt ist, einen gemeinsamen SatzDatenbustreiber! Bilden Sie die Steuersignale für die Treiberbausteine aus den im Bild bereitsvorhandenen Signalen. Die Freigabe der Treiber soll grundsätzlich byteweise erfolgen. Verwen-den Sie geeignete Treiberbausteine aus den Arbeitsblättern. Die im Bild dargestellten Dekoderberücksichtigen auch die Buszyklussignale.

Page 26: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben SP 25

Speicheraufgaben: Tabelle 1

Gesamtsystem Speicherbaugruppe DekoderM

axim

aler

Spei

cher

ausb

au

Anz

ahl a

ktiv

er A

dres

s-bi

ts (

mit

A0

und

A1)

höch

ste

benu

tzba

reA

dres

se

Grö

ße

Anf

angs

adre

sse

End

adre

sse

(ink

lusi

v)

End

adre

sse

(exk

lusi

v)

Anz

ahl a

nges

chlo

sse-

ner

Adr

essl

eitu

ngen

nied

rigs

te a

nges

chlo

s-se

ne A

dres

slei

tung

höch

ste

ange

schl

os-

sene

Adr

essl

eitu

ng

Akt

iver

Peg

el d

esA

usga

ngss

igna

ls

Muster 1 MiByte 20 F FFFFH 64 KiByte 4 0000H 4 FFFFH 5 0000H 4 A16 A19 High

a) 4 MiByte 1 MiByte 00 0000H High

b) 27 16 MiByte 3FF FFFFH High

c) 1FF FFFFH 040 0000H 047 FFFFH Low

d) 256 MiByte 380 0000H 8 High

e) 7FC0 0000H A21 A30 High

f) 30 0080 0000H A22 High

g) 1000 0000H 17FF FFFFH 2 Low

h) 4 GiByte 6000 0000H 8000 0000H High

Page 27: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben SP 26

Speicheraufgaben: Bild 1

ROM / sRAM

Byte 3

ROM / sRAM

Byte 1

ROM / sRAM

Byte 2

ROM / sRAM

Byte 0

A2 bis A31

D0 bis D31

/MRD

/MW R

/BE3

/BE0

/BE1

/BE2

Dekoder:

getrennteDarstellung!

/FR

Page 28: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben SP 27

Speicheraufgaben: Bild 2

A2 bis A31

D0 bis D31

/MRD

/MW R

/BE3

/BE0

/BE1

/BE2

D0 bis D31/FRDekoder

Speicher-block

m it

sRAM

Page 29: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben SP 28

Speicheraufgaben: Bild 3

A2 bis A31

D0 bis D31

/FR1

/MRD

/MW R

/BE3

/BE0

/BE1

/BE2

D0 bis D31

/FR2

Speicherblock

m it

sRAM

Speicherblock

m it

ROM

Dekoder

Page 30: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben EA 29

Aufgaben zu Ein- und Ausgabe-Baugruppen

Aufgabe 1:

Ein Programmierbares Parallelinterface (PPI) vom Typ 8255A soll an den 32-bit-x86-System-bus angeschlossen werden. In Bild 1 sind im oberen Teil der PPI, die anzuschließenden Periphe-rieeinrichtungen und einige Bussignale dargestellt.

a) Ergänzen Sie in der Zeichnung alle zum Anschluss des PPI erforderlichen Bauelemente undVerbindungen. Der PPI soll im Ein- und Ausgabe-Adressraum des Busses (16 aktiveAdressbits) folgende Einzeladressen belegen:

00C0H

00C4H

00C8H

00CCH

Die Auswertung der Buszyklussignale kann im PPI erfolgen, so dass diese im zu entwerfen-den Dekoder nicht berücksichtigt werden müssen.

Peripherieseitig sind folgende Funktionen zu realisieren:

- Byte-Eingabe mit Handshake über Port A- Ansteuerung von 8 LEDs über Port B- Abfrage von zwei Tasten über 2 Bits von Port C.

b) Die dazugehörende Software soll in Form eines Unterprogramms geschrieben sein und

folgende Funktionen enthalten:

- Vollständige Initialisierung des PPI- Einlesen von Bytes vom Port A (Polling mit Bedienung der Handshake-Signale)- Abspeichern der gelesenen Bytes in einen Speicherblock mit einer Größe von

8192 Bytes, welcher auf der Adresse 18 0000H beginnt- Binäres Anzeigen der Nummer des gelesenen Bytes (untere 8 bit) mit den LEDs- Abbruch des Einlesens von Bytes bei Erreichen des Blockendes- Jetzt Polling beider Tasten- Wenn Taste 1 gedrückt wird: Einlesen der Bytes neu beginnen, wobei der zuvor abge-

speicherte Block überschrieben wird- Wenn Taste 2 gedrückt wird: Unterprogramm verlassen.

Page 31: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU Ilmenau, Institut TTI, FG RA Rechnerarchitekturen 1 - Aufgaben EA 30

Aufgabe 2:

a) Schließen Sie an die Baugruppe aus Aufgabe 1 einen Programmierbaren Intervalltimer (PIT)vom Typ 8254 an. Nutzen Sie wiederum den Vordruck in Bild 1. Der PIT soll im Ein- undAusgabe-Adressraum des Busses (16 aktive Adressbits) folgende Einzeladressen belegen:

0051H

0055H

0059H

005DH

Peripherieseitig ist er so zu beschalten, dass er als programmierbarer Frequenzgeneratorverwendbar ist. Als Input steht eine konstante Frequenz von 1 MHz zur Verfügung. AmAusgang fO soll eine Rechteckimpulsfolge ausgegeben werden, deren Frequenz mindestensim Bereich von 200 Hz bis 500 kHz variieren kann.

b) Die dazugehörende Software soll in Form eines Unterprogramms geschrieben sein undfolgende Funktionen enthalten:

- Initialisierung des PIT für die Erzeugung einer Outputfrequenz von 8 kHz- Initialisierung von Port C des PPI (zur Tastenabfrage)- Polling beider Tasten- bei jedem Betätigen von Taste 1: Halbieren der aktuellen Frequenz, Fortsetzen der

Tastenabfrage (wenn die kleinste mögliche Frequenz erreicht ist, soll bei weiterenTastendrücken keine Veränderung mehr erfolgen)

- wenn Taste 2 gedrückt wird: Unterprogramm verlassen.

Zusatz:

Schreiben Sie ein Unterprogramm zur Erzeugung eines Ausgangssignals mit gleitendansteigender Frequenz, wobei innerhalb einer Sekunde jeweils eine Verdoppelung derFrequenz erreicht werden soll. Bei der höchsten möglichen Frequenz soll ein Sprung zurniedrigsten möglichen Frequenz erfolgen.

Aufgabe 3:

a) In Bild 2 finden Sie die Teilschaltung einer Ein- und Ausgabebaugruppe für den Anschlusseiner Matrixtastatur (8x8 Tasten) an den 32-bit-x86-Systembus. Es handelt sich um einfacheparallele Ein- und Ausgabeschaltungen mit Treiber- und Registerbausteinen, wie sie in denArbeitsblättern enthalten sind. Bitte ergänzen Sie das Bild so, dass sowohl die Eingabe-schaltung als auch die Ausgabeschaltung mit der Adresse 0077H im Ein- und Ausgabe-adressraum (16 aktive Adressbits) angesprochen werden.

b) Entwickeln Sie ein Unterprogramm, welches ermittelt, ob zum Zeitpunkt des Aufrufes eineTaste gedrückt ist. Wenn keine Taste gedrückt ist, soll im Register AL der Zahlenwert FFH

zurückgegeben werden. Wird eine gedrückte Taste erkannt, so soll für jede Taste einunterschiedlicher Wert im Register AL zurückgegeben werden. Bei mehreren gedrücktenTasten ist das Verhalten beliebig.

Page 32: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU

Ilmenau,Institut

TT

I,FG

RA

Rechnerarchitekturen

1-

Aufgaben

EA

31

Page 33: TechnischeInformatik2 · 2010. 3. 31. · TUIlmenau,InstitutTTI,FGRA Rechnerarchitekturen1-AufgabenPN a) b) e) p1 p2 t1 p3 2 2 2 p1 t1 p3 p2 c) 2 2 2 3 5 p1 t1 p3 t2 p5 p2 p4 d) 295

TU

Ilmenau,Institut

TT

I,FG

RA

Rechnerarchitekturen

1-

Aufgaben

EA

32