cleared cache because workspace.json is abnoxious
This commit is contained in:
@@ -1,169 +0,0 @@
|
||||
## 📘 **Zusammenfassung: V2 Architekturen – Computerarchitektur**
|
||||
|
||||
### 🔄 Wiederholung Computergenerationen
|
||||
|
||||
- **0. Generation (bis 1945):** Mechanische Rechenmaschinen (Pascal, Leibniz, Babbage, Zuse)
|
||||
- **1. Generation (1945–1955):** Relais & Vakuumröhren – ENIAC, COLOSSUS, MANIAC
|
||||
- **2. Generation (1955–1965):** Transistoren – Minicomputer (PDP), Supercomputer (CDC 6600)
|
||||
- **3. Generation (1965–1980):** Integrierte Schaltungen – IBM System/360, PDP-11
|
||||
- **4. Generation (ab 1980):** VLSI – PCs, x86-Architektur
|
||||
- **5. Generation (heute):** Smartphones, Cloud, Embedded Systems
|
||||
|
||||
---
|
||||
|
||||
### 🚀 Moore’s Law (Moor’sches Gesetz)
|
||||
|
||||
- **Kerngedanke:** Verdopplung der Anzahl Transistoren pro IC alle 12–24 Monate.
|
||||
- Auswirkungen:
|
||||
- Kleinere Strukturen → geringere Kosten
|
||||
- Mehr Komponenten → höhere Leistung
|
||||
- > Resultierend: Geringerer Stromverbrauch
|
||||
- Aber: Miniaturisierung wird zunehmend teurer und schwieriger.
|
||||
|
||||
---
|
||||
|
||||
### 📊 Leistungsmessung von Computern
|
||||
|
||||
- **System-Benchmarks:** Cinebench, 3DMark, HPC Challenge
|
||||
- **Kenngrößen:**
|
||||
- Instruktionen/Sekunde (IPS), FLOPS (Floating point operations/second)
|
||||
- Taktzyklen pro Instruktion (CPI), Instruktionen pro Takt (IPC)
|
||||
- Speicherzugriffszeit, Durchsatz
|
||||
- Netzwerk- & Grafikleistung (FPS, TPS)
|
||||
- Kritik an MIPS: „Misleading Information to Promote Sales“ – nicht immer aussagekräftig. (MIPS => Million instructions per second)
|
||||
|
||||
---
|
||||
|
||||
### 🤖 Computer als endlicher Automat (Finite State Machine)
|
||||
|
||||
- **Zustände:** durch Bitmuster repräsentiert
|
||||
- **Operation:** Boolesche Funktion auf Teilzuständen
|
||||
- Vergleichbare Modelle:
|
||||
- Schaltnetz: keine Schleifen, keine Rückkopplung)
|
||||
- Endlicher Automat (Deterministisch und Nichtdeterministisch)
|
||||
- Kellerautomat (unendlich, aber Zugriff nur auf oberstes Element)(Hardwarelimitierungen?)
|
||||
- Turing-Maschine (endliche Zustände des Automaten, unendliches Band zum Lesen und Schreiben)
|
||||
![[Pasted image 20250708185128.png]]
|
||||
![[Pasted image 20250708185152.png]]
|
||||
![[Pasted image 20250708185618.png]]
|
||||
|
||||
---
|
||||
|
||||
### 🚌 Speicheranbindung & Endianness
|
||||
|
||||
- Speicheradressierung:
|
||||
- **big-endian:** höchstwertiges Byte an kleinster Adresse
|
||||
- **little-endian:** niedrigstwertiges Byte zuerst
|
||||
- Bus-System:
|
||||
- Bus-Takt meist langsamer als CPU-Takt
|
||||
- Cache als schneller Zwischenspeicher
|
||||
|
||||
---
|
||||
|
||||
### ⚙️ Aufbau von Computersystemen
|
||||
|
||||
#### Rechenwerk (ALU)
|
||||
|
||||
- Operationen: +, −, *, /, logische Operationen
|
||||
- Moderne CPUs: mehrere Register → direkte Register-Register-Operationen
|
||||
- Ältere CPUs: Akkumulator-Register für ALU-Operationen
|
||||
![[Pasted image 20250708185932.png]]****
|
||||
#### Steuerwerk
|
||||
- Verantwortlich für:
|
||||
- Ausführung der Befehle
|
||||
- Datenflusskontrolle
|
||||
- Ausnahmebehandlung & Interrupts
|
||||
|
||||
#### Register
|
||||
- Program Counter PC
|
||||
- Befehlsregister (Instruction Registers IR)
|
||||
- **optional**: Stackpointer SP
|
||||
- **Statusregister**: Zustandsregister, Flags usw.
|
||||
- Einfache CPUs haben einen speziellen Akkumulator-Register (Accu)
|
||||
- Aus diesem wird ein Wert gelesen
|
||||
- Ergebnis einer Operation wird hier gelagert
|
||||
- Moderne CPUs können nicht direkt Daten aus dem Hauptspeicher in das Rechenwerk lesen (Sicherheit oder warum?)
|
||||
|
||||
#### Bottleneck Datentransfer
|
||||
| Speichertyp | Geschwindigkeit |
|
||||
| -------------------- | -------------------- |
|
||||
| CPU Register | < Nanosekunde |
|
||||
| CPU Cache | ~wenige Nanosekunden |
|
||||
| Arbeitsspeicher | 60-70 Nanosekunden |
|
||||
| Sekundärspeicher SSD | 0,4 ms |
|
||||
| Sekundärspeicher HDD | 8-10 ms |
|
||||
|
||||
---
|
||||
|
||||
### 🧵 Befehlssatzarchitekturen (ISA)
|
||||
|
||||
**Befehle bestimmen die Architektur und umgekehrt**
|
||||
|
||||
#### 1️⃣ Stack-Architektur
|
||||
|
||||
- Operanden und Ergebnisse liegen auf Stack.
|
||||
- Benötigt Stack Pointer **SP Register**
|
||||
- Ergebnis wird final auf den Stack gelegt
|
||||
- Vorteile: kompakter Code, minimaler Prozessorzustand, sog. Null-Address Machine
|
||||
- Nachteil: viele Speicherzugriffe
|
||||
- Heute: nur noch in virtuellen Maschinen (JVM, p-Machine)
|
||||
|
||||
#### 2️⃣ Akkumulator-Architektur
|
||||
|
||||
- Ein Register (Akkumulator) für Operanden & Ergebnis
|
||||
- Speicherzugriff für zweiten Operand nötig
|
||||
- Kompakt, aber teuer durch Speicherzugriffe
|
||||
- **Ein-Adress-Maschine**
|
||||
|
||||
#### 3️⃣ Register-Memory-Architektur
|
||||
|
||||
- Mehrere Register, 2. Operand aus Speicher
|
||||
- Zwei-Adress-Befehle
|
||||
- Vorteil: direkt mit Speicher arbeiten
|
||||
- Nachteil: Speicherzugriffe kosten Zeit
|
||||
|
||||
#### 4️⃣ Register-Register (Load/Store)-Architektur
|
||||
|
||||
- Arithmetik nur auf Registern
|
||||
- Speicherzugriff explizit mit Load/Store
|
||||
- Drei-Adress-Befehle
|
||||
- Vorteil: keine unnötigen Speicherzugriffe
|
||||
- Nachteil: mehr Befehle nötig → größerer Code
|
||||
- Typisch für **RISC-Architekturen**
|
||||
|
||||
---
|
||||
|
||||
### 🔥 RISC vs CISC
|
||||
|
||||
| **Merkmal** | **RISC** | **CISC** |
|
||||
| --------------- | ----------------------------------- | ------------------------------- |
|
||||
| **Befehlssatz** | Einfach, einheitlich, kurze Befehle | Komplex, unterschiedliche Länge |
|
||||
| **Hardware** | Einfach, energieeffizient | Komplex oder Mikroprogramme |
|
||||
| **Codegröße** | Größer | Kompakter |
|
||||
| **Beispiele** | ARM, MIPS, SPARC, PowerPC | x86 (Intel, AMD), Zilog Z80 |
|
||||
| **Vorteile** | Schneller bei genügend Registern | Speichereffizient |
|
||||
| **Nachteile** | Mehr Programmspeicher nötig | Langsame komplexe Befehle |
|
||||
|
||||
Unterschied zwischen CISC und RISC CPUs – Gibt es Mischformen?
|
||||
|
||||
| ==Merkmal== | ==CISC (Complex Instruction Set Computer)== | ==RISC (Reduced Instruction Set Computer)== |
|
||||
| :--------------- | :------------------------------------------ | :------------------------------------------ |
|
||||
| Befehlssatz | Viele, komplexe Befehle | Wenige, einfache Befehle |
|
||||
| Hardwareaufbau | Komplexe Steuerlogik oder Mikroprogramme | Einfache, schnelle Hardware |
|
||||
| Befehlslänge | Unterschiedlich lang (z. B. 1–15 Byte) | Gleich lang (z. B. 4 Byte) |
|
||||
| Operationen | Direkt mit Speicher möglich | Nur mit Registern (Load/Store-Prinzip) |
|
||||
| Speicherbedarf | Geringer, da kompakter Code | Höher, da mehr Befehle nötig |
|
||||
| Energieeffizienz | Weniger effizient | Höher, da keine ungenutzten Logikblöcke |
|
||||
| Fokus | Effizienz bei Assembler-Programmierung | Optimierung für Compiler und Pipeline |
|
||||
|
||||
|
||||
---
|
||||
|
||||
### 📝 Für die Klausur merken
|
||||
|
||||
✅ Unterschiede der Architekturen (Stack, Akkumulator, Register-Memory, Load/Store)
|
||||
✅ RISC vs. CISC: Vor- und Nachteile + Beispiele
|
||||
✅ Endianness und Bedeutung bei Datentransfer
|
||||
✅ Moore’s Law und dessen Grenzen
|
||||
✅ Flaschenhals Speicherzugriff: Register > Cache > RAM > SSD > HDD
|
||||
|
||||
Reference in New Issue
Block a user