09.07.2015 Aufrufe

Assembler und Computergrafik - Eingebettete Systeme - Goethe ...

Assembler und Computergrafik - Eingebettete Systeme - Goethe ...

Assembler und Computergrafik - Eingebettete Systeme - Goethe ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

KAPITEL 2. GRUNDLAGEN 4Abbildung 2.1: Beispiel eines LFSR mit 8-BitExklusiv-Oder-Gatter (EOR, XOR) direkt in Hardware sehr effizient möglich. Aber auch einMicrocontroller-Programm benötigt nur einige Zeilen (<strong>Assembler</strong>-) Code zur Realisierung inSoftware.Das Prinzip des LFSR besteht darin, den Ausgang eines Schieberegisters auf seinen Eingangrückzukoppeln <strong>und</strong> mindestens eine XOR-Operation durchzuführen. Die nebenstehendeAbbildung stellt eine besonders einfache Realisierung mit einem 8-Bit-Schieberegister <strong>und</strong>nur einem XOR-Gatter dar. Bei geeigneter Wahl einer Kombination aus Registerlänge n<strong>und</strong> den Einkopplungsstellen durchläuft das LFSR beim Shiften (bitweises Weiterschieben)aus einem beliebigen Anfangszustand ungleich Null sämtliche 2 n − 1 möglichen Zustände,bis der Startzustand wieder erreicht ist. Durch Abgreifen eines Bits, z. B. Bit 0, nach jedemShift-Schritt oder Verwendung größerer Registeranteile nach mehreren Schritten lassensich Pseudo-Zufallszahlen gewinnen. Komplexere LFSR enthalten mehrere XOR-Gatter, diezwischen einzelnen Registerzellen angeordnet sind <strong>und</strong> das ”umlaufende“ Bit mehrfach mitdem internen Bit-Strom verknüpfen. Auf diese Weise findet eine stärkere Veränderung desRegisterinhalts pro Shift-Schritt statt.Eine Zwischenstufe zwischen den echten <strong>und</strong> Pseudo-Zufallszahlen stellen Zahlenwerte dar,die auf besondere Weise gewonnen werden <strong>und</strong> als scheinbar echte Zufallszahlen bezeichnetwerden können. Eine solche Zahl ist beispielsweise die exakte Uhrzeit zu einem bestimmtenZeitpunkt oder die möglichst genau gemessene Zeitdauer eines Tastendrucks. Wird einescheinbar echte Zufallszahl zur Initialisierung eines LFSR verwendet, so kann man durch dasShiften eine Folge scheinbar echter Zufallszahlen generieren. Dies soll hier aber nicht weiterverfolgt werden.2.2 <strong>Assembler</strong>spracheEine <strong>Assembler</strong>sprache ist eine spezielle Programmiersprache, welche die Maschinenspracheeiner spezifischen Prozessorarchitektur in einer für den Menschen lesbaren Form repräsentiert.Daraus folgt, dass jede Computerarchitektur ihre eigene <strong>Assembler</strong>sprache hat.Ein zugehöriger <strong>Assembler</strong> ist genaugenommen ein Compiler, der den Code eines ”<strong>Assembler</strong>programms“in Maschinensprache, d. h. Binärwörter übersetzt.Programmbefehle in Maschinensprache sind einfache Bitmuster, die aus den Opcodes <strong>und</strong>den zugehörigen Daten gebildet werden. Zur symbolischen Darstellung von Maschinenbefehlenwerden Abkürzungen (so genannte mnemonische Symbole) benutzt, die sich ein Programmiererleichter einprägen kann als eine Funktionsbeschreibung oder gar den binären Opcode einesBefehls.Das <strong>Assembler</strong>programm ist also nur eine für Menschen etwas komfortablere Darstellungdes Maschinenprogramms:Anstatt

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!