Schön, dass Sie da sind!

PlusPedia wird derzeit technisch modernisiert. Wie alles, was bei laufendem Betrieb bearbeitet wird, kann es auch hier zu zeitweisen Ausfällen bestimmter Funktionen kommen. Es sind aber alle Artikel zugänglich, Sie können PlusPedia genauso nutzen wie immer.

Bei PlusPedia sind Sie sicher: – Wir verarbeiten keine personenbezogenen Daten, erlauben umfassend anonyme Mitarbeit und erfüllen die Datenschutz-Grundverordnung (DSGVO) vollumfänglich. Es haftet der Vorsitzende des Trägervereins.

Bitte beachten: Aktuell können sich keine neuen Benutzer registrieren. Wir beheben das Problem so schnell wie möglich.

PlusPedia blüht wieder auf als freundliches deutsches Lexikon.
Wir haben auf die neue Version 1.43.3 aktualisiert.
Wir haben SSL aktiviert.
Hier geht es zu den aktuellen Aktuelle Ereignissen

Hinweis zur Passwortsicherheit:
Bitte nutzen Sie Ihr PlusPedia-Passwort nur bei PlusPedia.
Wenn Sie Ihr PlusPedia-Passwort andernorts nutzen, ändern Sie es bitte DORT bis unsere Modernisierung abgeschlossen ist.
Überall wo es sensibel, sollte man generell immer unterschiedliche Passworte verwenden! Das gilt hier und im gesamten Internet.
Aus Gründen der Sicherheit (PlusPedia hatte bis 24.07.2025 kein SSL | https://)

Bitorientierte Assembler-Befehle

Aus PlusPedia
Zur Navigation springen Zur Suche springen

Bitorientierte Assembler-Befehle sind Operationen der Assembler-Sprache, welche die Bearbeitung einzelner Bits in Bitfeldern ermöglichen.

Details

  • Zu den bitorientierte Befehlen gehören die "Shift-Befehle", welche Bits innerhalb des Bitfelds um eine gewisse Anzahl von Stellen verschieben.
  • Es gibt SHL (shift logical left) und SHR (shift logical right). Beispiel: SHR EBX, 5 verschiebt das Bitfeld im Register EBX um fünf Stellen nach rechts. Die Bits, welche das Bitfeld durch die Verschiebung verlassen, werden verworfen. Die am anderen Ende frei werdenden Stellen werden mit Nullen aufgefüllt.
  • SHLD (double precision shift left) und SHRD (double prcision shift right) verschieben genauso, füllen aber die freiwerdenden Stellen mit Bits aus einem zweiten, anzugebenden Bitfeld auf. Beispiel: SHLD EAX, ECX, 3.
  • Bei SAL (shift arithmetic left) und SAR (shift arithmetic right) werden alle freiwerdenden Stellen mit dem Bit aufgefüllt, das vor der Verschiebung das Vorzeichen (most significant bit) beinhaltete.
  • Die Befehle ROL (rotate left) und ROR (rotate right) verschieben das Bitfeld, und füllen das frei werdende Ende mit den an der anderen Seite ausgetretenen Werten auf. Das Bitfeld wird also bildlich gesehen "im Kreis verschoben".
  • RCR und RCL sind Varianten von ROL und ROR, bei denen das Carry Flag in die Rotation mit einbezogen wird.
  • BT, BTS, BTR und BTC testen den Status eines einzelnen Bits in einem Bitfeld, und setzenabhängig vom Ergebnis das Carry Flag. Alle BTx-Befehle erwarten als ersten Quelloperanden das Bitfeld, und als zweiten Quelloperanden einen Wert für die Stelle des einzelnen Bits innerhalb des Bitfeldes.
  • Die Befehle BSF (bit scan forward) und BSR (bit scan reverse) suchen in einem Bitfeld das erste gesetzte Bit. Wird ein gesetztes Bit gefunden, wird dessen Position in den Zieloperanden eingetragen. [1] [2]

Links und Quellen

Siehe auch

Weblinks

Bilder / Fotos

Videos

Quellen

Literatur

  • Trutz Eyke Podschun: Das Assembler-Buch - Grundlagen, Einführung und Hochsprachnoptimierung, Addison-Wesley Verlag, 2002, Seite 74 bis 86

Naviblock

Einzelnachweise

  1. Joachim Rohde: Asembler Ge-Packt, Redline GmbH, Heidelberg, 2. Aufl., 2007, S. 183 ff.
  2. Trutz Eyke Podschun: Das Assembler-Buch - Grundlagen, Einführung und Hochsprachnoptimierung, Addison-Wesley Verlag, 2002, Seite 74 bis 86