Datenverarbeitung unmittelbaren Operanden (Immediate Operands)

Aus C und Assembler mit Raspberry
Version vom 27. September 2024, 09:27 Uhr von Satyria (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „== Arithmetik (unmittelbar) == Dies bezieht sich auf arithmetische Operationen, die direkt mit sofortigen (Immediates) Werten ausgeführt werden. Beispiele sind Addition, Subtraktion, etc., wobei einer der Operanden ein konstanter Wert ist. Die arithmetischen (unmittelbar) Anweisungen akzeptieren einen 12-Bit-unvorzeichenlosen Sofortwert, der optional um 12 Bit nach links verschoben werden kann. Die arithmetischen (unmittelbar) Anweisungen, die keine Be…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Arithmetik (unmittelbar)

Dies bezieht sich auf arithmetische Operationen, die direkt mit sofortigen (Immediates) Werten ausgeführt werden. Beispiele sind Addition, Subtraktion, etc., wobei einer der Operanden ein konstanter Wert ist.

Die arithmetischen (unmittelbar) Anweisungen akzeptieren einen 12-Bit-unvorzeichenlosen Sofortwert, der optional um 12 Bit nach links verschoben werden kann.

Die arithmetischen (unmittelbar) Anweisungen, die keine Bedingungsflags setzen, können vom aktuellen Stapelzeiger lesen und in ihn schreiben.

Die Anweisungen zum Setzen von Flags können vom Stapelzeiger lesen, aber nicht in ihn schreiben.

Mnemonic Instruction See ADD Add ADD (immediate) ADDS Add and set flags ADDS (immediate) SUB Subtract SUB (immediate) SUBS Subtract and set flags SUBS (immediate) CMP Compare CMP (immediate) CMN Compare negative CMN (immediate

Code Beschreibung Siehe auch
ADD Addieren ADD
ADDS Addieren und Flag setzen ADDS
SUB Subtrahieren SUB
SUBS Subtrahieren und Flags setzen SUBS
CMP Vergleiche CMP
CMN Vergleiche Negativ CMN


Ganzzahl Minimum und Maximum (unmittelbar)

Hierbei handelt es sich um Anweisungen, die den Minimum- oder Maximumwert aus zwei Ganzzahlen bestimmen, wobei einer dieser Operanden ein unmittelbarer Wert ist.

Logisch (unmittelbar)

Logische Operationen wie AND, OR, XOR, etc., bei denen ein Operand ein unmittelbarer Wert ist.

Bewegen (Move, weiter unmittelbarer Wert)

Dies bezieht sich auf Bewegungsoperationen, bei denen große unmittelbare Werte (oft 32 oder 64 Bit) in Register geladen werden.

Bewegen (Move, unmittelbar)

Operationen, die unmittelbare Werte in Register laden, jedoch in diesem Fall kleinere Werte.

PC-relative Adressberechnung

Dies beinhaltet Berechnungen von Adressen relativ zum Program Counter (PC), oft um relative Adressen innerhalb des Codes zu berechnen.

Bitfeldbewegung

Hierbei handelt es sich um Operationen, die Bitfelder innerhalb eines Registers extrahieren oder verschieben.

Bitfeld einfügen und extrahieren

Dies umfasst detaillierte Operationen zum Einfügen oder Extrahieren spezifischer Bitfelder in oder aus einem Register.

Register extrahieren

Dieser Abschnitt beschreibt Operationen, bei denen Teile eines Registers in ein anderes Register extrahiert werden.

Schift (unmittelbar)

Hierbei handelt es sich um Schiftoperationen an Registerwerten, wobei die Schiftgrösse ein unmittelbarer Wert ist.

Vorzeichen-Erweiterung und Null-Erweiterung

Diese Operationen erweitern einen kleineren Integer-Wert auf eine größere Größe, entweder indem das Vorzeichenbit (Vorzeichen-Erweiterung) oder Nullen (Null-Erweiterung) hinzugefügt werden.