Notizen, Zusammenfassungen, Arbeiten, Prüfungen und Übungen für Informatik für Hochschule

Datenbankmodelle: ER, hierarchisch, relational, objektorientiert

InformatikAktualisiert am 7,96 KB

Entity-Relationship-Modell (ER-Modell)

Eigenschaften des ER-Modells

  • Das Modell wurde von Peter P. Chen vorgeschlagen und dient als Grundlage für eine einheitliche Sicht auf Daten.
  • Es verwendet einen natürlichen Ansatz zur Modellierung der realen Welt, die aus Entitäten und Beziehungen besteht.
  • Das ER-Modell konzentriert sich auf zwei grundlegende Konzepte: Entitäten und Beziehungen.
  • Im ER-Modell lassen sich Schlüsselelemente wie Entitäten, Attribute und Beziehungen sowie Wertebereiche (analog zum Konzept der Domäne) unterscheiden.

Hierarchisches Datenbankmodell

Vorteile des hierarchischen Modells

  1. Konzeptionelle Einfachheit: Die hierarchische Struktur mit ihren Beziehungen zwischen den Ebenen ist logisch einfach zu verstehen.
  2. Datenbanksicherheit:
...
Weiterlesen "Datenbankmodelle: ER, hierarchisch, relational, objektorientiert" »

Serielle Kommunikation und SPI-Bus: Grundlagen, Aufbau und Modi

InformatikAktualisiert am 46,03 KB

Definition der seriellen Kommunikation

In der Telekommunikation und Informatik ist die serielle Kommunikation der Prozess der Übertragung von Daten Bit für Bit, nacheinander über einen Kommunikationskanal oder Computerbus. Dies steht im Gegensatz zur parallelen Kommunikation, bei der alle Bits jedes Symbols (der kleinsten Dateneinheit, die gleichzeitig übertragen wird) zusammen gesendet werden.

Serielle Kommunikation wird in fast allen Kommunikations- und Computernetzwerken eingesetzt, da die Kosten für Kabel und die Schwierigkeiten bei der Synchronisation die parallele Kommunikation unpraktisch machen.

Grundlagen des SPI-Busses

Der Serial Peripheral Interface (SPI) Bus wurde ursprünglich von Motorola in den späten 80er Jahren für die 68000...

Weiterlesen "Serielle Kommunikation und SPI-Bus: Grundlagen, Aufbau und Modi" »

Programmiersprachen Pascal, BASIC, FORTRAN und COBOL im Überblick

InformatikAktualisiert am 4,18 KB

Pascal: Eine Sprache für systematische Programmierung

Pascal wurde 1970 von Professor Niklaus Wirth an der Eidgenössischen Technischen Hochschule in Zürich entwickelt. Er benannte die Sprache nach dem französischen Mathematiker Blaise Pascal aus dem 17. Jahrhundert. Die Sprache wurde zunächst von ihrem Entwickler eingeführt und später für alle gängigen Mikrocomputer verfügbar gemacht.

Der Hauptgrund, der Wirth dazu bewog, Pascal zu entwickeln, war die Schaffung einer Sprache, die Bildungsprogramme als systematische Disziplin unterstützen sollte, sodass die Prinzipien dieser Disziplin klar in der Sprache widergespiegelt wurden. Pascal baut auf der früheren Programmiersprache ALGOL 60 auf, wobei alle wünschenswerten Eigenschaften dieser...

Weiterlesen "Programmiersprachen Pascal, BASIC, FORTRAN und COBOL im Überblick" »

Computer Grundlagen: Generationen, Datenorganisation und Hardware

InformatikAktualisiert am 4,18 KB

Die ersten Maschinen, die zur Datenverarbeitung fähig waren, wurden unter anderem von Hermann Hollerith entwickelt. Die Grundlagen für die digitale Datenverarbeitung, insbesondere das Konzept des speicherprogrammierten Computers, wurden maßgeblich von John von Neumann im Jahr 1945 beeinflusst. Von hier aus wird die Entwicklung der Computer oft in Generationen unterteilt.

1. Computergeneration

Die erste Generation (ca. 1940er-1950er Jahre) basierte auf Vakuumröhren. Die Programmierung erfolgte oft über Lochkarten oder Schalttafeln.

2. Computergeneration

Die zweite Generation (ca. 1950er-1960er Jahre) führte Transistoren als Schaltelemente ein und nutzte Ferritkernspeicher. Dies führte zu kleineren, schnelleren und energieeffizienteren Computern....

Weiterlesen "Computer Grundlagen: Generationen, Datenorganisation und Hardware" »

Statische vs. dynamische Bibliotheken: Grundlagen, Vor- und Nachteile

InformatikAktualisiert am 5,38 KB

Frühe Bindung (Statische Verknüpfung)

Eine Bibliothek, die statisch verknüpft ist, wird zur Kompilierzeit gebunden (im Gegensatz zur dynamischen Verknüpfung, die zur Laufzeit erfolgt). Der Vorteil dieser Bindungsart ist, dass ein Programm keine externe Bibliothek zur Laufzeit benötigt (da sie zur Kompilierzeit eingebunden wurde), was die Verteilung vereinfacht.

Die Verknüpfung ermöglicht es dem Programmierer und dem Betriebssystem, ein Programm in mehrere Dateien, sogenannte Module, zu unterteilen, die separat kompiliert und zu einem späteren Zeitpunkt zusammengeführt werden können. Der Link kann statischer oder dynamischer Natur sein. Das Ergebnis einer statischen Verknüpfung ist eine ausführbare Datei, die alle Symbole und die entsprechenden...

Weiterlesen "Statische vs. dynamische Bibliotheken: Grundlagen, Vor- und Nachteile" »

Programmierparadigmen im Vergleich: imperativ, logisch, funktional und objektorientiert

InformatikAktualisiert am 18,15 KB

Grundlagen der Programmierparadigmen

Identifizieren Sie die Säulen (Hauptmerkmale) der Paradigmen: imperativ, logisch, funktional und objektorientiert.

Imperative Programmierung

  • Zustandsmanagement: Verwaltung von Variablen und deren Werten.
  • Programmstruktur: Ein Programm ist eine Folge von Zuweisungen.
  • Berechnungsmodell: Eine Berechnung ist eine Folge von Zustandsänderungen.
  • Grundtypen von Anweisungen: Zuweisungen, Schleifen, bedingte Verzweigungen und unbedingte Sprünge.

Logische Programmierung

Basiert auf einer Menge von Werten, der Definition von Beziehungen und logischen Schlüssen.

  • Programm: Eine Definition von Beziehungen.
  • Berechnung: Ein Test (Folge von logischen Schlussfolgerungen).
  • Komponenten: Fakten, Regeln, Variablen und Abfragen.

Funktionale

...
Weiterlesen "Programmierparadigmen im Vergleich: imperativ, logisch, funktional und objektorientiert" »

Computerarchitektur: Von-Neumann, CPU, Speicher und Peripherie

InformatikAktualisiert am 7,93 KB

Die Von-Neumann-Architektur und funktionale Einheiten

Das Diagramm stellt den ersten Computer dar, den sogenannten Von-Neumann-Rechner, dessen Konzept bis heute gültig ist.

Funktionale Einheiten eines Computers

  • Eingabeeinheit (E)

    Eine Einrichtung, mit der Daten und Anweisungen in den Computer eingegeben werden. Informationen werden in binäre Signale umgewandelt. Es kann mehrere Eingabeeinheiten geben.

  • Ausgabeeinheit (A)

    Ein Gerät, über das wir die Ergebnisse der im Computer ausgeführten Programme erhalten. Sie wandeln elektrische Signale in für den Benutzer wahrnehmbare Informationen um.

  • Interner Speicher (MI), Hauptspeicher oder Zentralspeicher

    Speichert Daten und Anweisungen während der Ausführung von Programmen. Er ist mit den schnelleren

...
Weiterlesen "Computerarchitektur: Von-Neumann, CPU, Speicher und Peripherie" »

SPI-Bus in C: Funktionen setup_spi, spi_write, spi_read und Beispiel

InformatikAktualisiert am 6,96 KB

Einführung in den SPI-Bus

Der SPI-Bus (Serial Peripheral Interface) ist ein weit verbreiteter Kommunikationsstandard, der hauptsächlich für den Datentransfer zwischen integrierten Schaltkreisen in elektronischen Geräten eingesetzt wird. Es ist ein serieller, synchroner Bus, der im Vollduplex-Modus arbeitet. Er verfügt über eine Taktleitung (SCK), eine Leitung für eingehende Daten (MISO), eine für ausgehende Daten (MOSI) und einen Chip-Select-Pin (SS), der den Betrieb des Geräts, mit dem kommuniziert werden soll, aktiviert oder deaktiviert.

SPI-Bus-Verwaltung in C

Es gibt vier C-Funktionen, die mit dem SPI-Modul zusammenhängen. Diese sind jedoch nur nutzbar, wenn das Mikrocontroller-Hardware-Modul (SSP) ausgewählt ist. Es gibt auch Software-...

Weiterlesen "SPI-Bus in C: Funktionen setup_spi, spi_write, spi_read und Beispiel" »

Netzwerkschicht 2: MAC, LLC, Ethernet-Frames und Zugriffsverfahren (CSMA/CD)

InformatikAktualisiert am 4,57 KB

Kapitel 9: Netzwerkschicht 2 Grundlagen

Schicht 2: MAC vs. LLC Unterebenen

Die Schicht 2 (Data Link Layer) verwendet auf den oberen Schichten LLC (Logical Link Control) und ein Adressschema, um Geräte zu identifizieren. Frames sind Bitgruppen, wobei MAC (Media Access Control) die Quellen der Absendung identifiziert.

LLC (Logical Link Control) stellt die Verbindung zu den oberen Schichten her. Es verarbeitet Netzwerkpakete und identifiziert das Netzwerk-Layer-Protokoll, wodurch es unabhängig von der physischen Ausrüstung bleibt.

MAC (Media Access Control) ist für die Datenkapselung zuständig (Frame-Abgrenzung, Adressierung, Fehlererkennung). Es kontrolliert den Zugriff auf das Medium (Platzierung von Daten im und aus dem Medium, Wiederherstellung...

Weiterlesen "Netzwerkschicht 2: MAC, LLC, Ethernet-Frames und Zugriffsverfahren (CSMA/CD)" »

Kopulaverben und Semikopulaverben: Erklärung mit Beispielen

InformatikAktualisiert am 2,71 KB

Was sind Kopulaverben?

Die Kopula (lateinisch copula, wörtlich „Band“ oder „Verbindung“) ist eine spezielle Form des Verbs. Sie dient dazu, in der Sprache eine nominale Prädikation zu bilden. Das bedeutet, sie identifiziert ein Satzsubjekt als Mitglied einer Klasse oder kennzeichnet es durch ein ergänzendes semantisches Attribut (z. B. „Mein Vater ist Arzt“).

Obwohl Kopulaverben in der Regel selbst keine Handlung oder keinen Zustand ausdrücken, verbinden sie das Subjekt mit einem Prädikativum, das einen Zustand oder eine Eigenschaft des Subjekts repräsentiert.

Wichtige Kopulaverben im Deutschen

Die primären Kopulaverben im Deutschen sind:

  • sein (z. B. „Er ist müde.“)
  • werden (z. B. „Sie wird Ärztin.“)
  • bleiben (z. B. „Er
...
Weiterlesen "Kopulaverben und Semikopulaverben: Erklärung mit Beispielen" »