add Digitaltechnik and Lineare Algebra

This commit is contained in:
Dominik 2025-03-26 20:51:23 +01:00
commit b872f672ae
Signed by: dominik
GPG key ID: 06A4003FC5049644
27 changed files with 940 additions and 0 deletions

View file

@ -0,0 +1,202 @@
\section{Codierung}
\subsection{Arten von Codierungen}
\begin{itemize}
\item \textbf{Zeichencodierung:} Darstellung von Schriftzeichen
\item \textbf{Zahlencodierung:} Darstellung von Zahlenwerten
\item \textbf{Anwendungscodierung:} Darstellung von Informationen einer Anwendung
\item \textbf{Verschlüsselung:} Umcodierung, sodass die Daten nur mit zusätzlichen Informationen entschlüsselt werden können
\item \textbf{Komprimierung:} Reduzierung der Datenmenge durch Umcodierung
\item \textbf{Signalcodierung:} Darstellung abstrakter Info als \\Signal/Signalfolge
\end{itemize}
\subsection{Zeichencodierung}
\begin{itemize}
\item \textbf{ASCII:} 7-Bit-Zeichensatz, viele nationale Zeichen nicht enthalten
\item \textbf{ISO 8859-X:} 8-Bit-Zeichensatz, erweitert ASCII um nationale Zeichen
\item \textbf{Unicode:} 8/16/32-Bit-Zeichensatz, enthält fast alle Schriftzeichen, enthält Fortsetzungszeichen
\end{itemize}
\subsection{Zahlencodierung}
\subsubsection{Abzählsysteme}
Jedes Symbol hat einen Symbolwert, aufaddieren der Symbolwerte ergibt den Zahlenwert.
\subsubsection{Fingerabzählsystem}
$A = \{\mathrm{Finger}\}$ \\
$S(\mathrm{Finger}) = 1$ \\
Wertebereich $[0, 10[$ \\
Keine negativen Zahlen möglich, sehr einfach
\subsubsection{Einfache Strichliste}
$A = \{\mid\}$ \\
$S(\mid) = 1$ \\
Wertebereich $[0, \infty[$ \\
Keine negativen Zahlen möglich, sehr einfach, keine Subtraktion möglich, Übersichtlich bis ca. $10$
\subsubsection{erweiterte Strichliste}
$A = \{\mid, \cancel{\mid\mid\mid\mid}\}$ \\
$S(\mid) = 1$ \\
$S(\cancel{\mid\mid\mid\mid}) = 5$ \\
Wertebereich $[0, \infty[$ \\
Sortieren und zusammenfassen wenn möglich \\
Keine negativen Zahlen möglich, einfach, keine Subtraktion möglich, Übersichtlich bis ca. $50$
\subsubsection{Römisches Zahlensystem}
$A = \{I, V, X, L, C, D, M\}$ \\
$S(I) = 1$ \\
$S(V) = 5$ \\
$S(X) = 10$ \\
$S(L) = 50$ \\
$S(C) = 100$ \\
$S(D) = 500$ \\
$S(M) = 1000$ \\
Wertebereich $[0, 3999]$ \\
Keine negativen Zahlen möglich, keine Subtraktion möglich, wenig verständlich, nicht einfach
\subsection{Stellenwertsysteme}
Gängige Stellenwertsysteme:
\begin{itemize}
\item Dezimalsystem: Basis 10
\item Binärsystem: Basis 2
\item Oktalsystem: Basis 8
\item Hexadezimalsystem: Basis 16
\end{itemize}
Darstellung von negativen Zahlen:
\begin{itemize}
\item Vorzeichen und Betrag
\item Einerkomplement
\item Zweierkomplement
\end{itemize}
Darstellung von Kommazahlen:
\begin{itemize}
\item \textbf{Bruchdarstellung:} Unendlich viele Möglichkeiten
\item \textbf{Festkommadarstellung:} Feste Anzahl an Nachkommastellen (Verschiebung des Kommas)
\item \textbf{Gleitkommadarstellung:} Mantisse und Exponent
\end{itemize}
\subsubsection{IEEE 754}
Sign Bit $S$ statt 2er Komplement. Manitisse $M$ und Exponent $E$. \\
$S \cdot M \cdot 2^E$
\paragraph{Normalisierte Darstellung} \ \\
\textbf{Zwei Optionen:} \\
Mantisse mit genau einer Ziffer vor dem Komma ODER
Manitisse mit $0$ vor dem Komma und erstem Nachkommastellenzeichen $1$
\paragraph{reservierte Bitmuster} \ \\
Exponent $0$: keine Normalisierung, kein Hidden Bit $\to$ Exponent = 1 - Bias \\
$\to$ Mantisse $0$: $\pm 0$ \\
Exponent $2^e - 1$: Zahl nicht darstellbar \\
$\to$ Mantisse $0$: $\pm \infty$ \\
$\to$ Mantisste $\neq 0$: NaN
\paragraph{Umrechnung}
\begin{enumerate}
\item Vorzeichen merken, weiter mit Betrag
\item Darstellung als Festkommazahl also Exponent (Basis 10) = 0
\item Umrechnung als Festkommazahl ins Binärsystem (Mantisse (bei 16 Bit → 10) Stellen nach der 1. “1” berechnen)
\item Bestimmung von Exponent real durch Kommaverschiebung bei der Mantisse hinter die erste “1” (Normalisierung)
\item Bestimmung von Exponent gespeichert (Exponent reals + Bias)
\item Umrechnung Exponent gespeichert ins Binärsystem
\item Notation des Bitmusters (fehlende Stellen bei Exponent mit führenden “0”, bei Mantisse mit “0” am ende auffüllen, bei zu großen Zahlen → Bitmuster für Unendlich)
\end{enumerate}
\subsubsection{Codierungsmethoden}
\begin{itemize}
\item Wertecodierung: Wert wird insgesamt codiert
\item Zifferncodierng: Ziffern werden einzeln codiert
\end{itemize}
\paragraph{BCD (Binary Coded Decimal)} \ \\
4-Bit-Code für jede Dezimalziffer, 0-9 codiert, 1010-1111 reserviert
\paragraph{Gray-Code} \ \\
Wechsel nur einer Bitstelle bei aufeinanderfolgenden Zahlen, um lesefehler zu vermindern.\\
Beginend mit $0\dots0$ je das rechteste Bit invertieren, sodass ein bislang nicht vorkommender Code entsteht.
\subsection{Signalcodierung}
Mögliche Signalarten:
\begin{itemize}
\item elektrische Signale (z.B. in Computern verwendet)
\item optische Signale
\item mechanische Signale
\end{itemize}
\subsubsection{NRZ (Non Return to Zero)}
symmetrische oder single-ended Pegel \\
Während eines Bitintervalls wird ein Signalpegel gehalten.
\begin{itemize}
\item \textbf{TRG}: Bei jedem Pegelwechsel ist Taktrückgewinnung möglich
\item \textbf{GSF}: Nur bei symmetrischen Pegel und gleichverteiltung von 0 und 1 Gleichstromfrei.
\item \textbf{SSH}: Störsicherheit optimal, da nur 2 Pegel
\item \textbf{BBB}: Halbe Schrittweite, also optimaler Bandbreitenbedarf
\end{itemize}
\subsubsection{RZ (Return to Zero)}
symmetrische oder single-ended Pegel \\
Während eines Bitintervalls wird ein Signalpegel gehalten, in der Mitte des Intervalls wird der Pegel auf 0 zurückgesetzt.
\begin{itemize}
\item \textbf{TRG}: Bei jeder 1 ist Taktrückgewinnung möglich
\item \textbf{GSF}: in der Praxis nie Gleichstromfrei.
\item \textbf{SSH}: Störsicherheit optimal, da nur 2 Pegel
\item \textbf{BBB}: schlecht (vorallem bei vielen 1)
\end{itemize}
\subsubsection{AMI (Alternate Mark Inversion)}
symmetrische Pegel + 0-Pegel. \\
Zwei Signalpegel für die $1$-Darstellung. \\
Die beiden Signalpegel wechseln sich ab.
\begin{itemize}
\item \textbf{TRG}: Bei jeder 1 ist Taktrückgewinnung möglich
\item \textbf{GSF}: nach jeder 2ten 1 Gleichstromfrei (in der Praxis immer)
\item \textbf{SSH}: Störsicherheit schlecht, da 3 Pegel
\item \textbf{BBB}: Halbe Schrittweite, also optimaler Bandbreitenbedarf
\end{itemize}
\subsubsection{Manchester}
symmetrische Pegel \\
Darstellung eines Bits mithilfe eines Pegelwechsels in der Mitte des Bitintervalls.\\
z.B. $0 \to 01$ und $1 \to 10$
\begin{itemize}
\item \textbf{TRG}: immer Taktrückgewinnung möglich
\item \textbf{GSF}: immer Gleichstromfrei
\item \textbf{SSH}: optimal, da nur 2 Pegel
\item \textbf{BBB}: schlecht
\end{itemize}
\subsubsection{TRG ermöglichen}
\begin{enumerate}
\item \textbf{Startbitsequenz}: \\
Vor jedem Datenblock eine Startbitsequenz, die eine Taktrückgewinnung ermöglicht.
\item \textbf{Bit-Stuffing}: \\
Wenn zu viele gleiche Bits hintereinander auftreten, wird ein zusätzliches Bit eingefügt.
\item \textbf{Blockcodierung}: \\
Daten werden in Blöcke der länge n+1 umcodiert, die eine Taktrückgewinnung ermöglichen.
\end{enumerate}