diff options
author | LordMcFungus <mceagle117@gmail.com> | 2021-03-22 18:05:11 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-03-22 18:05:11 +0100 |
commit | 76d2d77ddb2bed6b7c6b8ec56648d85da4103ab7 (patch) | |
tree | 11b2d41955ee4bfa0ae5873307c143f6b4d55d26 /vorlesungen/slides/4/schieberegister.tex | |
parent | more chapter structure (diff) | |
parent | add title image (diff) | |
download | SeminarMatrizen-76d2d77ddb2bed6b7c6b8ec56648d85da4103ab7.tar.gz SeminarMatrizen-76d2d77ddb2bed6b7c6b8ec56648d85da4103ab7.zip |
Merge pull request #1 from AndreasFMueller/master
update
Diffstat (limited to 'vorlesungen/slides/4/schieberegister.tex')
-rw-r--r-- | vorlesungen/slides/4/schieberegister.tex | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/vorlesungen/slides/4/schieberegister.tex b/vorlesungen/slides/4/schieberegister.tex new file mode 100644 index 0000000..f349337 --- /dev/null +++ b/vorlesungen/slides/4/schieberegister.tex @@ -0,0 +1,120 @@ +% +% schieberegister.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\bgroup +\def\ds{0.7} +\definecolor{darkgreen}{rgb}{0,0.6,0} +\def\punkt#1#2{({(#1)*\ds},{(#2)*\ds})} +\def\rahmen{ + \draw ({-0.5*\ds},{-0.5*\ds}) rectangle ({7.5*\ds},{0.5*\ds}); + \foreach \x in {0.5,1.5,...,6.5}{ + \draw ({\x*\ds},{-0.5*\ds}) rectangle ({\x*\ds},{0.5*\ds}); + } +} +\def\polynom#1#2#3#4#5#6#7#8{ + \node at \punkt{0}{0} {$#1$}; + \node at \punkt{1}{0} {$#2$}; + \node at \punkt{2}{0} {$#3$}; + \node at \punkt{3}{0} {$#4$}; + \node at \punkt{4}{0} {$#5$}; + \node at \punkt{5}{0} {$#6$}; + \node at \punkt{6}{0} {$#7$}; + \node at \punkt{7}{0} {$#8$}; +} +\begin{frame}[t] +\frametitle{Implementation der Multiplikation in $\mathbb{F}_2(\alpha)$\uncover<10->{: Schieberegister}} +Rechnen in $\mathbb{F}_2[X]$\only<5->{ und $\mathbb{F}_2(\alpha)$} +ist speziell einfach +\\ +Minimalpolynom von $\alpha$: ${\color{darkgreen}m(X) = X^8 + X^4+X^3+X+1}$ +(aus dem AES Standard) + +\begin{center} +\begin{tikzpicture}[>=latex,thick] + +\uncover<4->{ + \fill[color=blue!20] + \punkt{-0.5}{-0.5} rectangle \punkt{7.5}{0.5}; +} + +\uncover<2->{ +\begin{scope} + \rahmen + \node at \punkt{-0.5}{1} [left] {$p(X)=\mathstrut$}; + \node at \punkt{0}{1} {$X^7$\strut}; + \node at \punkt{2.5}{1}{$+$\strut}; + \node at \punkt{3}{1} {$X^4$\strut}; + \node at \punkt{4.5}{1}{$+$\strut}; + \node at \punkt{5}{1} {$X^2$\strut}; + \node at \punkt{6.5}{1}{$+$\strut}; + \node at \punkt{7}{1} {$1$\strut}; + \polynom10010101 +\end{scope}} + +\uncover<3->{ + \draw[->] ({7.7*\ds},-0.2) to[out=-45,in=45] ({7.7*\ds},-1.8); + \node at ({8*\ds},-1) [right] {$\mathstrut\cdot X = \text{Shift}$}; +} +\uncover<4->{ + \foreach \x in {0,...,7}{ + \draw[->,color=blue!40] + ({\x*\ds},{-0.6*\ds}) -- ({(\x-1)*\ds},{-2+0.6*\ds}); + } +} + +\fill[color=white] (-4.65,0) circle[radius=0.01]; + +\uncover<3->{ + \begin{scope}[yshift=-2cm] + \uncover<4->{ + \fill[color=blue!20] + \punkt{-1.5}{-0.5} rectangle \punkt{6.5}{0.5}; + \rahmen + \polynom00101010 + } + \node at \punkt{2}{1} {$X^5$\strut}; + \node at \punkt{3.5}{1}{$+$\strut}; + \node at \punkt{4}{1} {$X^3$\strut}; + \node at \punkt{5.5}{1}{$+$\strut}; + \node at \punkt{6}{1} {$X$\strut}; + \begin{scope}[xshift=0.4cm] + \node at \punkt{-1}{1} [left] + {$\uncover<5->{{\color{darkgreen}\alpha^4+\alpha^3+\alpha+1=\alpha^8}}\only<-4>{X^8}$\strut}; + \end{scope} + \node at \punkt{-1}{0} {$1$\strut}; + \end{scope} +} + +\uncover<6->{ + {\color<8->{red} + \draw[->] (-2.5,-1.5) to[out=-90,in=180] (-0.5,-2.7); + } + \begin{scope}[yshift=-2.7cm] + \rahmen + {\color{darkgreen} + \polynom00011011 + } + \end{scope} +} + +\uncover<7->{ + \node at ({3.5*\ds},-3.45) {$\|$}; + + \begin{scope}[yshift=-4.2cm] + \rahmen + \polynom00110001 + \node at \punkt{7.6}{0} [right] {$\mathstrut=\alpha\cdot p(\alpha)$}; + \end{scope} +} + +\uncover<8->{ + \node[color=red] at (-3.0,-2.5) {Feedback}; +} + +\end{tikzpicture} +\end{center} + +\end{frame} +\egroup |