Prof. Dr. Sebastian Zug
- April 2019
section .data
hello: db 'Probevorlesung TI',10
helloLen: equ $-hello
section .text
global _start
_start:
mov eax,4
mov ebx,1
mov ecx,hello
mov edx,helloLen
int 80h
mov eax,1
mov ebx,0
int 80h;
@Rextester.eval(@Nasm)
Die interacktive Version des Vortrages findet sich unter LiaScript
Beschreiben Sie die Wertetabelle eines Volladierers und skizzieren Sie desses Gatterlogik!
{{0-1}}
0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 | 0 |
0 | 1 | 0 | 1 | 0 |
0 | 1 | 1 | 0 | 1 |
1 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 1 |
1 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 | 1 |
{{0-2}}
Volladdierer, zusammengesetzt aus zwei Halbaddierern, sowie 4 Bit Addierwerk mit Fortschreibung des Carrys.
{{1}}
"8" "4" "2" "1"
"S" l l l l
^ ^ ^ ^
l<o<a e o<a e o<a e o<a e s
^ ^^^/^ ^^^/^ ^^^/^ ^^^/
a e * a e * a e * a e *
^^^ ^^^ ^^^ ^^^
* * * * * * * *
"A" s * s * s * s *
* * * *
"B" s s s s
Dokumentation und Beispiele unter Link
{{0-1}}
Realisierte Features | Wunschliste |
---|---|
1. Addition von einzelnen Werten |
Flexibles Handling für mehrere Operationen * Logische Funktionen: NOT , AND , OR , EXOR * Arithmetische Funktionen: ADD , SUB , (MUL) , (DIV) * Sonstige: SHIFT LEFT , SHIFT RIGHT |
{{1}}
Funktion | Ziel | Bemerkung | ||
---|---|---|---|---|
0 | 0 | 0 | 0 | OR_A |
0 | 0 | 0 | 1 | OR_B |
... | ||||
0 | 1 | 0 | 0 | EOR_A |
0 | 1 | 0 | 1 | EOR_B |
0 | 1 | 1 | 0 | ADD_A |
0 | 1 | 1 | 1 | ADD_B |
... |
{{2}}
Frage: Welche Anwendungsfälle verbergen sich hinter der mehrfachen Ausführung folgender Konfigurationen der Steuerleitungen?
// Reg_A = 1; Reg_B = 0;
// Fall 1 // Fall 2
0 1 1 1 0 1 0 1
... ...
{{0-1}}
Realisierte Features | Wunschliste |
---|---|
1. Addition von einzelnen Werten 2. Arithmetische Einheit mit mehren Funktionen und wählbarem Ergebnisregister |
Sequenzen von Berechnungsfolgen Reg_A <- 3 Reg_B <- 2 ADD_A MUL_B (3 + 2) x 2 = ? |
{{1-3}}
- Integration eines Speichers für die Konfigurationssequenzen
- „Counter“ für die Konfiguration des Fortschritts im Ablauf – Inkrementierung einer Adresse
{{2}}
Und wie greifen wir auf die Daten zu?
{{0-1}}
Realisierte Features | Wunschliste |
---|---|
1. Addition von einzelnen Werten 2. Arithmetische Einheit mit mehren Funktionen 3. Sequenzen von Berechnungsfolgen |
Und die Daten? Wie können wir hier die notwendige Variabilität sicherstellen? Reg_A <- 3 Reg_B <- 2 ADD_B Reg_A <- 4 MUL_B (3 + 2) x 4 = ? |
{{1-3}}
Das flexible Laden von Daten aus dem Speicher setzt voraus, dass ALU Konfigurationen und Daten gemischt werden! Zugleich wächst die Zahl der Steuerleitungen immer weiter an.
Wir brauchen eine neue Abstraktionsebene und eine Interpretationskomponente!
{{2}}
Aus dem spezifischen Mustern von Konfigurationsflags werden damit abstrakte, generische Befehle.
000 LDA Adresse //Load A from Memory Address
001 STA Adresse //Store A to Memory Address
010 ADD Rn // ADD Operation
011 EOR Rn // Exor Operand
100 AND Rn // AND Operand
101 OR Rn // OR Operand
…
{{0-2}}
Realisierte Features | Wunschliste |
---|---|
1. Addition von einzelnen Werten 2. Arithmetische Einheit mit mehren Funktionen 3. Sequenzen von Berechnungsfolgen 4. Programmen als Sequenz abstrakter Befehle 5. Flexibler Zugriff auf Daten und Befehle |
Ein- und Ausgabe von Daten (Nutzerinteraktion) wäre schön |
{{1-2}}
Das Steuerwerk koordiniert neben der ALU die Ein- und Ausgabeschnittstelle
Welche Art von Architektur liegt am Ende unserers Entwicklungsprozesses vor?
[( )] von Neumann
[(X)] Harvard
[[?]] Ich verwechsle es auch immer :-)
Der Befehlssatz einer (Modell)-CPU umfasst 27 Befehle. Wie viele Bit muss die korrespondierende OP-Code Repräsentation mindestens umfassen?
[[5]]
[[?]] Mit welcher Potenz von zwei werden 27 Zustände abgedeckt?
...
Link auf die aktuelle Vorlesung im Versionsmanagementsystem GitHub
https://github.com/SebastianZug/Lia_Gatter
Beteiligen Sie sich an der Weiterentwicklung der Materialien!
[WikiAdd] Wikipedia, "Addierwerk", Von 30px MovGP0 - selbst erstellt mit Inkscape, CC BY-SA 2.0 de, https://commons.wikimedia.org/w/index.php?curid=22912742
Sebastian Zug,
... und vielleicht morgen Sie?
Vielen Dank für die Aufmerksamkeit