diff --git a/20220329/alu2.pdf b/20220329/alu2.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e0d031999f1521220c28875e2a8fd7d7840c0423 Binary files /dev/null and b/20220329/alu2.pdf differ diff --git a/20220329/logo-hochschule-bochum-cvh-text-v2.pdf b/20220329/logo-hochschule-bochum-cvh-text-v2.pdf new file mode 120000 index 0000000000000000000000000000000000000000..4aa99b8f81061aca6dcaf43eed2d9efef40555f8 --- /dev/null +++ b/20220329/logo-hochschule-bochum-cvh-text-v2.pdf @@ -0,0 +1 @@ +../common/logo-hochschule-bochum-cvh-text-v2.pdf \ No newline at end of file diff --git a/20220329/logo-hochschule-bochum.pdf b/20220329/logo-hochschule-bochum.pdf new file mode 120000 index 0000000000000000000000000000000000000000..b6b9491e370e499c9276918182cdb82cb311bcd1 --- /dev/null +++ b/20220329/logo-hochschule-bochum.pdf @@ -0,0 +1 @@ +../common/logo-hochschule-bochum.pdf \ No newline at end of file diff --git a/20220329/pgslides.sty b/20220329/pgslides.sty new file mode 120000 index 0000000000000000000000000000000000000000..5be1416f4216f076aa268901f52a15d775e43f64 --- /dev/null +++ b/20220329/pgslides.sty @@ -0,0 +1 @@ +../common/pgslides.sty \ No newline at end of file diff --git a/20220329/pst-circ-pg.sty b/20220329/pst-circ-pg.sty new file mode 120000 index 0000000000000000000000000000000000000000..81253a45bded27ed7cf1b13b967ae54772b0807d --- /dev/null +++ b/20220329/pst-circ-pg.sty @@ -0,0 +1 @@ +../common/pst-circ-pg.sty \ No newline at end of file diff --git a/20220329/rtech-20220329-fig1.pdf b/20220329/rtech-20220329-fig1.pdf new file mode 100644 index 0000000000000000000000000000000000000000..3da36a6cd472dfa5f9a59c6ad251807ee40ade37 Binary files /dev/null and b/20220329/rtech-20220329-fig1.pdf differ diff --git a/20220329/rtech-20220329-fig1.tex b/20220329/rtech-20220329-fig1.tex new file mode 100644 index 0000000000000000000000000000000000000000..354733b0c2c7e27449de083f298adee7c37e13cd --- /dev/null +++ b/20220329/rtech-20220329-fig1.tex @@ -0,0 +1,17 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-3,-2)(3,2) + \logic[logicType=and](-0.75,-0.125){and1} + \psline[arrows=o-](-2,0|and12)(and12) + \uput[180](-2,0|and12){A} + \psline[arrows=o-](-2,0|and11)(and11) + \uput[180](-2,0|and11){B} + \psline[arrows=o-](2,0|and1Q)(and1Q) + \uput[0](2,0|and1Q){Q} + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig10.pdf b/20220329/rtech-20220329-fig10.pdf new file mode 100644 index 0000000000000000000000000000000000000000..37954fe61d3a2e1858fa29531a278820546cd381 Binary files /dev/null and b/20220329/rtech-20220329-fig10.pdf differ diff --git a/20220329/rtech-20220329-fig10.tex b/20220329/rtech-20220329-fig10.tex new file mode 100644 index 0000000000000000000000000000000000000000..48c438ff5eaf1ecea39d07309d9364c08ce2d61b --- /dev/null +++ b/20220329/rtech-20220329-fig10.tex @@ -0,0 +1,22 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-4,-4)(4,4) + \logic[logicType=nand](-0.75,2){nand1} + \logic[logicType=nand](-0.75,-2){nand2} + \psline[arrows=o-](-3,0|nand12)(nand12) + \uput[180](-3,0|nand12){$\overline{\mbox{S}}$} + \psline[arrows=o-](-3,0|nand21)(nand21) + \uput[180](-3,0|nand21){$\overline{\mbox{R}}$} + \psline[arrows=o-](3,0|nand1Q)(nand1Q) + \uput[0](3,0|nand1Q){Q} + \psline[arrows=o-](3,0|nand2Q)(nand2Q) + \uput[0](3,0|nand2Q){$\overline{\mbox{Q}}$} + \psline[arrows=*-](2,0|nand1Q)(2,1.75)(-2,0.75)(-2,0|nand22)(nand22) + \psline[arrows=*-](2,0|nand2Q)(2,0.75)(-2,1.75)(-2,0|nand11)(nand11) + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig11.pdf b/20220329/rtech-20220329-fig11.pdf new file mode 100644 index 0000000000000000000000000000000000000000..fe828bf67220bf9ee07222e37cc4e51e97491c31 Binary files /dev/null and b/20220329/rtech-20220329-fig11.pdf differ diff --git a/20220329/rtech-20220329-fig11.tex b/20220329/rtech-20220329-fig11.tex new file mode 100644 index 0000000000000000000000000000000000000000..9f924ad41052fec1559a37a797ee73df61b116f0 --- /dev/null +++ b/20220329/rtech-20220329-fig11.tex @@ -0,0 +1,15 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-4,-4)(4,4) + \pnode(0,0.5){A} + \pnode(0,-0.5){B} + \capacitor(A)(B){} + \psline[arrows=-o](A)(A|0,1) + \psline[arrows=-o](B)(B|0,-1) + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig12.pdf b/20220329/rtech-20220329-fig12.pdf new file mode 100644 index 0000000000000000000000000000000000000000..8e8c32abe6f54d4a29bbb21d4d5e59ea5fdffbe3 Binary files /dev/null and b/20220329/rtech-20220329-fig12.pdf differ diff --git a/20220329/rtech-20220329-fig12.tex b/20220329/rtech-20220329-fig12.tex new file mode 100644 index 0000000000000000000000000000000000000000..48c438ff5eaf1ecea39d07309d9364c08ce2d61b --- /dev/null +++ b/20220329/rtech-20220329-fig12.tex @@ -0,0 +1,22 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-4,-4)(4,4) + \logic[logicType=nand](-0.75,2){nand1} + \logic[logicType=nand](-0.75,-2){nand2} + \psline[arrows=o-](-3,0|nand12)(nand12) + \uput[180](-3,0|nand12){$\overline{\mbox{S}}$} + \psline[arrows=o-](-3,0|nand21)(nand21) + \uput[180](-3,0|nand21){$\overline{\mbox{R}}$} + \psline[arrows=o-](3,0|nand1Q)(nand1Q) + \uput[0](3,0|nand1Q){Q} + \psline[arrows=o-](3,0|nand2Q)(nand2Q) + \uput[0](3,0|nand2Q){$\overline{\mbox{Q}}$} + \psline[arrows=*-](2,0|nand1Q)(2,1.75)(-2,0.75)(-2,0|nand22)(nand22) + \psline[arrows=*-](2,0|nand2Q)(2,0.75)(-2,1.75)(-2,0|nand11)(nand11) + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig2.pdf b/20220329/rtech-20220329-fig2.pdf new file mode 100644 index 0000000000000000000000000000000000000000..41aa42087e384f2296c09007a9e1658469e852f3 Binary files /dev/null and b/20220329/rtech-20220329-fig2.pdf differ diff --git a/20220329/rtech-20220329-fig2.tex b/20220329/rtech-20220329-fig2.tex new file mode 100644 index 0000000000000000000000000000000000000000..354733b0c2c7e27449de083f298adee7c37e13cd --- /dev/null +++ b/20220329/rtech-20220329-fig2.tex @@ -0,0 +1,17 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-3,-2)(3,2) + \logic[logicType=and](-0.75,-0.125){and1} + \psline[arrows=o-](-2,0|and12)(and12) + \uput[180](-2,0|and12){A} + \psline[arrows=o-](-2,0|and11)(and11) + \uput[180](-2,0|and11){B} + \psline[arrows=o-](2,0|and1Q)(and1Q) + \uput[0](2,0|and1Q){Q} + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig3.pdf b/20220329/rtech-20220329-fig3.pdf new file mode 100644 index 0000000000000000000000000000000000000000..4386026e7996aba10f474e6df7895a9b42275d7c Binary files /dev/null and b/20220329/rtech-20220329-fig3.pdf differ diff --git a/20220329/rtech-20220329-fig3.tex b/20220329/rtech-20220329-fig3.tex new file mode 100644 index 0000000000000000000000000000000000000000..354733b0c2c7e27449de083f298adee7c37e13cd --- /dev/null +++ b/20220329/rtech-20220329-fig3.tex @@ -0,0 +1,17 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-3,-2)(3,2) + \logic[logicType=and](-0.75,-0.125){and1} + \psline[arrows=o-](-2,0|and12)(and12) + \uput[180](-2,0|and12){A} + \psline[arrows=o-](-2,0|and11)(and11) + \uput[180](-2,0|and11){B} + \psline[arrows=o-](2,0|and1Q)(and1Q) + \uput[0](2,0|and1Q){Q} + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig4.pdf b/20220329/rtech-20220329-fig4.pdf new file mode 100644 index 0000000000000000000000000000000000000000..57ae1091dc6fdcf138cd5af5240dcf5917cc0c6e Binary files /dev/null and b/20220329/rtech-20220329-fig4.pdf differ diff --git a/20220329/rtech-20220329-fig4.tex b/20220329/rtech-20220329-fig4.tex new file mode 100644 index 0000000000000000000000000000000000000000..76707503d44cec7e4574a43ec87615071dcffcdf --- /dev/null +++ b/20220329/rtech-20220329-fig4.tex @@ -0,0 +1,55 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \newcommand{\invisible}{\tiny\color{white}} + \psset{logicLabelstyle=\invisible} + \newcommand{\logicSymbol}{\small\boldmath\bf\rule{0pt}{0.5cm}} + \psset{logicSymbolstyle=\logicSymbol} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-3,-2)(3,2) + \pnode(-1,1.5){A} + \uput[l](-2.5,0|A){$S$} + \pnode(1,1.5){B} + \ground[connectingdot=false](2,1.5) + \relais(A)(B){} + \pnode(2.5,2.5){A3} + \uput[l](2.0,0|A3){$R$} + \pnode(4.5,2.5){B3} + \ground[connectingdot=false](5.5,2.5) + \relais(A3)(B3){} + \pnode(-0.5,0){C0} + \psline[arrows=-*](C0)(-1.5,0)(-1.5,1.5) + \pnode(0.5,0.3){D0} + \pnode(0.5,-0.3){E0} + \pnode(3,-0.3){C3} + \pnode(4,0){D3} + \pnode(4,-0.6){E3} + \psline[arrows=*-,linewidth=2\pslinewidth](C3)(D3) + \pnode(7,0.7){D3plus} + \uput[180](D3plus){\textbf{+}} + \psline(E0)(C3) + \psline[arrows=->,arrowsize=0.3](D3)(D3plus|D3)(D3plus) + \psline[arrows=*-,linewidth=2\pslinewidth](C0)(D0) + \pnode(-0.5,-1.5){C1} + \pnode(0.5,-1.2){D1} + \pnode(0.5,-1.8){E1} + \uput[r](2.5,0|E1){$Q$} + \pnode(-3.0,-0.5){C1plus} + \uput[180](C1plus){\textbf{+}} + \psline[arrows=->,arrowsize=0.3](C1)(C1plus|C1)(C1plus) + \psline[arrows=*-,linewidth=2\pslinewidth](C1)(D1) + \psline[linestyle=dashed](0,-1.25)(0,1.0) + \psline[linestyle=dashed](3.5,-0.15)(3.5,2.0) + \psline[arrows=o-](-2.5,0|A)(A) + \psline[arrows=o-](2.0,0|A3)(A3) + \psline(B)(2,0|B) + \psline(B3)(5.5|B3) + \psline[arrows=o-](1.5,0|D0)(D0) + \psline[arrows=o-](1.5,0|D1)(D1) + \psline[arrows=o-](2.5,0|E1)(E1) + \psline[arrows=o-](5.0,0|E3)(E3) + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig5.pdf b/20220329/rtech-20220329-fig5.pdf new file mode 100644 index 0000000000000000000000000000000000000000..9a0b5daa4372f38123e58181647b5f0843e150b8 Binary files /dev/null and b/20220329/rtech-20220329-fig5.pdf differ diff --git a/20220329/rtech-20220329-fig5.tex b/20220329/rtech-20220329-fig5.tex new file mode 100644 index 0000000000000000000000000000000000000000..76707503d44cec7e4574a43ec87615071dcffcdf --- /dev/null +++ b/20220329/rtech-20220329-fig5.tex @@ -0,0 +1,55 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \newcommand{\invisible}{\tiny\color{white}} + \psset{logicLabelstyle=\invisible} + \newcommand{\logicSymbol}{\small\boldmath\bf\rule{0pt}{0.5cm}} + \psset{logicSymbolstyle=\logicSymbol} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-3,-2)(3,2) + \pnode(-1,1.5){A} + \uput[l](-2.5,0|A){$S$} + \pnode(1,1.5){B} + \ground[connectingdot=false](2,1.5) + \relais(A)(B){} + \pnode(2.5,2.5){A3} + \uput[l](2.0,0|A3){$R$} + \pnode(4.5,2.5){B3} + \ground[connectingdot=false](5.5,2.5) + \relais(A3)(B3){} + \pnode(-0.5,0){C0} + \psline[arrows=-*](C0)(-1.5,0)(-1.5,1.5) + \pnode(0.5,0.3){D0} + \pnode(0.5,-0.3){E0} + \pnode(3,-0.3){C3} + \pnode(4,0){D3} + \pnode(4,-0.6){E3} + \psline[arrows=*-,linewidth=2\pslinewidth](C3)(D3) + \pnode(7,0.7){D3plus} + \uput[180](D3plus){\textbf{+}} + \psline(E0)(C3) + \psline[arrows=->,arrowsize=0.3](D3)(D3plus|D3)(D3plus) + \psline[arrows=*-,linewidth=2\pslinewidth](C0)(D0) + \pnode(-0.5,-1.5){C1} + \pnode(0.5,-1.2){D1} + \pnode(0.5,-1.8){E1} + \uput[r](2.5,0|E1){$Q$} + \pnode(-3.0,-0.5){C1plus} + \uput[180](C1plus){\textbf{+}} + \psline[arrows=->,arrowsize=0.3](C1)(C1plus|C1)(C1plus) + \psline[arrows=*-,linewidth=2\pslinewidth](C1)(D1) + \psline[linestyle=dashed](0,-1.25)(0,1.0) + \psline[linestyle=dashed](3.5,-0.15)(3.5,2.0) + \psline[arrows=o-](-2.5,0|A)(A) + \psline[arrows=o-](2.0,0|A3)(A3) + \psline(B)(2,0|B) + \psline(B3)(5.5|B3) + \psline[arrows=o-](1.5,0|D0)(D0) + \psline[arrows=o-](1.5,0|D1)(D1) + \psline[arrows=o-](2.5,0|E1)(E1) + \psline[arrows=o-](5.0,0|E3)(E3) + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig6.pdf b/20220329/rtech-20220329-fig6.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b2a93a45507d1af64be71887932cb92bcda71c96 Binary files /dev/null and b/20220329/rtech-20220329-fig6.pdf differ diff --git a/20220329/rtech-20220329-fig6.tex b/20220329/rtech-20220329-fig6.tex new file mode 100644 index 0000000000000000000000000000000000000000..48c438ff5eaf1ecea39d07309d9364c08ce2d61b --- /dev/null +++ b/20220329/rtech-20220329-fig6.tex @@ -0,0 +1,22 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-4,-4)(4,4) + \logic[logicType=nand](-0.75,2){nand1} + \logic[logicType=nand](-0.75,-2){nand2} + \psline[arrows=o-](-3,0|nand12)(nand12) + \uput[180](-3,0|nand12){$\overline{\mbox{S}}$} + \psline[arrows=o-](-3,0|nand21)(nand21) + \uput[180](-3,0|nand21){$\overline{\mbox{R}}$} + \psline[arrows=o-](3,0|nand1Q)(nand1Q) + \uput[0](3,0|nand1Q){Q} + \psline[arrows=o-](3,0|nand2Q)(nand2Q) + \uput[0](3,0|nand2Q){$\overline{\mbox{Q}}$} + \psline[arrows=*-](2,0|nand1Q)(2,1.75)(-2,0.75)(-2,0|nand22)(nand22) + \psline[arrows=*-](2,0|nand2Q)(2,0.75)(-2,1.75)(-2,0|nand11)(nand11) + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig7.pdf b/20220329/rtech-20220329-fig7.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a4c4478acf001d66894e18e7584edb470600268e Binary files /dev/null and b/20220329/rtech-20220329-fig7.pdf differ diff --git a/20220329/rtech-20220329-fig7.tex b/20220329/rtech-20220329-fig7.tex new file mode 100644 index 0000000000000000000000000000000000000000..9f924ad41052fec1559a37a797ee73df61b116f0 --- /dev/null +++ b/20220329/rtech-20220329-fig7.tex @@ -0,0 +1,15 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-4,-4)(4,4) + \pnode(0,0.5){A} + \pnode(0,-0.5){B} + \capacitor(A)(B){} + \psline[arrows=-o](A)(A|0,1) + \psline[arrows=-o](B)(B|0,-1) + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig8.pdf b/20220329/rtech-20220329-fig8.pdf new file mode 100644 index 0000000000000000000000000000000000000000..905f4d59c0b3a729fb46ce11a64e573c99e3d2f0 Binary files /dev/null and b/20220329/rtech-20220329-fig8.pdf differ diff --git a/20220329/rtech-20220329-fig8.tex b/20220329/rtech-20220329-fig8.tex new file mode 100644 index 0000000000000000000000000000000000000000..48c438ff5eaf1ecea39d07309d9364c08ce2d61b --- /dev/null +++ b/20220329/rtech-20220329-fig8.tex @@ -0,0 +1,22 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-4,-4)(4,4) + \logic[logicType=nand](-0.75,2){nand1} + \logic[logicType=nand](-0.75,-2){nand2} + \psline[arrows=o-](-3,0|nand12)(nand12) + \uput[180](-3,0|nand12){$\overline{\mbox{S}}$} + \psline[arrows=o-](-3,0|nand21)(nand21) + \uput[180](-3,0|nand21){$\overline{\mbox{R}}$} + \psline[arrows=o-](3,0|nand1Q)(nand1Q) + \uput[0](3,0|nand1Q){Q} + \psline[arrows=o-](3,0|nand2Q)(nand2Q) + \uput[0](3,0|nand2Q){$\overline{\mbox{Q}}$} + \psline[arrows=*-](2,0|nand1Q)(2,1.75)(-2,0.75)(-2,0|nand22)(nand22) + \psline[arrows=*-](2,0|nand2Q)(2,0.75)(-2,1.75)(-2,0|nand11)(nand11) + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329-fig9.pdf b/20220329/rtech-20220329-fig9.pdf new file mode 100644 index 0000000000000000000000000000000000000000..86e8e36b628b8c943d1972bae2d810667d6e2ceb Binary files /dev/null and b/20220329/rtech-20220329-fig9.pdf differ diff --git a/20220329/rtech-20220329-fig9.tex b/20220329/rtech-20220329-fig9.tex new file mode 100644 index 0000000000000000000000000000000000000000..9f924ad41052fec1559a37a797ee73df61b116f0 --- /dev/null +++ b/20220329/rtech-20220329-fig9.tex @@ -0,0 +1,15 @@ +\documentclass{article} +\input tmp.inputs +\pagestyle{empty} +\begin{document} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-4,-4)(4,4) + \pnode(0,0.5){A} + \pnode(0,-0.5){B} + \capacitor(A)(B){} + \psline[arrows=-o](A)(A|0,1) + \psline[arrows=-o](B)(B|0,-1) + \end{pspicture} + +\end{document} diff --git a/20220329/rtech-20220329.pdf b/20220329/rtech-20220329.pdf new file mode 100644 index 0000000000000000000000000000000000000000..0f569d0fdbe15868b4f8384aa00ef8731eb81957 Binary files /dev/null and b/20220329/rtech-20220329.pdf differ diff --git a/20220329/rtech-20220329.tex b/20220329/rtech-20220329.tex new file mode 100644 index 0000000000000000000000000000000000000000..5f721760fa66d4ef473ec9b3d9d5bf17a6f4b966 --- /dev/null +++ b/20220329/rtech-20220329.tex @@ -0,0 +1,589 @@ +% rtech-20220329.pdf - Lecture Slides on Computer Technology +% Copyright (C) 2012, 2013, 2014, 2021, 2022 Peter Gerwinski +% +% This document is free software: you can redistribute it and/or +% modify it either under the terms of the Creative Commons +% Attribution-ShareAlike 3.0 License, or under the terms of the +% GNU General Public License as published by the Free Software +% Foundation, either version 3 of the License, or (at your option) +% any later version. +% +% This document is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with this document. If not, see <http://www.gnu.org/licenses/>. +% +% You should have received a copy of the Creative Commons +% Attribution-ShareAlike 3.0 Unported License along with this +% document. If not, see <http://creativecommons.org/licenses/>. + +% README: Vom Addierer zum Computer + +\documentclass[10pt,t]{beamer} + +\usepackage{pgslides} +\usepackage{pdftricks} +%\usepackage[obeyfamily=false,mathrm=mathsf,textrm=sffamily]{siunitx} +%\usepackage{eurosym} + +\newrgbcolor{orange}{0.7 0.2 0.0} + +\newcommand{\Cin}{C\raisebox{-0.5ex}{\footnotesize in}} +\newcommand{\Cout}{C\raisebox{-0.5ex}{\footnotesize out}} + +\begin{psinputs} + \usepackage[latin1]{inputenc} + \usepackage[german]{babel} + \usepackage[T1]{fontenc} + \usepackage{helvet} + \renewcommand*\familydefault{\sfdefault} + \usepackage{pstricks,pst-grad,pst-circ-pg} + \newcommand{\invisible}{\tiny\color{white}} + \psset{unit=1cm} + \psset{logicLabelstyle=\invisible} + \newcommand{\logicSymbol}{\small\boldmath\bf\rule{0pt}{0.5cm}} + \psset{logicSymbolstyle=\logicSymbol} + \newcommand{\Cin}{C\raisebox{-0.5ex}{\footnotesize in}} + \newcommand{\Cout}{C\raisebox{-0.5ex}{\footnotesize out}} +\end{psinputs} + +\title{Rechnertechnik} +\author{Prof.\ Dr.\ rer.\ nat.\ Peter Gerwinski} +\date{29.\ März 2022} + +\begin{document} + +\maketitleframe + +\sectionnonumber{\inserttitle} + +\begin{frame} + + \showsectionnonumber + + \begin{itemize} + \item[\textbf{1}] \textbf{Einführung} + \begin{itemize} + \item[1.1] Was ist Rechnertechnik? + \item[1.2] Was ist ein Computer? + \end{itemize} + \item[\textbf{2}] \textbf{Vom Schaltkreis zum Computer} + \begin{itemize} + \item[2.1] Logik-Schaltkreise + \item[2.2] Binärdarstellung von Zahlen + \item[2.3] Vom Logik-Schaltkreis zum Addierer + \color{medgreen} + \item[2.4] Negative Zahlen + \color{red} + \item[2.5] Vom Addierer zum Computer + \item[\dots] + \end{itemize} + \color{gray} + \item[\textbf{3}] \textbf{Architekturmerkmale von Prozessoren} + \item[\textbf{4}] \textbf{Der CPU-Stack} +% \item[\textbf{5}] \textbf{Hardwarenahe Programmierung} +% \item[\textbf{6}] \textbf{Anwender-Software} +% \item[\textbf{7}] \textbf{Bus-Systeme} +% \item[\textbf{8}] \textbf{Pipelining} + \item[\textbf{\dots\hspace{-0.75em}}] +% \item[\textbf{9}] \textbf{Ausblick} + \end{itemize} + +\end{frame} + +\setcounter{section}{1} +\section{Vom Schaltkreis zum Computer} +\setcounter{subsection}{3} +\subsection{Negative Zahlen} + +\begin{frame}[fragile] + + \showsubsection + + Speicher ist begrenzt!\\ + \textarrow\ feste Anzahl von Bits + + \medskip + + 8-Bit-Zahlen ohne Vorzeichen: \lstinline{uint8_t}\\ + \textarrow\ Zahlenwerte von \lstinline{0x00} bis \lstinline{0xff} = 0 bis 255\\ + \pause + \textarrow\ 255 + 1 = 0 + + \pause + \medskip + + 8-Bit-Zahlen mit Vorzeichen: \lstinline{int8_t}\\ + \lstinline{0xff} = 255 ist die "`natürliche"' Schreibweise für $-1$.\\ + \pause + \textarrow\ Zweierkomplement + + \pause + \medskip + + Oberstes Bit = 1: negativ\\ + Oberstes Bit = 0: positiv\\ + \textarrow\ 127 + 1 = $-128$ + +\end{frame} + +\begin{frame}[fragile] + + \showsubsection + + Speicher ist begrenzt!\\ + \textarrow\ feste Anzahl von Bits + + \medskip + + 16-Bit-Zahlen ohne Vorzeichen: + \lstinline{uint16_t}\hfill\lstinline{uint8_t}\\ + \textarrow\ Zahlenwerte von \lstinline{0x0000} bis \lstinline{0xffff} + = 0 bis 65535\hfill 0 bis 255\\ + \textarrow\ 65535 + 1 = 0\hfill 255 + 1 = 0 + + \medskip + + 16-Bit-Zahlen mit Vorzeichen: + \lstinline{int16_t}\hfill\lstinline{int8_t}\\ + \lstinline{0xffff} = 66535 ist die "`natürliche"' Schreibweise für $-1$.\hfill + \lstinline{0xff} = 255 = $-1$\\ + \textarrow\ Zweierkomplement + + \medskip + + Oberstes Bit = 1: negativ\\ + Oberstes Bit = 0: positiv\\ + \textarrow\ 32767 + 1 = $-32768$ + + \bigskip + Literatur: \url{http://xkcd.com/571/} + +\end{frame} + +\begin{frame}[fragile] + + \showsubsection + + Frage: \emph{Für welche Zahl steht der Speicherinhalt\, + \raisebox{2pt}{% + \tabcolsep0.25em + \begin{tabular}{|c|c|}\hline + \rule{0pt}{11pt}a3 & 90 \\\hline + \end{tabular}} + (hexadezimal)?} + + \pause + \smallskip + Antwort: \emph{Das kommt darauf an.} ;--) + + \pause + \medskip + Little-Endian: + + \smallskip + + \begin{tabular}{lrl} + als \lstinline,int8_t,: & $-93$ & (nur erstes Byte)\\ + als \lstinline,uint8_t,: & $163$ & (nur erstes Byte)\\ + als \lstinline,int16_t,: & $-28509$\\ + als \lstinline,uint16_t,: & $37027$\\ + \lstinline,int32_t, oder größer: & $37027$ + & (zusätzliche Bytes mit Nullen aufgefüllt) + \end{tabular} + + \pause + \medskip + Big-Endian: + + \smallskip + + \begin{tabular}{lrl} + als \lstinline,int8_t,: & $-93$ & (nur erstes Byte)\\ + als \lstinline,uint8_t,: & $163$ & (nur erstes Byte)\\ + als \lstinline,int16_t,: & $-23664$\\ + als \lstinline,uint16_t,: & $41872$\\ als \lstinline,int32_t,: & $-1550843904$ & (zusätzliche Bytes\\ + als \lstinline,uint32_t,: & $2744123392$ & mit Nullen aufgefüllt)\\ + als \lstinline,int64_t,: & $-6660823848880963584$\\ + als \lstinline,uint64_t,: & $11785920224828588032$\\ + \end{tabular} + + \vspace*{-1cm} + +\end{frame} + +\begin{frame} + + \showsubsection + + Aufbau einer Schaltung zum Bilden des Zweierkomplements:\\ + {\color{red}Sie sind dran.} + + \medskip + + \textarrow\ Siehe: \file{../20220322/2er-komplement-$*$.png} + +\end{frame} + +\subsection{Vom Addierer zum Computer} + +\begin{frame} + + \showsubsection + + Wir können jetzt addieren und subtrahieren.\\ + Wie bauen wir daraus einen Turing-vollständigen Computer? + \begin{itemize} + \pause + \item + Arithmetisch-logische Einheit (ALU)%\\ +% (Skript: Seite 20) +% \pause + \item + Speicher +% \pause + \item + Takt + \end{itemize} + +\end{frame} + +\iffalse + +\begin{frame} + + \showsubsection + + Zeit ins Spiel bringen: + \begin{itemize} + \item sich 1 Bit merken: Flipflop + \item zeitlicher Ablauf: Taktgeber + \item voranschreiten: Zähler (aus Flipflops) + \end{itemize} + + \pause + \bigskip + + Programmieren: + \begin{itemize} + \item ALU kann verschiedene Operationen durchführen + \item Maschinensprache codiert, welche Operation ausgeführt werden soll + \item Das Laden von Registern ermöglicht auch Sprünge \textarrow\ Schleifen + \end{itemize} + +\end{frame} + +\fi + +\setcounter{subsection}{4} +\subsection{Vom Addierer zum Computer} + +\begin{frame}[fragile] + + \showsubsection + + 1-Bit-Multiplizierer + \visible<3->{= Und-Verknüpfung} + + \medskip + + \begin{tabular}{|c|c||c|}\hline + A & B & Q \\\hline\hline + 0 & 0 & \visible<2->{0} \\\hline + 0 & 1 & \visible<2->{0} \\\hline + 1 & 0 & \visible<2->{0} \\\hline + 1 & 1 & \visible<2->{1} \\\hline + \end{tabular}\quad\pause[3] + \begin{minipage}{2.5cm} + \vspace*{0.5cm} + \begin{pdfpic} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-3,-2)(3,2) + \logic[logicType=and](-0.75,-0.125){and1} + \psline[arrows=o-](-2,0|and12)(and12) + \uput[180](-2,0|and12){A} + \psline[arrows=o-](-2,0|and11)(and11) + \uput[180](-2,0|and11){B} + \psline[arrows=o-](2,0|and1Q)(and1Q) + \uput[0](2,0|and1Q){Q} + \end{pspicture} + \end{pdfpic} + \end{minipage} + +\end{frame} + +\begin{frame} + + \showsubsection + + 1-Bit-Multiplizierer = Und-Verknüpfung + + \smallskip + + n-Bit-Multiplizierer\pause: "`schriftlich"' multiplizieren + + \bigskip + \pause + + Beispiel: $13 \cdot 5$ + + \smallskip + + \begin{tabular}{r} + $1101 \cdot 101$\\[-1.5\smallskipamount] + \rule{2cm}{1pt}\\ + $1101\phantom{00}$\\ + $0\phantom{0}$\\ + $1101$\\[-1.5\smallskipamount] + \rule{2cm}{1pt}\\ + $1000001$ + \end{tabular}% + \begin{picture}(0,0) + \put(-0.95,-0.63){\mbox{\scriptsize 1}} + \put(-1.15,-0.63){\mbox{\scriptsize 1}} + \put(-1.35,-0.63){\mbox{\scriptsize 1}} + \put(-1.55,-0.63){\mbox{\scriptsize 1}} + \end{picture}\pause + \hspace*{2cm}% + \begin{minipage}{5cm} + Multiplizier-Schaltkreis\\ + für zwei 2-Bit-Zahlen:\\[\smallskipamount] + \color{red}Sie sind dran. + \end{minipage} + +\end{frame} + +\begin{frame} + + \showsubsection + + Schaltkreis, der wahlweise eine von mehreren Verknüpfungen + durchführt: + + \smallskip + + \newterm{arithmetisch-logische Einheit\/} -- + \newterm{arithmetic logic unit (ALU)} + + \bigskip + + \begin{center} + \vspace*{-2.5cm} + \includegraphics{alu2.pdf} + \vspace*{-23cm} + \end{center} + + \bigskip + + Siehe z.\,B.: \url{https://en.wikipedia.org/wiki/File:74181aluschematic.png} + +\end{frame} + +\begin{frame}[fragile] + + \begin{visibleenv}<2-> + \showsubsection + + Information speichern + \end{visibleenv} + + \begin{pdfpic} + \newcommand{\invisible}{\tiny\color{white}} + \psset{logicLabelstyle=\invisible} + \newcommand{\logicSymbol}{\small\boldmath\bf\rule{0pt}{0.5cm}} + \psset{logicSymbolstyle=\logicSymbol} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-3,-2)(3,2) + \pnode(-1,1.5){A} + \uput[l](-2.5,0|A){$S$} + \pnode(1,1.5){B} + \ground[connectingdot=false](2,1.5) + \relais(A)(B){} + \pnode(2.5,2.5){A3} + \uput[l](2.0,0|A3){$R$} + \pnode(4.5,2.5){B3} + \ground[connectingdot=false](5.5,2.5) + \relais(A3)(B3){} + \pnode(-0.5,0){C0} + \psline[arrows=-*](C0)(-1.5,0)(-1.5,1.5) + \pnode(0.5,0.3){D0} + \pnode(0.5,-0.3){E0} + \pnode(3,-0.3){C3} + \pnode(4,0){D3} + \pnode(4,-0.6){E3} + \psline[arrows=*-,linewidth=2\pslinewidth](C3)(D3) + \pnode(7,0.7){D3plus} + \uput[180](D3plus){\textbf{+}} + \psline(E0)(C3) + \psline[arrows=->,arrowsize=0.3](D3)(D3plus|D3)(D3plus) + \psline[arrows=*-,linewidth=2\pslinewidth](C0)(D0) + \pnode(-0.5,-1.5){C1} + \pnode(0.5,-1.2){D1} + \pnode(0.5,-1.8){E1} + \uput[r](2.5,0|E1){$Q$} + \pnode(-3.0,-0.5){C1plus} + \uput[180](C1plus){\textbf{+}} + \psline[arrows=->,arrowsize=0.3](C1)(C1plus|C1)(C1plus) + \psline[arrows=*-,linewidth=2\pslinewidth](C1)(D1) + \psline[linestyle=dashed](0,-1.25)(0,1.0) + \psline[linestyle=dashed](3.5,-0.15)(3.5,2.0) + \psline[arrows=o-](-2.5,0|A)(A) + \psline[arrows=o-](2.0,0|A3)(A3) + \psline(B)(2,0|B) + \psline(B3)(5.5|B3) + \psline[arrows=o-](1.5,0|D0)(D0) + \psline[arrows=o-](1.5,0|D1)(D1) + \psline[arrows=o-](2.5,0|E1)(E1) + \psline[arrows=o-](5.0,0|E3)(E3) + \end{pspicture} + \end{pdfpic} + + \pause + + \newterm{Selbsthalteschaltung} + + 1-Bit-\newterm{Speicherzelle} + +\end{frame} + +\begin{frame}[fragile] + + \showsubsection + + Information speichern + + \begin{pdfpic} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-4,-4)(4,4) + \logic[logicType=nand](-0.75,2){nand1} + \logic[logicType=nand](-0.75,-2){nand2} + \psline[arrows=o-](-3,0|nand12)(nand12) + \uput[180](-3,0|nand12){$\overline{\mbox{S}}$} + \psline[arrows=o-](-3,0|nand21)(nand21) + \uput[180](-3,0|nand21){$\overline{\mbox{R}}$} + \psline[arrows=o-](3,0|nand1Q)(nand1Q) + \uput[0](3,0|nand1Q){Q} + \psline[arrows=o-](3,0|nand2Q)(nand2Q) + \uput[0](3,0|nand2Q){$\overline{\mbox{Q}}$} + \psline[arrows=*-](2,0|nand1Q)(2,1.75)(-2,0.75)(-2,0|nand22)(nand22) + \psline[arrows=*-](2,0|nand2Q)(2,0.75)(-2,1.75)(-2,0|nand11)(nand11) + \end{pspicture} + \end{pdfpic} + + \newterm{Bistabile Kippstufe} -- \newterm{Bistabiler Multivibrator} -- \newterm{Flip-Flop} + + 1-Bit-Speicherzelle + +\end{frame} + +\begin{frame}[fragile] + + \showsubsection + + Information speichern + + \vspace*{-0.5cm} + + \begin{pdfpic} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-4,-4)(4,4) + \pnode(0,0.5){A} + \pnode(0,-0.5){B} + \capacitor(A)(B){} + \psline[arrows=-o](A)(A|0,1) + \psline[arrows=-o](B)(B|0,-1) + \end{pspicture} + \end{pdfpic} + + \vspace*{-1.0cm} + + \newterm{Kondensator} + + \only<2->{\newterm{dynamische\/}} 1-Bit-Speicherzelle\\ + \pause + \textarrow\ benötigt \newterm{Refresh}-Schaltung + + \pause[3] + \medskip + Flip-Flop + + \newterm{statische\/} 1-Bit-Speicherzelle + + \begin{pdfpic} + \psset{unit=0.6cm} + \psset{linewidth=0.03} + \begin{pspicture}(-4,-4)(4,4) + \logic[logicType=nand](-0.75,2){nand1} + \logic[logicType=nand](-0.75,-2){nand2} + \psline[arrows=o-](-3,0|nand12)(nand12) + \uput[180](-3,0|nand12){$\overline{\mbox{S}}$} + \psline[arrows=o-](-3,0|nand21)(nand21) + \uput[180](-3,0|nand21){$\overline{\mbox{R}}$} + \psline[arrows=o-](3,0|nand1Q)(nand1Q) + \uput[0](3,0|nand1Q){Q} + \psline[arrows=o-](3,0|nand2Q)(nand2Q) + \uput[0](3,0|nand2Q){$\overline{\mbox{Q}}$} + \psline[arrows=*-](2,0|nand1Q)(2,1.75)(-2,0.75)(-2,0|nand22)(nand22) + \psline[arrows=*-](2,0|nand2Q)(2,0.75)(-2,1.75)(-2,0|nand11)(nand11) + \end{pspicture} + \end{pdfpic} + +\end{frame} + +\begin{frame}[fragile] + + \showsubsection + + Computer + \begin{itemize} + \item Rechenwerk (ALU) + \item Speicher\pause: Register, adressierbarer Hauptspeicher + \pause + \item Takt\pause: Befehle abarbeiten + \pause + \item Peripherie: Kommunikation mit der Außenwelt + \pause + \arrowitem in Maschinensprache programmierbar + \end{itemize} + +\end{frame} + +\sectionnonumber{\inserttitle} + +\begin{frame} + + \showsectionnonumber + + \begin{itemize} + \item[\textbf{1}] \textbf{Einführung} + \item[\textbf{2}] \textbf{Vom Schaltkreis zum Computer} + \begin{itemize} + \item[2.1] Logik-Schaltkreise + \item[2.2] Binärdarstellung von Zahlen + \item[2.3] Vom Logik-Schaltkreis zum Addierer + \item[2.4] Negative Zahlen + \color{orange} + \item[2.5] Vom Addierer zum Computer + \item[\dots] + \end{itemize} + \color{gray} + \item[\textbf{3}] \textbf{Architekturmerkmale von Prozessoren} + \item[\textbf{4}] \textbf{Der CPU-Stack} +% \item[\textbf{5}] \textbf{Hardwarenahe Programmierung} +% \item[\textbf{6}] \textbf{Anwender-Software} +% \item[\textbf{7}] \textbf{Bus-Systeme} +% \item[\textbf{8}] \textbf{Pipelining} + \item[\textbf{\dots\hspace{-0.75em}}] +% \item[\textbf{9}] \textbf{Ausblick} + \end{itemize} + +\end{frame} + +\end{document}