Informatik Klausur II Flashcards
Beschreiben Sie kurz die Teilgebiete der Informatik.
- Angewandte Informatik • beschäftigt sich mit den vielfältigen Anwendungsmöglichkeiten für Rechensysteme (medizinische Informatik, Produktionsinformatik, Software in der Nautik bzw. Logistik etc.) -> Anwendungssoftware, z.B. Berechnung von Klimamodellen - Technische Informatik • befasst sich mit den hardwaretechnischen Grundlagen der Informatik -> Mikroprozessortechnik (Konzeption von Rechnern); Rechnerarchitektur (Konzeption der CPU); Rechnerkommunikation (Datenübertragung in Rechnernetzen) - Praktische Informatik • befasst sich mit der Programmierung von Rechnern -> (Programmiersprachen, Compiler und Interpreter, Algorithmen und Datenstrukturen, Betriebssysteme, Datenbanken) - Theoretische Informatik • befasst sich mit den (mathematischen) Grundlagen der Informatik, die von den anderen Teilgebieten genutzt werden -> Automatentheorie u. formale Sprachen; Komplexitätstheorie, Berechenbarkeitstheorie
Erläutern Sie das Johan Neumann-Rechner Prinzip (5 Komponenten). Und was bedeutet das EVA-Prinzip?
- 5 Funktionseinheiten • Steuerwerk • Rechnerwerk • Speicher • Eingabewerk • Ausgabewerk - Speicher • Aufbewahrung von auszuführenden Programmen und Daten • heutzutage fast ausschließlich binäre Speicher - Rechenwerk • Ausführen von Operationen auf Daten • Unterstützung von arithmetischen (z.B. Addition/Subtraktion) und logischen (boolesche) (z.B. Konjunktion/Disjunktion/Negation) Operationen - Ein-/Ausgabewerk • Schnittstellen des Computers mit Benutzer (mittels z.B. Tastatur, Bildschirm - Steuerwerk • für Gesamtsteuerung (Koordination der anderen Komponenten) zuständig • Hauptaufgabe = Bearbeitung von Befehlen (Anweisungen) des auszuführenden Programms Steuerwerk und Rechenwerk unter Bezeichnung Prozessor zusammengefasst - Merkmale des Von-Neumann-Rechners • 5 Funktionseinheiten • ein Speicher für Programme, Daten, Zwischen- und Endergebnisse • Speicher in gleichgroße Zellen unterteilt • sequentielle Abarbeitung des Programms aus dem Speicher • binäre Codierung aller Daten • Struktur des Rechners unabhängig vom Problem - Befehle des Von-Neumann-Rechners • arithmetische Befehle • logische Befehle • Datentransportbefehle • Programmsteuerbefehle EVA-Prinzip - Eingabe -> Verarbeitung -> Ausgabe - Grundprinzip der Datenverarbeitung
Notieren Sie folgende Werte in Summenschreibweise und im Dezimalsystem: (312)4 (ab1)12 (101011)2 (ABC)16 (1111)2
54 1573 43 2748 15
Markieren Sie folgende Aufgaben/Funktionen des Betriebssystems als Wahr oder Falsch:
- die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften der Rechenanlage die Basis der möglichen Betriebsarten des digitalen Rechensystems bilden und die insbesondere die Abbildung von Programmen steuern und überwachen
- ein System zur Programmierung und Wartung systemnaher Software
- eine Software-Schicht, die alle Teile des System verwaltet und dem Benutzer eine Schnittstelle oder eine virtuelle Maschine anbietet, die einfacher zu verstehen und zu produzieren ist (als nackte Hardware)
- ein System zur Manipulation und Darstellung von Daten/ Informationen ihrer Anordnung in Listen, Bäumen usw. und ihrer Weiterarbeiten
- ein Programm, das als Vermittler zwischen Rechennutzer und Rechner Hardware fungiert. Sein Zweck ist es, eine Umgebung bereits zu stellen in der ein Benutzer bequem und effizient Programme ausführen kann
- ein System, das alle zur Programmerstellung notwendigen Werkzeuge zusammenführt
- wahr 2. falsch 3. wahr 4. falsch 5. wahr 6. falsch
Stellen Sie die 7 Schichten des (ISO) OSI Referenzmodelles für Netzwerke vor und erläutern Sie die einzelnen Schichten.
- Kommunikationsprotokoll (Art und Abfolge des Datenaustausches) - Schichtmodell, wobei jede Schicht gewisse Funktionalität für die darüberliegende Schicht bereitstellt
Nennen und beschreiben Sie die 6 Schritte der Top-Down-Lösungsstrategie.
Präzisieren der Ein- und Ausgabe: Festlegen der Datentypen für Ein- und Ausgabe
Entwickeln einer Lösungsidee: korrekte Lösung, effiziente Lösung
Entwurf des groben Programmgerüsts: Darstellung des Lösungswegs mit Hilfe von grafischen Diagrammen
Schrittweise Verfeinerung: Verfeinerungen des Programmablaufs zur Umsetzung in Programmiersprache
Umsetzung in eine Programmiersprache
Testen und Korrigieren von Fehlern: Prüfen des Programm -> Prozess des Debugging
Erläutern Sie die folgenden JAVA Datentypen und geben Sie ein Beispieö:
char, short, float, byte, array
char oder character = repräsentiert ein Zeichen (z.B. A,B,c,d,+,…)
short = ganze Zahl, 16 Bit, 2 Byte, Wertebereich: -32.768 bis 32.767 (z.B. 5, -199, 30.000)
float = Gleitkommazahl, stellt reelle Zahlen dar, Größen von 4 Byte, max. 7 Nachkommastellen (z.B. 3,3333333; 5,32, -7,1234)
byte = Maßeinheit für Datenmenge, 1 Byte entspricht einer Reihenfolge von 8 Bit (z.B. 00110111, 11111111)
array = Tabelle, Datenfeld (z.B.
1 1 1
0 1 0
1 0 1
Eine Reederei möchte ihre Vorzüge und Leistungsdaten ihrerer Schiffe im Internet mittels JAVA-Applet präsentieren. Erkäutern Sie die Vorgehensweise um eine selbstgeschriebens JAVA-Applet im Browser anschauen zu können.
- Erstellen/ schreiben des JAVA-Applets (ggf. mit Unterstützung von entsprechendem Programm z.B. BlueJ), unter Verwendung z.B. einer Lösungsstrategie (Top-Down-Lösungsstrategie)
- Testen des Applets (Teil der Top-Down-Lösungsstrategie)
- Integrieren des JAVA-Applets in html Seite der Reederei
Sortieren Sie folgende Listenreihenfolge nach “Selection Sort”, “Bubble Sort” und “Insertion Sort” und geben Sie die Reihenfolgen nach jedem Durchgang an.
Listenreiehenfolge (7,5,3,8,4)
Sortieren nach Auswahl (Selection Sort)
- finde zurest das kleinste Element und tausche es gegen das an erster Stelle befindliche Element aus. Suche dann das zweitkleinste Element im Feld und tausche es gegen das an zweiter Stelle befindliche Element aus usw.
- Schritt 1 (3,5,7,8,4); Schritt 2 (3,4,7,8,5); Schritt 3 (3,4,5,8,7); Schritt 4 (3,4,5,7,8)
Sortieren durch Austausch (Bubble Sort)
- ähnliche dem Auswahlverfahren
- jedoch nebeneinanderstehende Elemente verglichen -> nachfolgende Element kleiner, so erfolgt ein Austausch der betrachteten Vergleichs-Elemente.
- danach Vorrücken um eine Position und Vergleichen dieser Elemente
1. Durchlauf
Schritt 1 (5,7,3,8,4) Vergleich 7 / 5; 7 größer = Austausch
Schritt 2 (5,3,7,8,4) Vergleich 7 / 3; 7 größer = Autausch
Schritt 3 (5,3,7,8,4) Vergleich 7 / 8; 8 größer = kein Austausch
Schritt 4 (5,3,7,4,8) Vergleich 8 / 4; 8 größer = Austausch
- Durchlauf mit (5,3,7,4,8)
Schritt 1 (3,5,7,4,8) Vergleich 5 / 3; 5 größer = Austausch
Schritt 2 (3,5,7,4,8) Vergleich 5 / 7; 7 größer = kein Austausch
Schritt 3 (3,5,4,7,8) Vergleich 7 / 4; 7 größer = Austausch
- Durchlauf mit (3,5,4,7,8)
Schritt 1 (3,5,4,7,8) Vergleich 3 / 5; 5 größer = kein Austausch
Schritt 2 (3,4,5,7,8) Vergleich 5 / 4; 5 größer = Austausch
- Durchlauf mit (3,4,5,7,8)
Schritt 1 (3,4,5,7,8) Vergleich 3 / 4; 4 größer = kein Austausch
Sortieren durch Einfügen (Insertion Sort)
- “in place” Verfahren -> keine neues Array, kein neues Speicherplatz
- Zahl = vorsortierter Bereich, alle nachfolgenden Zahlen nach dieser Zahl einsortieren
Beispiel:
- Durchlauf - Vergleich der 2. Zahl mit 1. Zahl -> Einsortieren
- Durchlauf - Vergleich der 3. Zahl mit 1.&2. Zahl -> Einsortieren
- Durchlauf - Vergleich der 4. Zahl mit 1.,2.&3. Zahl -> Einsortieren
usw.
Gegeben (7,5,3,8,4)
Schritt 1: (5,7,3,8,4)
Schritt 2: (3,5,7,8,4)
Schritt 3: (3,5,7,8,4)
Schritt 4 (3,4,5,7,8)