Stand: 20. Dezember 2021

Inhaltsverzeichnis

über dieses Dokument
was es hierin gibt
wo man die neuste Version bekommt
wie man den Verfasser kontaktiert
welche gesetzlichen Einschränkungen es gibt
Lizenzlosigkeit
Verfasserschutz
Vorbehalt für zusätzliche Einschränkungen für zukünftige Versionen

allgemeine Informationen über Maschinensprachen
was es ist
primäre Quelle von einer spezifischen Maschinensprache

allgemeine Informationen über den Aufbau eines Maschinenbefehls
Aus- und Eingabe von der Befehlsverarbeitung
Teile eines Maschinenbefehls
Befehlsnummer
Zweck
Anzahl
Bezeichnung
Größe
Befehlszusatz
Zweck
Anzahl
Bezeichnung
Größe
um den Befehl mehrmals auszuführen
Beschreibung
Auswirkungen
Verarbeitungsdauer
Verfügbarkeit
Wert
um den Befehl mehrmals auszuführen, solange gleich
Beschreibung
Wert
um den Befehl mehrmals auszuführen, solange ungleich
Beschreibung
Wert
zum Überschreiben vom Segmentregister für die Segment-Auswahl
Beschreibung
zum Überschreiben von der Standardgröße von Adressen von Speicherstellen im Arbeitsspeicher
Beschreibung
Auswirkungen
in der Betriebsart "64 Bit mode"
in der Betriebsart "compatibility mode"
in der Betriebsart "protected mode"
in der Betriebsart "real-address mode"
Verarbeitungsdauer
Verfügbarkeit
Wert
zum Überschreiben von der Standardgröße von Werten von Parametern
Beschreibung
Auswirkungen
in der Betriebsart "64 Bit mode"
in der Betriebsart "compatibility mode"
in der Betriebsart "protected mode"
in der Betriebsart "real-address mode"
Verarbeitungsdauer
Verfügbarkeit
Wert
Flagge
Zweck
Anzahl
Größe
Quelle
Zweck
Anzahl
Arten
Größe
Ziel
Zweck
Anzahl
Arten
Größe
Parameter
direkte Daten
Beschreibung
Bezeichnung
Flagge
Beschreibung
Bezeichnung
Register
Beschreibung
Speicherstelle im Arbeitsspeicher
Beschreibung
Berechnung vom Offset vom Segmentanfang
direkt angegebener Versatz
besondere Eignung
Bezeichnung
Speicherort
indirekt angegebener Versatz
besondere Eignung
Bezeichnung
Speicherort
Index
besondere Eignung
Bezeichnung
Speicherort
Multiplikator
besondere Eignung
Bezeichnung
Schlüssel
Speicherort

die Details vom Aufbau eines Maschinenbefehls
Übersicht
1. Parameter
Beschreibung
der Wert ist im Arbeitsspeicher gespeichert
Beschreibung
bei einem "2 Byte"-großen Offset vom Segmentanfang
Beschreibung
"direkt angegebener Versatz" angegeben
"direkt angegebener Versatz" angegeben und "indirekt angegebener Versatz" durch 1 Register angegeben
"direkt angegebener Versatz" angegeben und "indirekt angegebener Versatz" durch eine Addition von 2 Registern angegeben
"indirekt angegebener Versatz" durch 1 Register angegeben
"indirekt angegebener Versatz" durch eine Addition von 2 Registern angegeben
bei einem "4 Byte"-großen Offset vom Segmentanfang
Beschreibung
alle Komponenten angegeben
"direkt angegebener Versatz" angegeben
"direkt angegebener Versatz" und "indirekt angegebener Versatz" angegeben
"direkt angegebener Versatz", Index und Multiplikator angegeben
"indirekt angegebener Versatz" angegeben
"indirekt angegebener Versatz", Index und Multiplikator angegeben
der Wert ist in einem Register gespeichert
Beschreibung
bei einem "1 Byte"-großen Parameter
bei einem "2 Byte"-großen Parameter
bei einem "4 Byte"-großen Parameter
Befehlsnummer oder Registernummer vom 2. Parameter
Beschreibung
bei einem "1 Byte"-großen Parameter
bei einem "2 Byte"-großen Parameter
bei einem "4 Byte"-großen Parameter
Adressenberechnungsangaben

allgemeine Informationen über die Maschinenbefehle
Datentransfer-Befehle
Beschreibung
Arten
kopieren
Beschreibung
Übersicht
Befehle mit Bedingung
Befehle ohne Bedingung
Befehle mit Bedingung
move if above (cmova)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if above or equal (cmovae)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if below (cmovb)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if below or equal (cmovbe)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if carry flag (cmovc)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if equal (cmove)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if greater (cmovg)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if greater or equal (cmovge)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if less (cmovl)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if less or equal (cmovle)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if not carry flag (cmovnc)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if not equal (cmovne)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if not overflow flag (cmovno)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if not parity flag (cmovnp)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if not sign flag (cmovns)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if not zero flag (cmovnz)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if overflow flag (cmovo)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if parity flag (cmovp)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if sign flag (cmovs)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move if zero flag (cmovz)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Befehle ohne Bedingung
bit test (bt)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
bit test and complement (btc)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
bit test and reset (btr)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
bit test and set (bts)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
call (call)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
clear carry flag (clc)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
clear direction flag (cld)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
clear interrupt flag (cli)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
compare packed data for equal (pcmpeq)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
compare packed signed integers for greater than (pcmpgt)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
convert byte to word (cbw)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
convert word to doubleword (cwd)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump (jmp)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
load string (lods)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move (mov)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move aligned double quadword (movdqa)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move data after swapping bytes (movbe)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move data from string to string (movs)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move doubleword (movd)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move quadword (movq)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move unaligned double quadword (movdqu)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move with sign-extention (movsx)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move with zero-extention (movzx)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
pack with unsigned saturation (packuswb)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
pop (pop)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
pop stack into (extended) flags (popf(d))
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
push (push)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
push (extended) flags onto the stack (pushf(d))
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
read time-stamp counter (rdtsc)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
restore x87-FPU-, MMX-, MXCSR- and XMM state (fxrstor)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
return (ret)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
save x87-FPU-, MMX-, MXCSR- and XMM state (fxsave)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if above (seta)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if above or equal (setae)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if below (setb)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if below or equal (setae)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if carry flag (setc)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if equal (sete)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if greater (setg)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if greater or equal (setge)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if less (setl)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if less or equal (setle)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if not carry flag (setnc)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if not equal (setne)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if not overflow flag (setno)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if not parity flag (setnp)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if not sign flag (setns)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if not zero flag (setnz)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if overflow flag (seto)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if parity flag (setp)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if sign flag (sets)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set byte if zero flag (setz)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set carry flag (stc)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set direction flag (std)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
set interrupt flag (sti)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
shuffle packed doublewords (pshufd)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
store string (stos)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
rotieren
Beschreibung
Rotationsrichtung
nach links
vorher
nachher
nach rechts
vorher
nachher
Anzahl der Rotationsvorgänge
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
rotate left (rol)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
rotate right (ror)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
schieben
Beschreibung
Schieberichtung
nach links
vorher
nachher
nach rechts
vorher
nachher
einzuschiebender Wert
Anzahl der Schiebevorgänge
mathematische Auswirkungen
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
shift arithmetic right (sar)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
shift left double (shld)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
shift logical left (shl)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
shift logical right (shr)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
shift right double (shrd)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
tauschen
Beschreibung
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
byte swap (bswap)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
exchange (xchg)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
logische Befehle
Beschreibung
Arten
exklusiv oder
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
exclusive or (xor)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
nicht
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
bit test and complement (btc)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
complement carry flag (cmc)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
not (not)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
packed logical and not (pandn)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
oder
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
or (or)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
und
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
and (and)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
packed and (pand)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
packed logical and not (pandn)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
test (test)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
mathematische Befehle
Beschreibung
Arten
Addition (Plus rechnen)
Übersicht
Befehle mit Bedingung
Befehle ohne Bedingung
Befehle mit Bedingung
jump if above (ja)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if above or equal (jae)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if below (jb)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if below or equal (jbe)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if carry flag (jc)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if equal (je)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if greater (jg)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if greater or equal (jge)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if less (jl)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if less or equal (jle)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not carry flag (jnc)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not counter (jcxz)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not equal (jne)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not extended counter (jecxz)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not overflow flag (jno)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not parity flag (jnp)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not sign flag (jns)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not zero flag (jnz)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if overflow flag (jo)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if parity flag (jp)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if sign flag (js)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if zero flag (jz)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Befehle ohne Bedingung
add (add)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
add packed integers (padd)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
add with carry (adc)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
call (call)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
compare string operands (cmps)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
increment by 1 (inc)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump (jmp)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
load string (lods)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
move data from string to string (movs)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
return (ret)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
scan string (scas)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
store string (stos)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Division (teilen)
Beschreibung
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
shift arithmetic right (sar)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
shift logical right (shr)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
signed division (idiv)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
unsigned division (div)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
mehrere Rechenarten
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
load effective address (lea)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Multiplikation (Mal rechnen)
Beschreibung
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
integer multiplication (imul)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
negate (neg)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
shift logical left (shl)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
unsigned multiplication (mul)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Subtraktion (Minus rechnen)
Beschreibung
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
compare (cmp)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
compare string operands (cmps)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
decrement by 1 (dec)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
negate (neg)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
scan string (scas)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
subtract (sub)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
subtract packed integers (psub)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
subtract with borrow (sbb)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
sonstige Befehle
Beschreibung
Arten
keine Operation
Beschreibung
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
no operation (nop)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Prozessor-spezifische Informationen auslesen
Beschreibung
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
central processing unit identification (cpuid)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Verarbeitungsunterbrechung
Beschreibung
Übersicht
Befehle mit Bedingung
Befehle ohne Bedingung
Befehle mit Bedingung
call to interrupt procedure if overflow flag (into)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Befehle ohne Bedingung
call to interrupt procedure (int)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
call to interrupt procedure 3 (int3)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Wertigkeit vom Bit mit dem Wert "1" ermitteln
Beschreibung
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
bit scan forward (bsf)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
bit scan reverse (bsr)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Sprung-Befehle
Beschreibung
Überschneidungen bei Gruppenzuordnungen
Arten
zu einer absoluten Adresse
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
call (call)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump (jmp)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
return (ret)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
zu einer relativen Adresse
Übersicht
Befehle mit Bedingung
Befehle ohne Bedingung
Befehle mit Bedingung
jump if above (ja)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if above or equal (jae)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if below (jb)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if below or equal (jbe)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if carry flag (jc)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if equal (je)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if greater (jg)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if greater or equal (jge)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if less (jl)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if less or equal (jle)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not carry flag (jnc)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not counter (jcxz)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not equal (jne)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not extended counter (jecxz)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not overflow flag (jno)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not parity flag (jnp)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not sign flag (jns)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if not zero flag (jnz)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if overflow flag (jo)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if parity flag (jp)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if sign flag (js)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump if zero flag (jz)
Ausführungsunterstützung
Bedingung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
Befehle ohne Bedingung
call (call)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung
jump (jmp)
Ausführungsunterstützung
Besonderheiten
Details
Name
weitere Änderungen durch die Befehlsausführung

die Details von den Maschinenbefehlen
Datentransfer-Befehle
Arten
kopieren
Übersicht
Befehle mit Bedingung
Befehle ohne Bedingung
Befehle mit Bedingung
wenn: Anfangswert < Abzug dann: Register #1 → Register #2
wenn: Anfangswert < Abzug dann: Speicherstelle im Arbeitsspeicher → Register
wenn: Anfangswert <= Abzug dann: Register #1 → Register #2
wenn: Anfangswert <= Abzug dann: Speicherstelle im Arbeitsspeicher → Register
wenn: Anfangswert == Abzug dann: Register #1 → Register #2
wenn: Anfangswert == Abzug dann: Speicherstelle im Arbeitsspeicher → Register
wenn: Anfangswert != Abzug dann: Register #1 → Register #2
wenn: Anfangswert != Abzug dann: Speicherstelle im Arbeitsspeicher → Register
wenn: Anfangswert >= Abzug dann: Register #1 → Register #2
wenn: Anfangswert >= Abzug dann: Speicherstelle im Arbeitsspeicher → Register
wenn: Anfangswert > Abzug dann: Register #1 → Register #2
wenn: Anfangswert > Abzug dann: Speicherstelle im Arbeitsspeicher → Register
wenn: carry flag (cf) == 0 dann: Register #1 → Register #2
wenn: carry flag (cf) == 0 dann: Speicherstelle im Arbeitsspeicher → Register
wenn: carry flag (cf) == 1 dann: Register #1 → Register #2
wenn: carry flag (cf) == 1 dann: Speicherstelle im Arbeitsspeicher → Register
wenn: overflow flag (of) == 0 dann: Register #1 → Register #2
wenn: overflow flag (of) == 0 dann: Speicherstelle im Arbeitsspeicher → Register
wenn: overflow flag (of) == 1 dann: Register #1 → Register #2
wenn: overflow flag (of) == 1 dann: Speicherstelle im Arbeitsspeicher → Register
wenn: parity flag (pf) == 0 dann: Register #1 → Register #2
wenn: parity flag (pf) == 0 dann: Speicherstelle im Arbeitsspeicher → Register
wenn: parity flag (pf) == 1 dann: Register #1 → Register #2
wenn: parity flag (pf) == 1 dann: Speicherstelle im Arbeitsspeicher → Register
wenn: sign flag (sf) == 0 dann: Register #1 → Register #2
wenn: sign flag (sf) == 0 dann: Speicherstelle im Arbeitsspeicher → Register
wenn: sign flag (sf) == 1 dann: Register #1 → Register #2
wenn: sign flag (sf) == 1 dann: Speicherstelle im Arbeitsspeicher → Register
wenn: zero flag (zf) == 0 dann: Register #1 → Register #2
wenn: zero flag (zf) == 0 dann: Speicherstelle im Arbeitsspeicher → Register
wenn: zero flag (zf) == 1 dann: Register #1 → Register #2
wenn: zero flag (zf) == 1 dann: Speicherstelle im Arbeitsspeicher → Register
Befehle ohne Bedingung
Anfangswert < Abzug → Register
Anfangswert < Abzug → Speicherstelle im Arbeitsspeicher
Anfangswert <= Abzug → Register
Anfangswert <= Abzug → Speicherstelle im Arbeitsspeicher
Anfangswert == Abzug → Register
Anfangswert == Abzug → Speicherstelle im Arbeitsspeicher
Anfangswert != Abzug → Register
Anfangswert != Abzug → Speicherstelle im Arbeitsspeicher
Anfangswert >= Abzug → Register
Anfangswert >= Abzug → Speicherstelle im Arbeitsspeicher
Anfangswert > Abzug → Register
Anfangswert > Abzug → Speicherstelle im Arbeitsspeicher
Befehlssatzerweiterungs-Allzweckregister → Register
Befehlssatzerweiterungs-Allzweckregister → Speicherstelle im Arbeitsspeicher
Befehlssatzerweiterungs-Allzweckregister #1 → Befehlssatzerweiterungs-Allzweckregister #2
Befehlssatzerweiterungs-Allzweckregister #1, Befehlssatzerweiterungs-Allzweckregister #2 → Befehlssatzerweiterungs-Allzweckregister #1
Befehlssatzerweiterungs-Allzweckregister #1[2560] == Befehlssatzerweiterungs-Allzweckregister #2[2560] → Befehlssatzerweiterungs-Allzweckregister #1[2560]; Befehlssatzerweiterungs-Allzweckregister #1[2561] == Befehlssatzerweiterungs-Allzweckregister #2[2561] → Befehlssatzerweiterungs-Allzweckregister #1[2561]; Befehlssatzerweiterungs-Allzweckregister #1[2562] == Befehlssatzerweiterungs-Allzweckregister #2[2562] → Befehlssatzerweiterungs-Allzweckregister #1[2562]; Befehlssatzerweiterungs-Allzweckregister #1[2563] == Befehlssatzerweiterungs-Allzweckregister #2[2563] → Befehlssatzerweiterungs-Allzweckregister #1[2563]; Befehlssatzerweiterungs-Allzweckregister #1[2564] == Befehlssatzerweiterungs-Allzweckregister #2[2564] → Befehlssatzerweiterungs-Allzweckregister #1[2564]; Befehlssatzerweiterungs-Allzweckregister #1[2565] == Befehlssatzerweiterungs-Allzweckregister #2[2565] → Befehlssatzerweiterungs-Allzweckregister #1[2565]; Befehlssatzerweiterungs-Allzweckregister #1[2566] == Befehlssatzerweiterungs-Allzweckregister #2[2566] → Befehlssatzerweiterungs-Allzweckregister #1[2566]; Befehlssatzerweiterungs-Allzweckregister #1[2567] == Befehlssatzerweiterungs-Allzweckregister #2[2567] → Befehlssatzerweiterungs-Allzweckregister #1[2567]; Befehlssatzerweiterungs-Allzweckregister #1[2568] == Befehlssatzerweiterungs-Allzweckregister #2[2568] → Befehlssatzerweiterungs-Allzweckregister #1[2568]; Befehlssatzerweiterungs-Allzweckregister #1[2569] == Befehlssatzerweiterungs-Allzweckregister #2[2569] → Befehlssatzerweiterungs-Allzweckregister #1[2569]; Befehlssatzerweiterungs-Allzweckregister #1[25610] == Befehlssatzerweiterungs-Allzweckregister #2[25610] → Befehlssatzerweiterungs-Allzweckregister #1[25610]; Befehlssatzerweiterungs-Allzweckregister #1[25611] == Befehlssatzerweiterungs-Allzweckregister #2[25611] → Befehlssatzerweiterungs-Allzweckregister #1[25611]; Befehlssatzerweiterungs-Allzweckregister #1[25612] == Befehlssatzerweiterungs-Allzweckregister #2[25612] → Befehlssatzerweiterungs-Allzweckregister #1[25612]; Befehlssatzerweiterungs-Allzweckregister #1[25613] == Befehlssatzerweiterungs-Allzweckregister #2[25613] → Befehlssatzerweiterungs-Allzweckregister #1[25613]; Befehlssatzerweiterungs-Allzweckregister #1[25614] == Befehlssatzerweiterungs-Allzweckregister #2[25614] → Befehlssatzerweiterungs-Allzweckregister #1[25614]; Befehlssatzerweiterungs-Allzweckregister #1[25615] == Befehlssatzerweiterungs-Allzweckregister #2[25615] → Befehlssatzerweiterungs-Allzweckregister #1[25615]
Befehlssatzerweiterungs-Allzweckregister #1[2560] > Befehlssatzerweiterungs-Allzweckregister #2[2560] → Befehlssatzerweiterungs-Allzweckregister #1[2560]; Befehlssatzerweiterungs-Allzweckregister #1[2561] > Befehlssatzerweiterungs-Allzweckregister #2[2561] → Befehlssatzerweiterungs-Allzweckregister #1[2561]; Befehlssatzerweiterungs-Allzweckregister #1[2562] > Befehlssatzerweiterungs-Allzweckregister #2[2562] → Befehlssatzerweiterungs-Allzweckregister #1[2562]; Befehlssatzerweiterungs-Allzweckregister #1[2563] > Befehlssatzerweiterungs-Allzweckregister #2[2563] → Befehlssatzerweiterungs-Allzweckregister #1[2563]; Befehlssatzerweiterungs-Allzweckregister #1[2564] > Befehlssatzerweiterungs-Allzweckregister #2[2564] → Befehlssatzerweiterungs-Allzweckregister #1[2564]; Befehlssatzerweiterungs-Allzweckregister #1[2565] > Befehlssatzerweiterungs-Allzweckregister #2[2565] → Befehlssatzerweiterungs-Allzweckregister #1[2565]; Befehlssatzerweiterungs-Allzweckregister #1[2566] > Befehlssatzerweiterungs-Allzweckregister #2[2566] → Befehlssatzerweiterungs-Allzweckregister #1[2566]; Befehlssatzerweiterungs-Allzweckregister #1[2567] > Befehlssatzerweiterungs-Allzweckregister #2[2567] → Befehlssatzerweiterungs-Allzweckregister #1[2567]; Befehlssatzerweiterungs-Allzweckregister #1[2568] > Befehlssatzerweiterungs-Allzweckregister #2[2568] → Befehlssatzerweiterungs-Allzweckregister #1[2568]; Befehlssatzerweiterungs-Allzweckregister #1[2569] > Befehlssatzerweiterungs-Allzweckregister #2[2569] → Befehlssatzerweiterungs-Allzweckregister #1[2569]; Befehlssatzerweiterungs-Allzweckregister #1[25610] > Befehlssatzerweiterungs-Allzweckregister #2[25610] → Befehlssatzerweiterungs-Allzweckregister #1[25610]; Befehlssatzerweiterungs-Allzweckregister #1[25611] > Befehlssatzerweiterungs-Allzweckregister #2[25611] → Befehlssatzerweiterungs-Allzweckregister #1[25611]; Befehlssatzerweiterungs-Allzweckregister #1[25612] > Befehlssatzerweiterungs-Allzweckregister #2[25612] → Befehlssatzerweiterungs-Allzweckregister #1[25612]; Befehlssatzerweiterungs-Allzweckregister #1[25613] > Befehlssatzerweiterungs-Allzweckregister #2[25613] → Befehlssatzerweiterungs-Allzweckregister #1[25613]; Befehlssatzerweiterungs-Allzweckregister #1[25614] > Befehlssatzerweiterungs-Allzweckregister #2[25614] → Befehlssatzerweiterungs-Allzweckregister #1[25614]; Befehlssatzerweiterungs-Allzweckregister #1[25615] > Befehlssatzerweiterungs-Allzweckregister #2[25615] → Befehlssatzerweiterungs-Allzweckregister #1[25615]
Befehlssatzerweiterungs-Allzweckregister #1[42949672960] == Befehlssatzerweiterungs-Allzweckregister #2[42949672960] → Befehlssatzerweiterungs-Allzweckregister #1[42949672960]; Befehlssatzerweiterungs-Allzweckregister #1[42949672961] == Befehlssatzerweiterungs-Allzweckregister #2[42949672961] → Befehlssatzerweiterungs-Allzweckregister #1[42949672961]; Befehlssatzerweiterungs-Allzweckregister #1[42949672962] == Befehlssatzerweiterungs-Allzweckregister #2[42949672962] → Befehlssatzerweiterungs-Allzweckregister #1[42949672962]; Befehlssatzerweiterungs-Allzweckregister #1[42949672963] == Befehlssatzerweiterungs-Allzweckregister #2[42949672963] → Befehlssatzerweiterungs-Allzweckregister #1[42949672963]
Befehlssatzerweiterungs-Allzweckregister #1[42949672960] > Befehlssatzerweiterungs-Allzweckregister #2[42949672960] → Befehlssatzerweiterungs-Allzweckregister #1[42949672960]; Befehlssatzerweiterungs-Allzweckregister #1[42949672961] > Befehlssatzerweiterungs-Allzweckregister #2[42949672961] → Befehlssatzerweiterungs-Allzweckregister #1[42949672961]; Befehlssatzerweiterungs-Allzweckregister #1[42949672962] > Befehlssatzerweiterungs-Allzweckregister #2[42949672962] → Befehlssatzerweiterungs-Allzweckregister #1[42949672962]; Befehlssatzerweiterungs-Allzweckregister #1[42949672963] > Befehlssatzerweiterungs-Allzweckregister #2[42949672963] → Befehlssatzerweiterungs-Allzweckregister #1[42949672963]
Befehlssatzerweiterungs-Allzweckregister #1[4294967296direkte Daten[40]] → Befehlssatzerweiterungs-Allzweckregister #2[42949672960]; Befehlssatzerweiterungs-Allzweckregister #1[4294967296direkte Daten[41]] → Befehlssatzerweiterungs-Allzweckregister #2[42949672961]; Befehlssatzerweiterungs-Allzweckregister #1[4294967296direkte Daten[42]] → Befehlssatzerweiterungs-Allzweckregister #2[42949672962]; Befehlssatzerweiterungs-Allzweckregister #1[4294967296direkte Daten[43]] → Befehlssatzerweiterungs-Allzweckregister #2[42949672963]
Befehlssatzerweiterungs-Allzweckregister #1[655360] == Befehlssatzerweiterungs-Allzweckregister #2[655360] → Befehlssatzerweiterungs-Allzweckregister #1[655360]; Befehlssatzerweiterungs-Allzweckregister #1[655361] == Befehlssatzerweiterungs-Allzweckregister #2[655361] → Befehlssatzerweiterungs-Allzweckregister #1[655361]; Befehlssatzerweiterungs-Allzweckregister #1[655362] == Befehlssatzerweiterungs-Allzweckregister #2[655362] → Befehlssatzerweiterungs-Allzweckregister #1[655362]; Befehlssatzerweiterungs-Allzweckregister #1[655363] == Befehlssatzerweiterungs-Allzweckregister #2[655363] → Befehlssatzerweiterungs-Allzweckregister #1[655363]; Befehlssatzerweiterungs-Allzweckregister #1[655364] == Befehlssatzerweiterungs-Allzweckregister #2[655364] → Befehlssatzerweiterungs-Allzweckregister #1[655364]; Befehlssatzerweiterungs-Allzweckregister #1[655365] == Befehlssatzerweiterungs-Allzweckregister #2[655365] → Befehlssatzerweiterungs-Allzweckregister #1[655365]; Befehlssatzerweiterungs-Allzweckregister #1[655366] == Befehlssatzerweiterungs-Allzweckregister #2[655366] → Befehlssatzerweiterungs-Allzweckregister #1[655366]; Befehlssatzerweiterungs-Allzweckregister #1[655367] == Befehlssatzerweiterungs-Allzweckregister #2[655367] → Befehlssatzerweiterungs-Allzweckregister #1[655367]
Befehlssatzerweiterungs-Allzweckregister #1[655360] > Befehlssatzerweiterungs-Allzweckregister #2[655360] → Befehlssatzerweiterungs-Allzweckregister #1[655360]; Befehlssatzerweiterungs-Allzweckregister #1[655361] > Befehlssatzerweiterungs-Allzweckregister #2[655361] → Befehlssatzerweiterungs-Allzweckregister #1[655361]; Befehlssatzerweiterungs-Allzweckregister #1[655362] > Befehlssatzerweiterungs-Allzweckregister #2[655362] → Befehlssatzerweiterungs-Allzweckregister #1[655362]; Befehlssatzerweiterungs-Allzweckregister #1[655363] > Befehlssatzerweiterungs-Allzweckregister #2[655363] → Befehlssatzerweiterungs-Allzweckregister #1[655363]; Befehlssatzerweiterungs-Allzweckregister #1[655364] > Befehlssatzerweiterungs-Allzweckregister #2[655364] → Befehlssatzerweiterungs-Allzweckregister #1[655364]; Befehlssatzerweiterungs-Allzweckregister #1[655365] > Befehlssatzerweiterungs-Allzweckregister #2[655365] → Befehlssatzerweiterungs-Allzweckregister #1[655365]; Befehlssatzerweiterungs-Allzweckregister #1[655366] > Befehlssatzerweiterungs-Allzweckregister #2[655366] → Befehlssatzerweiterungs-Allzweckregister #1[655366]; Befehlssatzerweiterungs-Allzweckregister #1[655367] > Befehlssatzerweiterungs-Allzweckregister #2[655367] → Befehlssatzerweiterungs-Allzweckregister #1[655367]
Befehlssatzerweiterungs-Allzweckregister, Befehlssatzerweiterungs-Hilfsregister → Speicherstelle im Arbeitsspeicher
Befehlssatzerweiterungs-Allzweckregister, Speicherstelle im Arbeitsspeicher → Befehlssatzerweiterungs-Allzweckregister
Befehlssatzerweiterungs-Allzweckregister[2560] == Speicherstelle im Arbeitsspeicher[2560] → Befehlssatzerweiterungs-Allzweckregister[2560]; Befehlssatzerweiterungs-Allzweckregister[2561] == Speicherstelle im Arbeitsspeicher[2561] → Befehlssatzerweiterungs-Allzweckregister[2561]; Befehlssatzerweiterungs-Allzweckregister[2562] == Speicherstelle im Arbeitsspeicher[2562] → Befehlssatzerweiterungs-Allzweckregister[2562]; Befehlssatzerweiterungs-Allzweckregister[2563] == Speicherstelle im Arbeitsspeicher[2563] → Befehlssatzerweiterungs-Allzweckregister[2563]; Befehlssatzerweiterungs-Allzweckregister[2564] == Speicherstelle im Arbeitsspeicher[2564] → Befehlssatzerweiterungs-Allzweckregister[2564]; Befehlssatzerweiterungs-Allzweckregister[2565] == Speicherstelle im Arbeitsspeicher[2565] → Befehlssatzerweiterungs-Allzweckregister[2565]; Befehlssatzerweiterungs-Allzweckregister[2566] == Speicherstelle im Arbeitsspeicher[2566] → Befehlssatzerweiterungs-Allzweckregister[2566]; Befehlssatzerweiterungs-Allzweckregister[2567] == Speicherstelle im Arbeitsspeicher[2567] → Befehlssatzerweiterungs-Allzweckregister[2567]; Befehlssatzerweiterungs-Allzweckregister[2568] == Speicherstelle im Arbeitsspeicher[2568] → Befehlssatzerweiterungs-Allzweckregister[2568]; Befehlssatzerweiterungs-Allzweckregister[2569] == Speicherstelle im Arbeitsspeicher[2569] → Befehlssatzerweiterungs-Allzweckregister[2569]; Befehlssatzerweiterungs-Allzweckregister[25610] == Speicherstelle im Arbeitsspeicher[25610] → Befehlssatzerweiterungs-Allzweckregister[25610]; Befehlssatzerweiterungs-Allzweckregister[25611] == Speicherstelle im Arbeitsspeicher[25611] → Befehlssatzerweiterungs-Allzweckregister[25611]; Befehlssatzerweiterungs-Allzweckregister[25612] == Speicherstelle im Arbeitsspeicher[25612] → Befehlssatzerweiterungs-Allzweckregister[25612]; Befehlssatzerweiterungs-Allzweckregister[25613] == Speicherstelle im Arbeitsspeicher[25613] → Befehlssatzerweiterungs-Allzweckregister[25613]; Befehlssatzerweiterungs-Allzweckregister[25614] == Speicherstelle im Arbeitsspeicher[25614] → Befehlssatzerweiterungs-Allzweckregister[25614]; Befehlssatzerweiterungs-Allzweckregister[25615] == Speicherstelle im Arbeitsspeicher[25615] → Befehlssatzerweiterungs-Allzweckregister[25615]
Befehlssatzerweiterungs-Allzweckregister[2560] > Speicherstelle im Arbeitsspeicher[2560] → Befehlssatzerweiterungs-Allzweckregister[2560]; Befehlssatzerweiterungs-Allzweckregister[2561] > Speicherstelle im Arbeitsspeicher[2561] → Befehlssatzerweiterungs-Allzweckregister[2561]; Befehlssatzerweiterungs-Allzweckregister[2562] > Speicherstelle im Arbeitsspeicher[2562] → Befehlssatzerweiterungs-Allzweckregister[2562]; Befehlssatzerweiterungs-Allzweckregister[2563] > Speicherstelle im Arbeitsspeicher[2563] → Befehlssatzerweiterungs-Allzweckregister[2563]; Befehlssatzerweiterungs-Allzweckregister[2564] > Speicherstelle im Arbeitsspeicher[2564] → Befehlssatzerweiterungs-Allzweckregister[2564]; Befehlssatzerweiterungs-Allzweckregister[2565] > Speicherstelle im Arbeitsspeicher[2565] → Befehlssatzerweiterungs-Allzweckregister[2565]; Befehlssatzerweiterungs-Allzweckregister[2566] > Speicherstelle im Arbeitsspeicher[2566] → Befehlssatzerweiterungs-Allzweckregister[2566]; Befehlssatzerweiterungs-Allzweckregister[2567] > Speicherstelle im Arbeitsspeicher[2567] → Befehlssatzerweiterungs-Allzweckregister[2567]; Befehlssatzerweiterungs-Allzweckregister[2568] > Speicherstelle im Arbeitsspeicher[2568] → Befehlssatzerweiterungs-Allzweckregister[2568]; Befehlssatzerweiterungs-Allzweckregister[2569] > Speicherstelle im Arbeitsspeicher[2569] → Befehlssatzerweiterungs-Allzweckregister[2569]; Befehlssatzerweiterungs-Allzweckregister[25610] > Speicherstelle im Arbeitsspeicher[25610] → Befehlssatzerweiterungs-Allzweckregister[25610]; Befehlssatzerweiterungs-Allzweckregister[25611] > Speicherstelle im Arbeitsspeicher[25611] → Befehlssatzerweiterungs-Allzweckregister[25611]; Befehlssatzerweiterungs-Allzweckregister[25612] > Speicherstelle im Arbeitsspeicher[25612] → Befehlssatzerweiterungs-Allzweckregister[25612]; Befehlssatzerweiterungs-Allzweckregister[25613] > Speicherstelle im Arbeitsspeicher[25613] → Befehlssatzerweiterungs-Allzweckregister[25613]; Befehlssatzerweiterungs-Allzweckregister[25614] > Speicherstelle im Arbeitsspeicher[25614] → Befehlssatzerweiterungs-Allzweckregister[25614]; Befehlssatzerweiterungs-Allzweckregister[25615] > Speicherstelle im Arbeitsspeicher[25615] → Befehlssatzerweiterungs-Allzweckregister[25615]
Befehlssatzerweiterungs-Allzweckregister[42949672960] == Speicherstelle im Arbeitsspeicher[42949672960] → Befehlssatzerweiterungs-Allzweckregister[42949672960]; Befehlssatzerweiterungs-Allzweckregister[42949672961] == Speicherstelle im Arbeitsspeicher[42949672961] → Befehlssatzerweiterungs-Allzweckregister[42949672961]; Befehlssatzerweiterungs-Allzweckregister[42949672962] == Speicherstelle im Arbeitsspeicher[42949672962] → Befehlssatzerweiterungs-Allzweckregister[42949672962]; Befehlssatzerweiterungs-Allzweckregister[42949672963] == Speicherstelle im Arbeitsspeicher[42949672963] → Befehlssatzerweiterungs-Allzweckregister[42949672963]
Befehlssatzerweiterungs-Allzweckregister[42949672960] > Speicherstelle im Arbeitsspeicher[42949672960] → Befehlssatzerweiterungs-Allzweckregister[42949672960]; Befehlssatzerweiterungs-Allzweckregister[42949672961] > Speicherstelle im Arbeitsspeicher[42949672961] → Befehlssatzerweiterungs-Allzweckregister[42949672961]; Befehlssatzerweiterungs-Allzweckregister[42949672962] > Speicherstelle im Arbeitsspeicher[42949672962] → Befehlssatzerweiterungs-Allzweckregister[42949672962]; Befehlssatzerweiterungs-Allzweckregister[42949672963] > Speicherstelle im Arbeitsspeicher[42949672963] → Befehlssatzerweiterungs-Allzweckregister[42949672963]
Befehlssatzerweiterungs-Allzweckregister[655360] == Speicherstelle im Arbeitsspeicher[655360] → Befehlssatzerweiterungs-Allzweckregister[655360]; Befehlssatzerweiterungs-Allzweckregister[655361] == Speicherstelle im Arbeitsspeicher[655361] → Befehlssatzerweiterungs-Allzweckregister[655361]; Befehlssatzerweiterungs-Allzweckregister[655362] == Speicherstelle im Arbeitsspeicher[655362] → Befehlssatzerweiterungs-Allzweckregister[655362]; Befehlssatzerweiterungs-Allzweckregister[655363] == Speicherstelle im Arbeitsspeicher[655363] → Befehlssatzerweiterungs-Allzweckregister[655363]; Befehlssatzerweiterungs-Allzweckregister[655364] == Speicherstelle im Arbeitsspeicher[655364] → Befehlssatzerweiterungs-Allzweckregister[655364]; Befehlssatzerweiterungs-Allzweckregister[655365] == Speicherstelle im Arbeitsspeicher[655365] → Befehlssatzerweiterungs-Allzweckregister[655365]; Befehlssatzerweiterungs-Allzweckregister[655366] == Speicherstelle im Arbeitsspeicher[655366] → Befehlssatzerweiterungs-Allzweckregister[655366]; Befehlssatzerweiterungs-Allzweckregister[655367] == Speicherstelle im Arbeitsspeicher[655367] → Befehlssatzerweiterungs-Allzweckregister[655367]
Befehlssatzerweiterungs-Allzweckregister[655360] > Speicherstelle im Arbeitsspeicher[655360] → Befehlssatzerweiterungs-Allzweckregister[655360]; Befehlssatzerweiterungs-Allzweckregister[655361] > Speicherstelle im Arbeitsspeicher[655361] → Befehlssatzerweiterungs-Allzweckregister[655361]; Befehlssatzerweiterungs-Allzweckregister[655362] > Speicherstelle im Arbeitsspeicher[655362] → Befehlssatzerweiterungs-Allzweckregister[655362]; Befehlssatzerweiterungs-Allzweckregister[655363] > Speicherstelle im Arbeitsspeicher[655363] → Befehlssatzerweiterungs-Allzweckregister[655363]; Befehlssatzerweiterungs-Allzweckregister[655364] > Speicherstelle im Arbeitsspeicher[655364] → Befehlssatzerweiterungs-Allzweckregister[655364]; Befehlssatzerweiterungs-Allzweckregister[655365] > Speicherstelle im Arbeitsspeicher[655365] → Befehlssatzerweiterungs-Allzweckregister[655365]; Befehlssatzerweiterungs-Allzweckregister[655366] > Speicherstelle im Arbeitsspeicher[655366] → Befehlssatzerweiterungs-Allzweckregister[655366]; Befehlssatzerweiterungs-Allzweckregister[655367] > Speicherstelle im Arbeitsspeicher[655367] → Befehlssatzerweiterungs-Allzweckregister[655367]
Befehlssatzerweiterungs-Hilfsregister, Befehlssatzerweiterungs-Allzweckregister → Speicherstelle im Arbeitsspeicher
Befehlszeigerregister → Stapel
Befehlszeigerregister, Segmentregister → Stapel
carry flag (cf) == 0 → Register
carry flag (cf) == 0 → Speicherstelle im Arbeitsspeicher
carry flag (cf) == 1 → Register
carry flag (cf) == 1 → Speicherstelle im Arbeitsspeicher
direkt angegebener Versatz → Befehlszeigerregister, Segmentregister
direkt angegebener Versatz → Segmentregister, Befehlszeigerregister
direkte Daten → Flagge
direkte Daten → Register
direkte Daten → Register #1[2Register #2]
direkte Daten → Speicherstelle im Arbeitsspeicher
direkte Daten → Speicherstelle im Arbeitsspeicher[2Register]
direkte Daten → Stapel
direkte Daten #1 → Register[2direkte Daten #2]
direkte Daten #1 → Speicherstelle im Arbeitsspeicher[2direkte Daten #2]
Flaggenregister → Stapel
overflow flag (of) == 0 → Register
overflow flag (of) == 0 → Speicherstelle im Arbeitsspeicher
overflow flag (of) == 1 → Register
overflow flag (of) == 1 → Speicherstelle im Arbeitsspeicher
parity flag (pf) == 0 → Register
parity flag (pf) == 0 → Speicherstelle im Arbeitsspeicher
parity flag (pf) == 1 → Register
parity flag (pf) == 1 → Speicherstelle im Arbeitsspeicher
Register → Befehlssatzerweiterungs-Allzweckregister
Register → Befehlszeigerregister
Register → Segmentregister
Register → Speicherstelle im Arbeitsspeicher
Register → Stapel
Register #1 → Register #2
Register #1[2max] → Register #2
Register #1[2Register #2] → Flagge
Register[2560] → Speicherstelle im Arbeitsspeicher[2561]; Register[2561] → Speicherstelle im Arbeitsspeicher[2560]
Register[2560] → Speicherstelle im Arbeitsspeicher[2563]; Register[2561] → Speicherstelle im Arbeitsspeicher[2562]; Register[2562] → Speicherstelle im Arbeitsspeicher[2561]; Register[2563] → Speicherstelle im Arbeitsspeicher[2560]
Register[2direkte Daten] → Flagge
Segmentregister → Register
Segmentregister → Speicherstelle im Arbeitsspeicher
Segmentregister → Stapel
Segmentregister, Befehlszeigerregister → Stapel
sign flag (sf) == 0 → Register
sign flag (sf) == 0 → Speicherstelle im Arbeitsspeicher
sign flag (sf) == 1 → Register
sign flag (sf) == 1 → Speicherstelle im Arbeitsspeicher
Speicherstelle im Arbeitsspeicher → Befehlssatzerweiterungs-Allzweckregister
Speicherstelle im Arbeitsspeicher → Befehlssatzerweiterungs-Allzweckregister, Befehlssatzerweiterungs-Hilfsregister
Speicherstelle im Arbeitsspeicher → Befehlssatzerweiterungs-Hilfsregister, Befehlssatzerweiterungs-Allzweckregister
Speicherstelle im Arbeitsspeicher → Befehlszeigerregister
Speicherstelle im Arbeitsspeicher → Befehlszeigerregister, Segmentregister
Speicherstelle im Arbeitsspeicher → Register
Speicherstelle im Arbeitsspeicher → Segmentregister
Speicherstelle im Arbeitsspeicher → Segmentregister, Befehlszeigerregister
Speicherstelle im Arbeitsspeicher → Stapel
Speicherstelle im Arbeitsspeicher #1 → Speicherstelle im Arbeitsspeicher #2
Speicherstelle im Arbeitsspeicher, Befehlssatzerweiterungs-Allzweckregister → Befehlssatzerweiterungs-Allzweckregister
Speicherstelle im Arbeitsspeicher[2560] < Befehlssatzerweiterungs-Allzweckregister[2560] → Befehlssatzerweiterungs-Allzweckregister[2560]; Speicherstelle im Arbeitsspeicher[2561] < Befehlssatzerweiterungs-Allzweckregister[2561] → Befehlssatzerweiterungs-Allzweckregister[2561]; Speicherstelle im Arbeitsspeicher[2562] < Befehlssatzerweiterungs-Allzweckregister[2562] → Befehlssatzerweiterungs-Allzweckregister[2562]; Speicherstelle im Arbeitsspeicher[2563] < Befehlssatzerweiterungs-Allzweckregister[2563] → Befehlssatzerweiterungs-Allzweckregister[2563]; Speicherstelle im Arbeitsspeicher[2564] < Befehlssatzerweiterungs-Allzweckregister[2564] → Befehlssatzerweiterungs-Allzweckregister[2564]; Speicherstelle im Arbeitsspeicher[2565] < Befehlssatzerweiterungs-Allzweckregister[2565] → Befehlssatzerweiterungs-Allzweckregister[2565]; Speicherstelle im Arbeitsspeicher[2566] < Befehlssatzerweiterungs-Allzweckregister[2566] → Befehlssatzerweiterungs-Allzweckregister[2566]; Speicherstelle im Arbeitsspeicher[2567] < Befehlssatzerweiterungs-Allzweckregister[2567] → Befehlssatzerweiterungs-Allzweckregister[2567]; Speicherstelle im Arbeitsspeicher[2568] < Befehlssatzerweiterungs-Allzweckregister[2568] → Befehlssatzerweiterungs-Allzweckregister[2568]; Speicherstelle im Arbeitsspeicher[2569] < Befehlssatzerweiterungs-Allzweckregister[2569] → Befehlssatzerweiterungs-Allzweckregister[2569]; Speicherstelle im Arbeitsspeicher[25610] < Befehlssatzerweiterungs-Allzweckregister[25610] → Befehlssatzerweiterungs-Allzweckregister[25610]; Speicherstelle im Arbeitsspeicher[25611] < Befehlssatzerweiterungs-Allzweckregister[25611] → Befehlssatzerweiterungs-Allzweckregister[25611]; Speicherstelle im Arbeitsspeicher[25612] < Befehlssatzerweiterungs-Allzweckregister[25612] → Befehlssatzerweiterungs-Allzweckregister[25612]; Speicherstelle im Arbeitsspeicher[25613] < Befehlssatzerweiterungs-Allzweckregister[25613] → Befehlssatzerweiterungs-Allzweckregister[25613]; Speicherstelle im Arbeitsspeicher[25614] < Befehlssatzerweiterungs-Allzweckregister[25614] → Befehlssatzerweiterungs-Allzweckregister[25614]; Speicherstelle im Arbeitsspeicher[25615] < Befehlssatzerweiterungs-Allzweckregister[25615] → Befehlssatzerweiterungs-Allzweckregister[25615]
Speicherstelle im Arbeitsspeicher[2560] == Befehlssatzerweiterungs-Allzweckregister[2560] → Befehlssatzerweiterungs-Allzweckregister[2560]; Speicherstelle im Arbeitsspeicher[2561] == Befehlssatzerweiterungs-Allzweckregister[2561] → Befehlssatzerweiterungs-Allzweckregister[2561]; Speicherstelle im Arbeitsspeicher[2562] == Befehlssatzerweiterungs-Allzweckregister[2562] → Befehlssatzerweiterungs-Allzweckregister[2562]; Speicherstelle im Arbeitsspeicher[2563] == Befehlssatzerweiterungs-Allzweckregister[2563] → Befehlssatzerweiterungs-Allzweckregister[2563]; Speicherstelle im Arbeitsspeicher[2564] == Befehlssatzerweiterungs-Allzweckregister[2564] → Befehlssatzerweiterungs-Allzweckregister[2564]; Speicherstelle im Arbeitsspeicher[2565] == Befehlssatzerweiterungs-Allzweckregister[2565] → Befehlssatzerweiterungs-Allzweckregister[2565]; Speicherstelle im Arbeitsspeicher[2566] == Befehlssatzerweiterungs-Allzweckregister[2566] → Befehlssatzerweiterungs-Allzweckregister[2566]; Speicherstelle im Arbeitsspeicher[2567] == Befehlssatzerweiterungs-Allzweckregister[2567] → Befehlssatzerweiterungs-Allzweckregister[2567]; Speicherstelle im Arbeitsspeicher[2568] == Befehlssatzerweiterungs-Allzweckregister[2568] → Befehlssatzerweiterungs-Allzweckregister[2568]; Speicherstelle im Arbeitsspeicher[2569] == Befehlssatzerweiterungs-Allzweckregister[2569] → Befehlssatzerweiterungs-Allzweckregister[2569]; Speicherstelle im Arbeitsspeicher[25610] == Befehlssatzerweiterungs-Allzweckregister[25610] → Befehlssatzerweiterungs-Allzweckregister[25610]; Speicherstelle im Arbeitsspeicher[25611] == Befehlssatzerweiterungs-Allzweckregister[25611] → Befehlssatzerweiterungs-Allzweckregister[25611]; Speicherstelle im Arbeitsspeicher[25612] == Befehlssatzerweiterungs-Allzweckregister[25612] → Befehlssatzerweiterungs-Allzweckregister[25612]; Speicherstelle im Arbeitsspeicher[25613] == Befehlssatzerweiterungs-Allzweckregister[25613] → Befehlssatzerweiterungs-Allzweckregister[25613]; Speicherstelle im Arbeitsspeicher[25614] == Befehlssatzerweiterungs-Allzweckregister[25614] → Befehlssatzerweiterungs-Allzweckregister[25614]; Speicherstelle im Arbeitsspeicher[25615] == Befehlssatzerweiterungs-Allzweckregister[25615] → Befehlssatzerweiterungs-Allzweckregister[25615]
Speicherstelle im Arbeitsspeicher[2560] → Register[2561]; Speicherstelle im Arbeitsspeicher[2561] → Register[2560]
Speicherstelle im Arbeitsspeicher[2560] → Register[2563]; Speicherstelle im Arbeitsspeicher[2561] → Register[2562]; Speicherstelle im Arbeitsspeicher[2562] → Register[2561]; Speicherstelle im Arbeitsspeicher[2563] → Register[2560]
Speicherstelle im Arbeitsspeicher[2direkte Daten] → Flagge
Speicherstelle im Arbeitsspeicher[2Register] → Flagge
Speicherstelle im Arbeitsspeicher[42949672960] < Befehlssatzerweiterungs-Allzweckregister[42949672960] → Befehlssatzerweiterungs-Allzweckregister[42949672960]; Speicherstelle im Arbeitsspeicher[42949672961] < Befehlssatzerweiterungs-Allzweckregister[42949672961] → Befehlssatzerweiterungs-Allzweckregister[42949672961]; Speicherstelle im Arbeitsspeicher[42949672962] < Befehlssatzerweiterungs-Allzweckregister[42949672962] → Befehlssatzerweiterungs-Allzweckregister[42949672962]; Speicherstelle im Arbeitsspeicher[42949672963] < Befehlssatzerweiterungs-Allzweckregister[42949672963] → Befehlssatzerweiterungs-Allzweckregister[42949672963]
Speicherstelle im Arbeitsspeicher[42949672960] == Befehlssatzerweiterungs-Allzweckregister[42949672960] → Befehlssatzerweiterungs-Allzweckregister[42949672960]; Speicherstelle im Arbeitsspeicher[42949672961] == Befehlssatzerweiterungs-Allzweckregister[42949672961] → Befehlssatzerweiterungs-Allzweckregister[42949672961]; Speicherstelle im Arbeitsspeicher[42949672962] == Befehlssatzerweiterungs-Allzweckregister[42949672962] → Befehlssatzerweiterungs-Allzweckregister[42949672962]; Speicherstelle im Arbeitsspeicher[42949672963] == Befehlssatzerweiterungs-Allzweckregister[42949672963] → Befehlssatzerweiterungs-Allzweckregister[42949672963]
Speicherstelle im Arbeitsspeicher[4294967296direkte Daten[40]] → Befehlssatzerweiterungs-Allzweckregister[42949672960]; Speicherstelle im Arbeitsspeicher[4294967296direkte Daten[41]] → Befehlssatzerweiterungs-Allzweckregister[42949672961]; Speicherstelle im Arbeitsspeicher[4294967296direkte Daten[42]] → Befehlssatzerweiterungs-Allzweckregister[42949672962]; Speicherstelle im Arbeitsspeicher[4294967296direkte Daten[43]] → Befehlssatzerweiterungs-Allzweckregister[42949672963]
Speicherstelle im Arbeitsspeicher[655360] < Befehlssatzerweiterungs-Allzweckregister[655360] → Befehlssatzerweiterungs-Allzweckregister[655360]; Speicherstelle im Arbeitsspeicher[655361] < Befehlssatzerweiterungs-Allzweckregister[655361] → Befehlssatzerweiterungs-Allzweckregister[655361]; Speicherstelle im Arbeitsspeicher[655362] < Befehlssatzerweiterungs-Allzweckregister[655362] → Befehlssatzerweiterungs-Allzweckregister[655362]; Speicherstelle im Arbeitsspeicher[655363] < Befehlssatzerweiterungs-Allzweckregister[655363] → Befehlssatzerweiterungs-Allzweckregister[655363]; Speicherstelle im Arbeitsspeicher[655364] < Befehlssatzerweiterungs-Allzweckregister[655364] → Befehlssatzerweiterungs-Allzweckregister[655364]; Speicherstelle im Arbeitsspeicher[655365] < Befehlssatzerweiterungs-Allzweckregister[655365] → Befehlssatzerweiterungs-Allzweckregister[655365]; Speicherstelle im Arbeitsspeicher[655366] < Befehlssatzerweiterungs-Allzweckregister[655366] → Befehlssatzerweiterungs-Allzweckregister[655366]; Speicherstelle im Arbeitsspeicher[655367] < Befehlssatzerweiterungs-Allzweckregister[655367] → Befehlssatzerweiterungs-Allzweckregister[655367]
Speicherstelle im Arbeitsspeicher[655360] == Befehlssatzerweiterungs-Allzweckregister[655360] → Befehlssatzerweiterungs-Allzweckregister[655360]; Speicherstelle im Arbeitsspeicher[655361] == Befehlssatzerweiterungs-Allzweckregister[655361] → Befehlssatzerweiterungs-Allzweckregister[655361]; Speicherstelle im Arbeitsspeicher[655362] == Befehlssatzerweiterungs-Allzweckregister[655362] → Befehlssatzerweiterungs-Allzweckregister[655362]; Speicherstelle im Arbeitsspeicher[655363] == Befehlssatzerweiterungs-Allzweckregister[655363] → Befehlssatzerweiterungs-Allzweckregister[655363]; Speicherstelle im Arbeitsspeicher[655364] == Befehlssatzerweiterungs-Allzweckregister[655364] → Befehlssatzerweiterungs-Allzweckregister[655364]; Speicherstelle im Arbeitsspeicher[655365] == Befehlssatzerweiterungs-Allzweckregister[655365] → Befehlssatzerweiterungs-Allzweckregister[655365]; Speicherstelle im Arbeitsspeicher[655366] == Befehlssatzerweiterungs-Allzweckregister[655366] → Befehlssatzerweiterungs-Allzweckregister[655366]; Speicherstelle im Arbeitsspeicher[655367] == Befehlssatzerweiterungs-Allzweckregister[655367] → Befehlssatzerweiterungs-Allzweckregister[655367]
Stapel → Befehlszeigerregister
Stapel → Befehlszeigerregister, Segmentregister
Stapel → Flaggenregister
Stapel → Register
Stapel → Segmentregister
Stapel → Segmentregister, Befehlszeigerregister
Stapel → Speicherstelle im Arbeitsspeicher
Zeitstempel-Zähler → Register #1, Register #2
zero flag (zf) == 0 → Register
zero flag (zf) == 0 → Speicherstelle im Arbeitsspeicher
zero flag (zf) == 1 → Register
zero flag (zf) == 1 → Speicherstelle im Arbeitsspeicher
rotieren
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
direkte Daten, Register[20], Register → Register[2max], Flagge, Register
direkte Daten, Register[2max], Register → Register[20], Flagge, Register
direkte Daten, Speicherstelle im Arbeitsspeicher[20], Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[2max], Flagge, Speicherstelle im Arbeitsspeicher
direkte Daten, Speicherstelle im Arbeitsspeicher[2max], Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[20], Flagge, Speicherstelle im Arbeitsspeicher
Register #1, Register #2[20], Register #2 → Register #2[2max], Flagge, Register #2
Register #1, Register #2[2max], Register #2 → Register #2[20], Flagge, Register #2
Register, Speicherstelle im Arbeitsspeicher[20], Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[2max], Flagge, Speicherstelle im Arbeitsspeicher
Register, Speicherstelle im Arbeitsspeicher[2max], Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[20], Flagge, Speicherstelle im Arbeitsspeicher
schieben
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
direkte Daten #1, direkte Daten #2, Register → Register[20], Flagge, Register[2max ... 21]
direkte Daten #1, direkte Daten #2, Register → Register[2max], Flagge, Register[2max - 1 ... 20]
direkte Daten #1, direkte Daten #2, Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[20], Flagge, Speicherstelle im Arbeitsspeicher[2max ... 21]
direkte Daten #1, direkte Daten #2, Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[2max], Flagge, Speicherstelle im Arbeitsspeicher[2max - 1 ... 20]
direkte Daten, Register #1[20], Register #2 → Register #2[2max], Flagge, Register #2[2max - 1 ... 20]
direkte Daten, Register #1[2max], Register #2 → Register #2[20], Flagge, Register #2[2max ... 21]
direkte Daten, Register[20], Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[2max], Flagge, Speicherstelle im Arbeitsspeicher[2max - 1 ... 20]
direkte Daten, Register[2max], Register → Register[2max], Flagge, Register[2max - 1 ... 20]
direkte Daten, Register[2max], Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[20], Flagge, Speicherstelle im Arbeitsspeicher[2max ... 21]
direkte Daten, Speicherstelle im Arbeitsspeicher[2max], Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[2max], Flagge, Speicherstelle im Arbeitsspeicher[2max - 1 ... 20]
Register #1, direkte Daten, Register #2 → Register #2[20], Flagge, Register #2[2max ... 21]
Register #1, direkte Daten, Register #2 → Register #2[2max], Flagge, Register #2[2max - 1 ... 20]
Register #1, Register #2[20], Register #3 → Register #3[2max], Flagge, Register #3[2max - 1 ... 20]
Register #1, Register #2[20], Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[2max], Flagge, Speicherstelle im Arbeitsspeicher[2max - 1 ... 20]
Register #1, Register #2[2max], Register #2 → Register #2[2max], Flagge, Register #2[2max - 1 ... 20]
Register #1, Register #2[2max], Register #3 → Register #3[20], Flagge, Register #3[2max ... 21]
Register #1, Register #2[2max], Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[20], Flagge, Speicherstelle im Arbeitsspeicher[2max ... 21]
Register, direkte Daten, Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[20], Flagge, Speicherstelle im Arbeitsspeicher[2max ... 21]
Register, direkte Daten, Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[2max], Flagge, Speicherstelle im Arbeitsspeicher[2max - 1 ... 20]
Register, Speicherstelle im Arbeitsspeicher[2max], Speicherstelle im Arbeitsspeicher → Speicherstelle im Arbeitsspeicher[2max], Flagge, Speicherstelle im Arbeitsspeicher[2max - 1 ... 20]
tauschen
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
Register #1 ↔ Register #2
Register ↔ Speicherstelle im Arbeitsspeicher
Register[2560] ↔ Register[2563]; Register[2561] ↔ Register[2562]
Speicherstelle im Arbeitsspeicher ↔ Register
logische Befehle
Arten
exklusiv oder
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
exklusiv oder(direkte Daten, Register) → Register
exklusiv oder(direkte Daten, Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
exklusiv oder(Register #1, Register #2) → Register #1
exklusiv oder(Register, direkte Daten) → Register
exklusiv oder(Register, Speicherstelle im Arbeitsspeicher) → Register
exklusiv oder(Register, Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
exklusiv oder(Speicherstelle im Arbeitsspeicher, direkte Daten) → Speicherstelle im Arbeitsspeicher
exklusiv oder(Speicherstelle im Arbeitsspeicher, Register) → Register
exklusiv oder(Speicherstelle im Arbeitsspeicher, Register) → Speicherstelle im Arbeitsspeicher
nicht
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
nicht(Befehlssatzerweiterungs-Allzweckregister) → Befehlssatzerweiterungs-Allzweckregister
nicht(Flagge) → Flagge
nicht(Register) → Register
nicht(Register #1[2Register #2]) → Register #1[2Register #2]
nicht(Register[2direkte Daten]) → Register[2direkte Daten]
nicht(Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
nicht(Speicherstelle im Arbeitsspeicher[2direkte Daten]) → Speicherstelle im Arbeitsspeicher[2direkte Daten]
nicht(Speicherstelle im Arbeitsspeicher[2Register]) → Speicherstelle im Arbeitsspeicher[2Register]
oder
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
oder(direkte Daten, Register) → Register
oder(direkte Daten, Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
oder(Register #1, Register #2) → Register #1
oder(Register, direkte Daten) → Register
oder(Register, Speicherstelle im Arbeitsspeicher) → Register
oder(Register, Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
oder(Speicherstelle im Arbeitsspeicher, direkte Daten) → Speicherstelle im Arbeitsspeicher
oder(Speicherstelle im Arbeitsspeicher, Register) → Register
oder(Speicherstelle im Arbeitsspeicher, Register) → Speicherstelle im Arbeitsspeicher
und
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
und(Befehlssatzerweiterungs-Allzweckregister #1, Befehlssatzerweiterungs-Allzweckregister #2) → Befehlssatzerweiterungs-Allzweckregister #1
und(Befehlssatzerweiterungs-Allzweckregister, Speicherstelle im Arbeitsspeicher) → Befehlssatzerweiterungs-Allzweckregister
und(direkte Daten, Register)
und(direkte Daten, Register) → Register
und(direkte Daten, Speicherstelle im Arbeitsspeicher)
und(direkte Daten, Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
und(nicht(Befehlssatzerweiterungs-Allzweckregister #1), Befehlssatzerweiterungs-Allzweckregister #2) → Befehlssatzerweiterungs-Allzweckregister #1
und(nicht(Befehlssatzerweiterungs-Allzweckregister), Speicherstelle im Arbeitsspeicher) → Befehlssatzerweiterungs-Allzweckregister
und(Register #1, Register #2)
und(Register #1, Register #2) → Register #1
und(Register, direkte Daten)
und(Register, direkte Daten) → Register
und(Register, Speicherstelle im Arbeitsspeicher)
und(Register, Speicherstelle im Arbeitsspeicher) → Register
und(Register, Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
und(Speicherstelle im Arbeitsspeicher, Befehlssatzerweiterungs-Allzweckregister) → Befehlssatzerweiterungs-Allzweckregister
und(Speicherstelle im Arbeitsspeicher, direkte Daten)
und(Speicherstelle im Arbeitsspeicher, direkte Daten) → Speicherstelle im Arbeitsspeicher
und(Speicherstelle im Arbeitsspeicher, nicht(Befehlssatzerweiterungs-Allzweckregister)) → Befehlssatzerweiterungs-Allzweckregister
und(Speicherstelle im Arbeitsspeicher, Register)
und(Speicherstelle im Arbeitsspeicher, Register) → Register
und(Speicherstelle im Arbeitsspeicher, Register) → Speicherstelle im Arbeitsspeicher
mathematische Befehle
Arten
Addition (Plus rechnen)
Übersicht
Befehle mit Bedingung
Befehle ohne Bedingung
Befehle mit Bedingung
wenn: Anfangswert < Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert < Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: Anfangswert <= Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert <= Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: Anfangswert == Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert == Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: Anfangswert != Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert != Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: Anfangswert >= Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert >= Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: Anfangswert > Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert > Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: carry flag (cf) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: carry flag (cf) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: carry flag (cf) == 1 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: carry flag (cf) == 1 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: counter (cx) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: counter (cx) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: extended counter (ecx) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: extended counter (ecx) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: overflow flag (of) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: overflow flag (of) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: overflow flag (of) == 1 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: overflow flag (of) == 1 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: parity flag (pf) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: parity flag (pf) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: parity flag (pf) == 1 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: parity flag (pf) == 1 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: sign flag (sf) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: sign flag (sf) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: sign flag (sf) == 1 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: sign flag (sf) == 1 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: zero flag (zf) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: zero flag (zf) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: zero flag (zf) == 1 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: zero flag (zf) == 1 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
Befehle ohne Bedingung
(Befehlssatzerweiterungs-Allzweckregister #1[2560] + Befehlssatzerweiterungs-Allzweckregister #2[2560]) → Befehlssatzerweiterungs-Allzweckregister #1[2560]; (Befehlssatzerweiterungs-Allzweckregister #1[2561] + Befehlssatzerweiterungs-Allzweckregister #2[2561]) → Befehlssatzerweiterungs-Allzweckregister #1[2561]; (Befehlssatzerweiterungs-Allzweckregister #1[2562] + Befehlssatzerweiterungs-Allzweckregister #2[2562]) → Befehlssatzerweiterungs-Allzweckregister #1[2562]; (Befehlssatzerweiterungs-Allzweckregister #1[2563] + Befehlssatzerweiterungs-Allzweckregister #2[2563]) → Befehlssatzerweiterungs-Allzweckregister #1[2563]; (Befehlssatzerweiterungs-Allzweckregister #1[2564] + Befehlssatzerweiterungs-Allzweckregister #2[2564]) → Befehlssatzerweiterungs-Allzweckregister #1[2564]; (Befehlssatzerweiterungs-Allzweckregister #1[2565] + Befehlssatzerweiterungs-Allzweckregister #2[2565]) → Befehlssatzerweiterungs-Allzweckregister #1[2565]; (Befehlssatzerweiterungs-Allzweckregister #1[2566] + Befehlssatzerweiterungs-Allzweckregister #2[2566]) → Befehlssatzerweiterungs-Allzweckregister #1[2566]; (Befehlssatzerweiterungs-Allzweckregister #1[2567] + Befehlssatzerweiterungs-Allzweckregister #2[2567]) → Befehlssatzerweiterungs-Allzweckregister #1[2567]; (Befehlssatzerweiterungs-Allzweckregister #1[2568] + Befehlssatzerweiterungs-Allzweckregister #2[2568]) → Befehlssatzerweiterungs-Allzweckregister #1[2568]; (Befehlssatzerweiterungs-Allzweckregister #1[2569] + Befehlssatzerweiterungs-Allzweckregister #2[2569]) → Befehlssatzerweiterungs-Allzweckregister #1[2569]; (Befehlssatzerweiterungs-Allzweckregister #1[25610] + Befehlssatzerweiterungs-Allzweckregister #2[25610]) → Befehlssatzerweiterungs-Allzweckregister #1[25610]; (Befehlssatzerweiterungs-Allzweckregister #1[25611] + Befehlssatzerweiterungs-Allzweckregister #2[25611]) → Befehlssatzerweiterungs-Allzweckregister #1[25611]; (Befehlssatzerweiterungs-Allzweckregister #1[25612] + Befehlssatzerweiterungs-Allzweckregister #2[25612]) → Befehlssatzerweiterungs-Allzweckregister #1[25612]; (Befehlssatzerweiterungs-Allzweckregister #1[25613] + Befehlssatzerweiterungs-Allzweckregister #2[25613]) → Befehlssatzerweiterungs-Allzweckregister #1[25613]; (Befehlssatzerweiterungs-Allzweckregister #1[25614] + Befehlssatzerweiterungs-Allzweckregister #2[25614]) → Befehlssatzerweiterungs-Allzweckregister #1[25614]; (Befehlssatzerweiterungs-Allzweckregister #1[25615] + Befehlssatzerweiterungs-Allzweckregister #2[25615]) → Befehlssatzerweiterungs-Allzweckregister #1[25615] → Befehlssatzerweiterungs-Allzweckregister #1[2560], Befehlssatzerweiterungs-Allzweckregister #1[2561], Befehlssatzerweiterungs-Allzweckregister #1[2562], Befehlssatzerweiterungs-Allzweckregister #1[2563], Befehlssatzerweiterungs-Allzweckregister #1[2564], Befehlssatzerweiterungs-Allzweckregister #1[2565], Befehlssatzerweiterungs-Allzweckregister #1[2566], Befehlssatzerweiterungs-Allzweckregister #1[2567], Befehlssatzerweiterungs-Allzweckregister #1[2568], Befehlssatzerweiterungs-Allzweckregister #1[2569], Befehlssatzerweiterungs-Allzweckregister #1[25610], Befehlssatzerweiterungs-Allzweckregister #1[25611], Befehlssatzerweiterungs-Allzweckregister #1[25612], Befehlssatzerweiterungs-Allzweckregister #1[25613], Befehlssatzerweiterungs-Allzweckregister #1[25614], Befehlssatzerweiterungs-Allzweckregister #1[25615]
(Befehlssatzerweiterungs-Allzweckregister #1[42949672960] + Befehlssatzerweiterungs-Allzweckregister #2[42949672960]) → Befehlssatzerweiterungs-Allzweckregister #1[42949672960]; (Befehlssatzerweiterungs-Allzweckregister #1[42949672961] + Befehlssatzerweiterungs-Allzweckregister #2[42949672961]) → Befehlssatzerweiterungs-Allzweckregister #1[42949672961]; (Befehlssatzerweiterungs-Allzweckregister #1[42949672962] + Befehlssatzerweiterungs-Allzweckregister #2[42949672962]) → Befehlssatzerweiterungs-Allzweckregister #1[42949672962]; (Befehlssatzerweiterungs-Allzweckregister #1[42949672963] + Befehlssatzerweiterungs-Allzweckregister #2[42949672963]) → Befehlssatzerweiterungs-Allzweckregister #1[42949672963] → Befehlssatzerweiterungs-Allzweckregister #1[42949672960], Befehlssatzerweiterungs-Allzweckregister #1[42949672961], Befehlssatzerweiterungs-Allzweckregister #1[42949672962], Befehlssatzerweiterungs-Allzweckregister #1[42949672963]
(Befehlssatzerweiterungs-Allzweckregister #1[655360] + Befehlssatzerweiterungs-Allzweckregister #2[655360]) → Befehlssatzerweiterungs-Allzweckregister #1[655360]; (Befehlssatzerweiterungs-Allzweckregister #1[655361] + Befehlssatzerweiterungs-Allzweckregister #2[655361]) → Befehlssatzerweiterungs-Allzweckregister #1[655361]; (Befehlssatzerweiterungs-Allzweckregister #1[655362] + Befehlssatzerweiterungs-Allzweckregister #2[655362]) → Befehlssatzerweiterungs-Allzweckregister #1[655362]; (Befehlssatzerweiterungs-Allzweckregister #1[655363] + Befehlssatzerweiterungs-Allzweckregister #2[655363]) → Befehlssatzerweiterungs-Allzweckregister #1[655363]; (Befehlssatzerweiterungs-Allzweckregister #1[655364] + Befehlssatzerweiterungs-Allzweckregister #2[655364]) → Befehlssatzerweiterungs-Allzweckregister #1[655364]; (Befehlssatzerweiterungs-Allzweckregister #1[655365] + Befehlssatzerweiterungs-Allzweckregister #2[655365]) → Befehlssatzerweiterungs-Allzweckregister #1[655365]; (Befehlssatzerweiterungs-Allzweckregister #1[655366] + Befehlssatzerweiterungs-Allzweckregister #2[655366]) → Befehlssatzerweiterungs-Allzweckregister #1[655366]; (Befehlssatzerweiterungs-Allzweckregister #1[655367] + Befehlssatzerweiterungs-Allzweckregister #2[655367]) → Befehlssatzerweiterungs-Allzweckregister #1[655367] → Befehlssatzerweiterungs-Allzweckregister #1[655360], Befehlssatzerweiterungs-Allzweckregister #1[655361], Befehlssatzerweiterungs-Allzweckregister #1[655362], Befehlssatzerweiterungs-Allzweckregister #1[655363], Befehlssatzerweiterungs-Allzweckregister #1[655364], Befehlssatzerweiterungs-Allzweckregister #1[655365], Befehlssatzerweiterungs-Allzweckregister #1[655366], Befehlssatzerweiterungs-Allzweckregister #1[655367]
(Befehlssatzerweiterungs-Allzweckregister[2560] + Speicherstelle im Arbeitsspeicher[2560]) → Befehlssatzerweiterungs-Allzweckregister[2560]; (Befehlssatzerweiterungs-Allzweckregister[2561] + Speicherstelle im Arbeitsspeicher[2561]) → Befehlssatzerweiterungs-Allzweckregister[2561]; (Befehlssatzerweiterungs-Allzweckregister[2562] + Speicherstelle im Arbeitsspeicher[2562]) → Befehlssatzerweiterungs-Allzweckregister[2562]; (Befehlssatzerweiterungs-Allzweckregister[2563] + Speicherstelle im Arbeitsspeicher[2563]) → Befehlssatzerweiterungs-Allzweckregister[2563]; (Befehlssatzerweiterungs-Allzweckregister[2564] + Speicherstelle im Arbeitsspeicher[2564]) → Befehlssatzerweiterungs-Allzweckregister[2564]; (Befehlssatzerweiterungs-Allzweckregister[2565] + Speicherstelle im Arbeitsspeicher[2565]) → Befehlssatzerweiterungs-Allzweckregister[2565]; (Befehlssatzerweiterungs-Allzweckregister[2566] + Speicherstelle im Arbeitsspeicher[2566]) → Befehlssatzerweiterungs-Allzweckregister[2566]; (Befehlssatzerweiterungs-Allzweckregister[2567] + Speicherstelle im Arbeitsspeicher[2567]) → Befehlssatzerweiterungs-Allzweckregister[2567]; (Befehlssatzerweiterungs-Allzweckregister[2568] + Speicherstelle im Arbeitsspeicher[2568]) → Befehlssatzerweiterungs-Allzweckregister[2568]; (Befehlssatzerweiterungs-Allzweckregister[2569] + Speicherstelle im Arbeitsspeicher[2569]) → Befehlssatzerweiterungs-Allzweckregister[2569]; (Befehlssatzerweiterungs-Allzweckregister[25610] + Speicherstelle im Arbeitsspeicher[25610]) → Befehlssatzerweiterungs-Allzweckregister[25610]; (Befehlssatzerweiterungs-Allzweckregister[25611] + Speicherstelle im Arbeitsspeicher[25611]) → Befehlssatzerweiterungs-Allzweckregister[25611]; (Befehlssatzerweiterungs-Allzweckregister[25612] + Speicherstelle im Arbeitsspeicher[25612]) → Befehlssatzerweiterungs-Allzweckregister[25612]; (Befehlssatzerweiterungs-Allzweckregister[25613] + Speicherstelle im Arbeitsspeicher[25613]) → Befehlssatzerweiterungs-Allzweckregister[25613]; (Befehlssatzerweiterungs-Allzweckregister[25614] + Speicherstelle im Arbeitsspeicher[25614]) → Befehlssatzerweiterungs-Allzweckregister[25614]; (Befehlssatzerweiterungs-Allzweckregister[25615] + Speicherstelle im Arbeitsspeicher[25615]) → Befehlssatzerweiterungs-Allzweckregister[25615] → Befehlssatzerweiterungs-Allzweckregister[2560], Befehlssatzerweiterungs-Allzweckregister[2561], Befehlssatzerweiterungs-Allzweckregister[2562], Befehlssatzerweiterungs-Allzweckregister[2563], Befehlssatzerweiterungs-Allzweckregister[2564], Befehlssatzerweiterungs-Allzweckregister[2565], Befehlssatzerweiterungs-Allzweckregister[2566], Befehlssatzerweiterungs-Allzweckregister[2567], Befehlssatzerweiterungs-Allzweckregister[2568], Befehlssatzerweiterungs-Allzweckregister[2569], Befehlssatzerweiterungs-Allzweckregister[25610], Befehlssatzerweiterungs-Allzweckregister[25611], Befehlssatzerweiterungs-Allzweckregister[25612], Befehlssatzerweiterungs-Allzweckregister[25613], Befehlssatzerweiterungs-Allzweckregister[25614], Befehlssatzerweiterungs-Allzweckregister[25615]
(Befehlssatzerweiterungs-Allzweckregister[42949672960] + Speicherstelle im Arbeitsspeicher[42949672960]) → Befehlssatzerweiterungs-Allzweckregister[42949672960]; (Befehlssatzerweiterungs-Allzweckregister[42949672961] + Speicherstelle im Arbeitsspeicher[42949672961]) → Befehlssatzerweiterungs-Allzweckregister[42949672961]; (Befehlssatzerweiterungs-Allzweckregister[42949672962] + Speicherstelle im Arbeitsspeicher[42949672962]) → Befehlssatzerweiterungs-Allzweckregister[42949672962]; (Befehlssatzerweiterungs-Allzweckregister[42949672963] + Speicherstelle im Arbeitsspeicher[42949672963]) → Befehlssatzerweiterungs-Allzweckregister[42949672963] → Befehlssatzerweiterungs-Allzweckregister[42949672960], Befehlssatzerweiterungs-Allzweckregister[42949672961], Befehlssatzerweiterungs-Allzweckregister[42949672962], Befehlssatzerweiterungs-Allzweckregister[42949672963]
(Befehlssatzerweiterungs-Allzweckregister[655360] + Speicherstelle im Arbeitsspeicher[655360]) → Befehlssatzerweiterungs-Allzweckregister[655360]; (Befehlssatzerweiterungs-Allzweckregister[655361] + Speicherstelle im Arbeitsspeicher[655361]) → Befehlssatzerweiterungs-Allzweckregister[655361]; (Befehlssatzerweiterungs-Allzweckregister[655362] + Speicherstelle im Arbeitsspeicher[655362]) → Befehlssatzerweiterungs-Allzweckregister[655362]; (Befehlssatzerweiterungs-Allzweckregister[655363] + Speicherstelle im Arbeitsspeicher[655363]) → Befehlssatzerweiterungs-Allzweckregister[655363]; (Befehlssatzerweiterungs-Allzweckregister[655364] + Speicherstelle im Arbeitsspeicher[655364]) → Befehlssatzerweiterungs-Allzweckregister[655364]; (Befehlssatzerweiterungs-Allzweckregister[655365] + Speicherstelle im Arbeitsspeicher[655365]) → Befehlssatzerweiterungs-Allzweckregister[655365]; (Befehlssatzerweiterungs-Allzweckregister[655366] + Speicherstelle im Arbeitsspeicher[655366]) → Befehlssatzerweiterungs-Allzweckregister[655366]; (Befehlssatzerweiterungs-Allzweckregister[655367] + Speicherstelle im Arbeitsspeicher[655367]) → Befehlssatzerweiterungs-Allzweckregister[655367] → Befehlssatzerweiterungs-Allzweckregister[655360], Befehlssatzerweiterungs-Allzweckregister[655361], Befehlssatzerweiterungs-Allzweckregister[655362], Befehlssatzerweiterungs-Allzweckregister[655363], Befehlssatzerweiterungs-Allzweckregister[655364], Befehlssatzerweiterungs-Allzweckregister[655365], Befehlssatzerweiterungs-Allzweckregister[655366], Befehlssatzerweiterungs-Allzweckregister[655367]
(Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
(direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
(direkte Daten + Flagge + Register) → Register
(direkte Daten + Flagge + Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
(direkte Daten + Register) → Register
(direkte Daten + Register #1) → Register #1; (direkte Daten + Register #2) → Register #2
(direkte Daten + Register + Flagge) → Register
(direkte Daten + Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
(direkte Daten + Speicherstelle im Arbeitsspeicher + Flagge) → Speicherstelle im Arbeitsspeicher
(Flagge + direkte Daten + Register) → Register
(Flagge + direkte Daten + Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
(Flagge + Register #1 + Register #2) → Register #1
(Flagge + Register + direkte Daten) → Register
(Flagge + Register + Speicherstelle im Arbeitsspeicher) → Register
(Flagge + Register + Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
(Flagge + Speicherstelle im Arbeitsspeicher + direkte Daten) → Speicherstelle im Arbeitsspeicher
(Flagge + Speicherstelle im Arbeitsspeicher + Register) → Register
(Flagge + Speicherstelle im Arbeitsspeicher + Register) → Speicherstelle im Arbeitsspeicher
(Register #1 + direkte Daten) → Register #1; (Register #2 + direkte Daten) → Register #2
(Register #1 + Flagge + Register #2) → Register #1
(Register #1 + Register #2) → Register #1
(Register #1 + Register #2 + Flagge) → Register #1
(Register + direkte Daten) → Register
(Register + direkte Daten + Flagge) → Register
(Register + Flagge + direkte Daten) → Register
(Register + Flagge + Speicherstelle im Arbeitsspeicher) → Register
(Register + Flagge + Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
(Register + Speicherstelle im Arbeitsspeicher) → Register
(Register + Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
(Register + Speicherstelle im Arbeitsspeicher + Flagge) → Register
(Register + Speicherstelle im Arbeitsspeicher + Flagge) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher + direkte Daten) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher + direkte Daten + Flagge) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher + Flagge + direkte Daten) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher + Flagge + Register) → Register
(Speicherstelle im Arbeitsspeicher + Flagge + Register) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher + Register) → Register
(Speicherstelle im Arbeitsspeicher + Register) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher + Register + Flagge) → Register
(Speicherstelle im Arbeitsspeicher + Register + Flagge) → Speicherstelle im Arbeitsspeicher
Division (teilen)
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
(Register #1 / Register #2) → Register #1
((Register #1 + Register #2) / Register #3) → Register #1, Register #2
((Register #1 + Register #2) / Speicherstelle im Arbeitsspeicher) → Register #1, Register #2
(Register / direkte Daten) → Register
(Speicherstelle im Arbeitsspeicher / direkte Daten) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher / Register) → Speicherstelle im Arbeitsspeicher
mehrere Rechenarten
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
direkte Daten → Register
direkte Daten #1, direkte Daten #2, Register #2, Register #3 → Register #1
direkte Daten #1, Register #2, direkte Daten #2, Register #3 → Register #1
direkte Daten #1, Register #2, Register #3, direkte Daten #2 → Register #1
direkte Daten, Register #2 → Register #1
direkte Daten, Register #2, Register #3 → Register #1
Register #2 → Register #1
Register #2, direkte Daten → Register #1
Register #2, direkte Daten #1, direkte Daten #2, Register #3 → Register #1
Register #2, direkte Daten #1, Register #3, direkte Daten #2 → Register #1
Register #2, direkte Daten, Register #3 → Register #1
Register #2, Register #3 → Register #1
Register #2, Register #3, direkte Daten → Register #1
Register #2, Register #3, direkte Daten #1, direkte Daten #2 → Register #1
Multiplikation (Mal rechnen)
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
(direkte Daten * Register) → Register
(direkte Daten * Register #1) → Register #2
(direkte Daten * Speicherstelle im Arbeitsspeicher) → Register
(direkte Daten * Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
(Register #1 * direkte Daten) → Register #2
(Register #1 * Register #2) → Register #1
(Register #1 * Register #2) → Register #1, Register #3
(Register #1 * Speicherstelle im Arbeitsspeicher) → Register #1, Register #2
(Register * direkte Daten) → Register
(Register * Speicherstelle im Arbeitsspeicher) → Register
(Speicherstelle im Arbeitsspeicher * direkte Daten) → Register
(Speicherstelle im Arbeitsspeicher * direkte Daten) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher * Register) → Register
(Speicherstelle im Arbeitsspeicher * Register #1) → Register #1, Register #2
Subtraktion (Minus rechnen)
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
(Befehlssatzerweiterungs-Allzweckregister #1[2560] - Befehlssatzerweiterungs-Allzweckregister #2[2560]) → Befehlssatzerweiterungs-Allzweckregister #1[2560]; (Befehlssatzerweiterungs-Allzweckregister #1[2561] - Befehlssatzerweiterungs-Allzweckregister #2[2561]) → Befehlssatzerweiterungs-Allzweckregister #1[2561]; (Befehlssatzerweiterungs-Allzweckregister #1[2562] - Befehlssatzerweiterungs-Allzweckregister #2[2562]) → Befehlssatzerweiterungs-Allzweckregister #1[2562]; (Befehlssatzerweiterungs-Allzweckregister #1[2563] - Befehlssatzerweiterungs-Allzweckregister #2[2563]) → Befehlssatzerweiterungs-Allzweckregister #1[2563]; (Befehlssatzerweiterungs-Allzweckregister #1[2564] - Befehlssatzerweiterungs-Allzweckregister #2[2564]) → Befehlssatzerweiterungs-Allzweckregister #1[2564]; (Befehlssatzerweiterungs-Allzweckregister #1[2565] - Befehlssatzerweiterungs-Allzweckregister #2[2565]) → Befehlssatzerweiterungs-Allzweckregister #1[2565]; (Befehlssatzerweiterungs-Allzweckregister #1[2566] - Befehlssatzerweiterungs-Allzweckregister #2[2566]) → Befehlssatzerweiterungs-Allzweckregister #1[2566]; (Befehlssatzerweiterungs-Allzweckregister #1[2567] - Befehlssatzerweiterungs-Allzweckregister #2[2567]) → Befehlssatzerweiterungs-Allzweckregister #1[2567]; (Befehlssatzerweiterungs-Allzweckregister #1[2568] - Befehlssatzerweiterungs-Allzweckregister #2[2568]) → Befehlssatzerweiterungs-Allzweckregister #1[2568]; (Befehlssatzerweiterungs-Allzweckregister #1[2569] - Befehlssatzerweiterungs-Allzweckregister #2[2569]) → Befehlssatzerweiterungs-Allzweckregister #1[2569]; (Befehlssatzerweiterungs-Allzweckregister #1[25610] - Befehlssatzerweiterungs-Allzweckregister #2[25610]) → Befehlssatzerweiterungs-Allzweckregister #1[25610]; (Befehlssatzerweiterungs-Allzweckregister #1[25611] - Befehlssatzerweiterungs-Allzweckregister #2[25611]) → Befehlssatzerweiterungs-Allzweckregister #1[25611]; (Befehlssatzerweiterungs-Allzweckregister #1[25612] - Befehlssatzerweiterungs-Allzweckregister #2[25612]) → Befehlssatzerweiterungs-Allzweckregister #1[25612]; (Befehlssatzerweiterungs-Allzweckregister #1[25613] - Befehlssatzerweiterungs-Allzweckregister #2[25613]) → Befehlssatzerweiterungs-Allzweckregister #1[25613]; (Befehlssatzerweiterungs-Allzweckregister #1[25614] - Befehlssatzerweiterungs-Allzweckregister #2[25614]) → Befehlssatzerweiterungs-Allzweckregister #1[25614]; (Befehlssatzerweiterungs-Allzweckregister #1[25615] - Befehlssatzerweiterungs-Allzweckregister #2[25615]) → Befehlssatzerweiterungs-Allzweckregister #1[25615]
(Befehlssatzerweiterungs-Allzweckregister #1[42949672960] - Befehlssatzerweiterungs-Allzweckregister #2[42949672960]) → Befehlssatzerweiterungs-Allzweckregister #1[42949672960]; (Befehlssatzerweiterungs-Allzweckregister #1[42949672961] - Befehlssatzerweiterungs-Allzweckregister #2[42949672961]) → Befehlssatzerweiterungs-Allzweckregister #1[42949672961]; (Befehlssatzerweiterungs-Allzweckregister #1[42949672962] - Befehlssatzerweiterungs-Allzweckregister #2[42949672962]) → Befehlssatzerweiterungs-Allzweckregister #1[42949672962]; (Befehlssatzerweiterungs-Allzweckregister #1[42949672963] - Befehlssatzerweiterungs-Allzweckregister #2[42949672963]) → Befehlssatzerweiterungs-Allzweckregister #1[42949672963]
(Befehlssatzerweiterungs-Allzweckregister #1[655360] - Befehlssatzerweiterungs-Allzweckregister #2[655360]) → Befehlssatzerweiterungs-Allzweckregister #1[655360]; (Befehlssatzerweiterungs-Allzweckregister #1[655361] - Befehlssatzerweiterungs-Allzweckregister #2[655361]) → Befehlssatzerweiterungs-Allzweckregister #1[655361]; (Befehlssatzerweiterungs-Allzweckregister #1[655362] - Befehlssatzerweiterungs-Allzweckregister #2[655362]) → Befehlssatzerweiterungs-Allzweckregister #1[655362]; (Befehlssatzerweiterungs-Allzweckregister #1[655363] - Befehlssatzerweiterungs-Allzweckregister #2[655363]) → Befehlssatzerweiterungs-Allzweckregister #1[655363]; (Befehlssatzerweiterungs-Allzweckregister #1[655364] - Befehlssatzerweiterungs-Allzweckregister #2[655364]) → Befehlssatzerweiterungs-Allzweckregister #1[655364]; (Befehlssatzerweiterungs-Allzweckregister #1[655365] - Befehlssatzerweiterungs-Allzweckregister #2[655365]) → Befehlssatzerweiterungs-Allzweckregister #1[655365]; (Befehlssatzerweiterungs-Allzweckregister #1[655366] - Befehlssatzerweiterungs-Allzweckregister #2[655366]) → Befehlssatzerweiterungs-Allzweckregister #1[655366]; (Befehlssatzerweiterungs-Allzweckregister #1[655367] - Befehlssatzerweiterungs-Allzweckregister #2[655367]) → Befehlssatzerweiterungs-Allzweckregister #1[655367]
(Befehlssatzerweiterungs-Allzweckregister[2560] - Speicherstelle im Arbeitsspeicher[2560]) → Befehlssatzerweiterungs-Allzweckregister[2560]; (Befehlssatzerweiterungs-Allzweckregister[2561] - Speicherstelle im Arbeitsspeicher[2561]) → Befehlssatzerweiterungs-Allzweckregister[2561]; (Befehlssatzerweiterungs-Allzweckregister[2562] - Speicherstelle im Arbeitsspeicher[2562]) → Befehlssatzerweiterungs-Allzweckregister[2562]; (Befehlssatzerweiterungs-Allzweckregister[2563] - Speicherstelle im Arbeitsspeicher[2563]) → Befehlssatzerweiterungs-Allzweckregister[2563]; (Befehlssatzerweiterungs-Allzweckregister[2564] - Speicherstelle im Arbeitsspeicher[2564]) → Befehlssatzerweiterungs-Allzweckregister[2564]; (Befehlssatzerweiterungs-Allzweckregister[2565] - Speicherstelle im Arbeitsspeicher[2565]) → Befehlssatzerweiterungs-Allzweckregister[2565]; (Befehlssatzerweiterungs-Allzweckregister[2566] - Speicherstelle im Arbeitsspeicher[2566]) → Befehlssatzerweiterungs-Allzweckregister[2566]; (Befehlssatzerweiterungs-Allzweckregister[2567] - Speicherstelle im Arbeitsspeicher[2567]) → Befehlssatzerweiterungs-Allzweckregister[2567]; (Befehlssatzerweiterungs-Allzweckregister[2568] - Speicherstelle im Arbeitsspeicher[2568]) → Befehlssatzerweiterungs-Allzweckregister[2568]; (Befehlssatzerweiterungs-Allzweckregister[2569] - Speicherstelle im Arbeitsspeicher[2569]) → Befehlssatzerweiterungs-Allzweckregister[2569]; (Befehlssatzerweiterungs-Allzweckregister[25610] - Speicherstelle im Arbeitsspeicher[25610]) → Befehlssatzerweiterungs-Allzweckregister[25610]; (Befehlssatzerweiterungs-Allzweckregister[25611] - Speicherstelle im Arbeitsspeicher[25611]) → Befehlssatzerweiterungs-Allzweckregister[25611]; (Befehlssatzerweiterungs-Allzweckregister[25612] - Speicherstelle im Arbeitsspeicher[25612]) → Befehlssatzerweiterungs-Allzweckregister[25612]; (Befehlssatzerweiterungs-Allzweckregister[25613] - Speicherstelle im Arbeitsspeicher[25613]) → Befehlssatzerweiterungs-Allzweckregister[25613]; (Befehlssatzerweiterungs-Allzweckregister[25614] - Speicherstelle im Arbeitsspeicher[25614]) → Befehlssatzerweiterungs-Allzweckregister[25614]; (Befehlssatzerweiterungs-Allzweckregister[25615] - Speicherstelle im Arbeitsspeicher[25615]) → Befehlssatzerweiterungs-Allzweckregister[25615]
(Befehlssatzerweiterungs-Allzweckregister[42949672960] - Speicherstelle im Arbeitsspeicher[42949672960]) → Befehlssatzerweiterungs-Allzweckregister[42949672960]; (Befehlssatzerweiterungs-Allzweckregister[42949672961] - Speicherstelle im Arbeitsspeicher[42949672961]) → Befehlssatzerweiterungs-Allzweckregister[42949672961]; (Befehlssatzerweiterungs-Allzweckregister[42949672962] - Speicherstelle im Arbeitsspeicher[42949672962]) → Befehlssatzerweiterungs-Allzweckregister[42949672962]; (Befehlssatzerweiterungs-Allzweckregister[42949672963] - Speicherstelle im Arbeitsspeicher[42949672963]) → Befehlssatzerweiterungs-Allzweckregister[42949672963]
(Befehlssatzerweiterungs-Allzweckregister[655360] - Speicherstelle im Arbeitsspeicher[655360]) → Befehlssatzerweiterungs-Allzweckregister[655360]; (Befehlssatzerweiterungs-Allzweckregister[655361] - Speicherstelle im Arbeitsspeicher[655361]) → Befehlssatzerweiterungs-Allzweckregister[655361]; (Befehlssatzerweiterungs-Allzweckregister[655362] - Speicherstelle im Arbeitsspeicher[655362]) → Befehlssatzerweiterungs-Allzweckregister[655362]; (Befehlssatzerweiterungs-Allzweckregister[655363] - Speicherstelle im Arbeitsspeicher[655363]) → Befehlssatzerweiterungs-Allzweckregister[655363]; (Befehlssatzerweiterungs-Allzweckregister[655364] - Speicherstelle im Arbeitsspeicher[655364]) → Befehlssatzerweiterungs-Allzweckregister[655364]; (Befehlssatzerweiterungs-Allzweckregister[655365] - Speicherstelle im Arbeitsspeicher[655365]) → Befehlssatzerweiterungs-Allzweckregister[655365]; (Befehlssatzerweiterungs-Allzweckregister[655366] - Speicherstelle im Arbeitsspeicher[655366]) → Befehlssatzerweiterungs-Allzweckregister[655366]; (Befehlssatzerweiterungs-Allzweckregister[655367] - Speicherstelle im Arbeitsspeicher[655367]) → Befehlssatzerweiterungs-Allzweckregister[655367]
(direkte Daten - Register) → Register
(direkte Daten - Speicherstelle im Arbeitsspeicher) → Speicherstelle im Arbeitsspeicher
(Register #1 - (Flagge + Register #2)) → Register #1
(Register #1 - Register #2)
(Register #1 - Register #2) → Register #1
(Register #1 - (Register #2 + Flagge)) → Register #1
(Register - direkte Daten)
(Register - direkte Daten) → Register
(Register - (direkte Daten + Flagge)) → Register
(Register - (Flagge + direkte Daten)) → Register
(Register - (Flagge + Speicherstelle im Arbeitsspeicher)) → Register
(Register - Speicherstelle im Arbeitsspeicher)
(Register - Speicherstelle im Arbeitsspeicher) → Register
(Register - (Speicherstelle im Arbeitsspeicher + Flagge)) → Register
(Speicherstelle im Arbeitsspeicher #1 - Speicherstelle im Arbeitsspeicher #2)
(Speicherstelle im Arbeitsspeicher - direkte Daten)
(Speicherstelle im Arbeitsspeicher - direkte Daten) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher - (direkte Daten + Flagge)) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher - (Flagge + direkte Daten)) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher - (Flagge + Register)) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher - Register)
(Speicherstelle im Arbeitsspeicher - Register) → Speicherstelle im Arbeitsspeicher
(Speicherstelle im Arbeitsspeicher - (Register + Flagge)) → Speicherstelle im Arbeitsspeicher
sonstige Befehle
Arten
keine Operation
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
Register, Register
Prozessor-spezifische Informationen auslesen
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
Register #1, Register #2 → Register #1, Register #2, Register #3, Register #4
Verarbeitungsunterbrechung
Übersicht
Befehle mit Bedingung
Befehle ohne Bedingung
Befehle mit Bedingung
wenn: overflow flag (of) == 1 dann: direkte Daten → Befehlszeigerregister, Segmentregister
wenn: overflow flag (of) == 1 dann: direkte Daten → Segmentregister, Befehlszeigerregister
Befehle ohne Bedingung
direkte Daten → Befehlszeigerregister, Segmentregister
direkte Daten → Segmentregister, Befehlszeigerregister
Segmentregister, Befehlszeigerregister → Stapel
Wertigkeit vom Bit mit dem Wert "1" ermitteln
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
Wertigkeit vom Bit mit dem Wert "1" ermitteln(Register #1) → Register #2
Wertigkeit vom Bit mit dem Wert "1" ermitteln(Speicherstelle im Arbeitsspeicher) → Register
Sprung-Befehle
Arten
zu einer absoluten Adresse
Übersicht
Befehle ohne Bedingung
Befehle ohne Bedingung
direkt angegebener Versatz → Befehlszeigerregister, Segmentregister
direkt angegebener Versatz → Segmentregister, Befehlszeigerregister
Register → Befehlszeigerregister
Speicherstelle im Arbeitsspeicher → Befehlszeigerregister
Speicherstelle im Arbeitsspeicher → Befehlszeigerregister, Segmentregister
Speicherstelle im Arbeitsspeicher → Segmentregister, Befehlszeigerregister
Stapel → Befehlszeigerregister
Stapel → Befehlszeigerregister, Segmentregister
Stapel → Segmentregister, Befehlszeigerregister
zu einer relativen Adresse
Übersicht
Befehle mit Bedingung
Befehle ohne Bedingung
Befehle mit Bedingung
wenn: Anfangswert < Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert < Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: Anfangswert <= Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert <= Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: Anfangswert == Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert == Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: Anfangswert != Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert != Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: Anfangswert >= Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert >= Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: Anfangswert > Abzug dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: Anfangswert > Abzug dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: carry flag (cf) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: carry flag (cf) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: carry flag (cf) == 1 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: carry flag (cf) == 1 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: counter (cx) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: counter (cx) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: extended counter (ecx) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: extended counter (ecx) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: overflow flag (of) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: overflow flag (of) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: overflow flag (of) == 1 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: overflow flag (of) == 1 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: parity flag (pf) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: parity flag (pf) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: parity flag (pf) == 1 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: parity flag (pf) == 1 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: sign flag (sf) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: sign flag (sf) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: sign flag (sf) == 1 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: sign flag (sf) == 1 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: zero flag (zf) == 0 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: zero flag (zf) == 0 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
wenn: zero flag (zf) == 1 dann: (Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
wenn: zero flag (zf) == 1 dann: (direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister
Befehle ohne Bedingung
(Befehlszeigerregister + direkt angegebener Versatz) → Befehlszeigerregister
(direkt angegebener Versatz + Befehlszeigerregister) → Befehlszeigerregister

Stichwortverzeichnis
Befehle
Funktionen
Datentransfer-Befehle
kopieren
Befehle mit Bedingung
Befehle ohne Bedingung
rotieren
Befehle ohne Bedingung
schieben
Befehle ohne Bedingung
tauschen
Befehle ohne Bedingung
logische Befehle
exklusiv oder
Befehle ohne Bedingung
nicht
Befehle ohne Bedingung
oder
Befehle ohne Bedingung
und
Befehle ohne Bedingung
mathematische Befehle
Addition (Plus rechnen)
Befehle mit Bedingung
Befehle ohne Bedingung
Division (teilen)
Befehle ohne Bedingung
mehrere Rechenarten
Befehle ohne Bedingung
Multiplikation (Mal rechnen)
Befehle ohne Bedingung
Subtraktion (Minus rechnen)
Befehle ohne Bedingung
sonstige Befehle
keine Operation
Befehle ohne Bedingung
Prozessor-spezifische Informationen auslesen
Befehle ohne Bedingung
Verarbeitungsunterbrechung
Befehle mit Bedingung
Befehle ohne Bedingung
Wertigkeit vom Bit mit dem Wert "1" ermitteln
Befehle ohne Bedingung
Sprung-Befehle
zu einer absoluten Adresse
Befehle ohne Bedingung
zu einer relativen Adresse
Befehle mit Bedingung
Befehle ohne Bedingung
Namen
gruppiert
nach Befehlssatz
ungruppiert
abgekürzt
ausgeschrieben
Nummern
Parameter
Teile
Zusätze

weiteres Material zu diesem Thema
Dokumente
Prozessor-spezifische Informationen
Verarbeitungsdauern von Befehlen
Programme
Aufnahme von weiteren Materialien


über dieses Dokument

was es hierin gibt

Dieses Dokument
Die zusätzlichen Funktionen von den "64 Bit"-Versionen von den Prozessoren und die Fließkommafunktionalität sind in dieser Dokumentation weitgehend außer Acht gelassen.

wo man die neuste Version bekommt

Derzeit nutze ich OnTheServer.de/Downloads/ um neue Versionen zugänglich zu machen. Sie müsste irgendwo dort in den Unterverzeichnissen sein; das kann sich hin und wieder ein bischen ändern.

Dort gibt es vielleicht auch dieses Dokument in anderen Sprachen.

Die Versions-Angabe von diesem Dokument steht oben rechts ("Stand: ...").

wie man den Verfasser kontaktiert

Der Verfasser von diesem Dokument kann mit der Hilfe von einer elektronischen Nachricht kontaktiert werden. Das hierfür eingerichtete Postfach ist mit der Hilfe von der folgenden Adresse erreichbar:
Kontakt@On(entferne mich)TheServer.de

welche gesetzlichen Einschränkungen es gibt

Lizenzlosigkeit

Dieses Dokument
  • ist an keine Lizenz gebunden.
  • unterliegt nicht den Einschränkungen durch das Urhebergesetz.
  • soll allgemeinfrei (public domain) behandelt werden. Also so, als wenn es sich um ein Eigentum von der Allgemeinheit handelt.

Im Übrigen soll alles, was man auf OnTheServer.de und den Subdomains öffentlich zugänglich findet, entsprechend behandelt werden.

Es gibt auf OnTheServer.de allerdings eine Ausnahme:
Ich lege gelegentlich im Verzeichnis "OnTheServer.de/temp/" urheberrechtlich geschütztes Material ab.

Es ist nicht gestattet, auf irreführendeweise vorzutäuschen, dass das (ursprüngliche) Dokument an eine Lizenz gebunden wäre.

Verfasserschutz

Es ist nicht gestattet, auf irreführendeweise vorzutäuschen, dass man der (ursprüngliche) Verfasser vom Dokument wäre. Der (ursprüngliche) Verfasser muss jedoch nicht namentlich genannt werden.

Vorbehalt für zusätzliche Einschränkungen für zukünftige Versionen

Ich (der ursprüngliche Verfasser) behalte die Möglichkeit, Einschränkungen für
  • die Veränderung oder/und
  • die Verbreitung
aufzuerlegen. Von den Einschränkungen wären lediglich neue Versionen betroffen. Was bisher veröffentlicht wurde, erhält keine weiteren Einschränkungen.

Von diesem Recht werde ich hoffentlich nie gebrauch machen müssen.


allgemeine Informationen über Maschinensprachen

was es ist

Als Maschinensprache bezeichnet man eine Sprache, welche eine CPU-Architektur verarbeiten kann.

Sie ist der Hardware sehr nahe, dennoch werden die einzelnen Befehle von dieser Sprache dekodiert. Es handelt sich allerdings um eine Dekodierung, welche hardwaremäßig ausgeführt wird.

Im Gegensatz hierzu werden alle anderen Programmier- und Skriptsprachen Sie müssen auf irgendeine Weise in eine Maschinensprache übersetzt werden, damit die CPU-Architektur die Anweisungen ausführen kann, da Prozessoren lediglich Maschinensprachen verarbeiten können.

Durch eine Maschinensprache kann ein Programmierer einer CPU-Architektur am genauesten Anweisungen geben. Außerdem können, im Gegensatz zu Hochsprachen, alle Funktionen benutzt werden, welche die CPU-Architektur zur Verfügung stellt. Das direkte Schreiben von Maschinencode ist für den Programmierer allerdings meistens auch der aufwendigste Weg, um einem Prozessor Anweisungen zu geben.

Die x86-CPU-Architektur kann lediglich 1 Maschinensprache verarbeiten. Diese ist die x86-Maschinensprache. Im Gegensatz hierzu kann beispielsweise die ARM-Mikrocontroller-Architektur mehrere Maschinensprachen verarbeiten:

primäre Quelle von einer spezifischen Maschinensprache

Da die Maschinensprache von einer spezifischen CPU-Architektur hardwaremäßig dekodiert wird, haben die verschiedenen CPU-Architekturen auch ihre eigenen Maschinensprachen. Teilweise sind diese Maschinensprachen sehr ähnlich, da beispielsweise ein Hersteller versucht hat, die Architektur von einem anderen Hersteller in einen eigenen Prozessor zu übernehmen.

Die primäre Quelle, welche die Maschinensprache beschreibt und definiert, ist der Entwickler von der Maschinensprache. Dieser Entwickler ist nicht zwangsweise immer der spezifische Hersteller vom Prozessor. Der spezifische Hersteller gibt allerdings meistens die Abweichungen von seinen Prozessoren von der Maschinensprache an. Diese Abweichungen können beispielsweise durch entstehen.

Bei der ARM-Architektur findet von separaten Unternehmen statt.

Manchmal wird für die Maschinensprache eine separate Dokumentation herausgegeben. Manchmal wird die Dokumentation von der Architektur und die Dokumentation von der Maschinensprache als Unterkapitel ins Datenblatt eingebunden.

Es gibt meistens etwas, welches der Entwickler "Befehlsliste" (im Englischen: "instruction set summary") nennt. Dies ist in der Regel eine Auflistung von den zulässigen Befehlsnummern. Zu den Befehlsnummern gibt es meistens jeweils eine Beschreibung, was die jeweilige Befehlsnummer bewirkt. Dazu werden meistens auch die Parameter angegeben, welche dem Befehl übergeben werden müssen. Ein paar wenige Hersteller von Prozessoren machen sich die Mühe, zu den einzelnen Befehlen die notwendige Verarbeitungsdauer als Anzahl der notwendigen Maschinenzyklen anzugeben. Diese Anzahl hängt dann jeweils auch vom verwendeten Prozessor ab.

Der Entwickler gibt auch den "Syntax" von der Maschinensprache an. Dieser Syntax ist im Wesentlichen die Reihenfolge, in welcher kommen.

Diese Dokumentation, welche Sie jetzt lesen, ist also eine sekundäre Quelle, welche die Maschinensprache von der x86-Architektur beschreibt. Ich gehöre zu denjenigen, welche anhand von die Maschinensprache beschreiben.

Alle Dokumente von primären Quellen, welche ich für diese Dokumentation verwendet habe, sind im Kapitel "weiteres Material zu diesem Thema - Dokumente" aufgelistet.


allgemeine Informationen über den Aufbau eines Maschinenbefehls

Aus- und Eingabe von der Befehlsverarbeitung

Ein vollständiger Maschinenbefehl enthält mindestens eine Maschinenbefehlsnummer. Dazu müssen dann, abhängig von der Befehlsnummer, verschiedene Zusätze angegeben werden.
Eingabe-Teile: Verarbeitung: Ausgabe-Teile:
Befehlsnummer
("instruction operation code")
x86-Architektur Ziele
Befehlszusätze
("instruction prefixes")
Flaggen
Quellen

Teile eines Maschinenbefehls

Befehlsnummer

Zweck

Die Befehlsnummer macht eine relativ genaue Auskunft darüber, was getan werden soll.

Durch die Angabe von der Befehlsnummer wird eine genauere Angabe gemacht, als beispielsweise durch den Assemblerbefehl "mov" (also der "move"-Befehl).

Der Assemblerbefehl "mov" steht für eine Gruppe von Befehlsnummern und gibt an, dass es sich um einen Datentransfer-Befehl handelt. Genauer gesagt: Es handelt sich um einen Kopierbefehl.

Die Befehlsnummer "88|h" hingegen gibt außerdem an, dass Daten von einem "1 Byte"-großen Register

Anzahl

In einem Maschinenbefehl darf immer nur 1 Befehlsnummer angegeben sein.

Bezeichnung

Die Befehlsnummer wird auch Befehls-Operationscode (im Englischen: "instruction operation code") genannt.

Größe

Eine Befehlsnummer kann
  • "1 Byte"-groß,
  • "2 Byte"-groß oder
  • "3 Byte"-groß
sein. Zu dieser Größe können allerdings 3 weitere Bits hinzukommen.

Befehlszusatz

Zweck

Mit den Befehlszusätzen können verschiedene "Hacks" aktiviert werden, um einen einzelnen Befehl anderst auszuführen, als er in der Regel ausgeführt werden würde.

Anzahl

In einem Maschinenbefehl dürfen
  • 0,
  • 1,
  • 2,
  • 3 oder
  • 4
Befehlszusätze angegeben werden.

Die Reihenfolge, in welcher die Befehlszusätze angegeben werden, spielt keine Rolle.

Bezeichnung

Ein Befehlszusatz wird im Englischen: "instruction prefix" genannt.

Größe

Ein Befehlszusatz ist, wenn er vorhanden ist, immer 1 Byte groß.

um den Befehl mehrmals auszuführen

Beschreibung
Mit der Hilfe von diesem Befehlszusatz kann angegeben werden, dass der Befehl mehrmals ausgeführt werden soll.

Im Register "(extended) counter" ("(e)cx") muss die Anzahl gespeichert sein, wie oft der Befehl ausgeführt werden soll. Der Befehl kann also auch
  • 0 mal oder
  • 1 mal
ausgeführt werden.

Das Register, welches verwendet wird, hängt ab.

Während der Befehlsabarbeitung wird der Wert im Register auf "0" runtergezählt, sodass nach der Befehlsausführung der Wert "0" gespeichert ist.

Auswirkungen
Einige neuere Prozessoren führen die einzelnen Durchläufe vom Befehl zum Teil gleichzeitig aus.

Wenn
  • beispielsweise 67 Byte von A nach B kopiert werden sollen,
dann
  • kann ein Prozessor, welcher bis zu 32 Byte gleichzeitig laden und speichern kann, 2x 32 Byte kopieren und dann 3x 1 Byte kopieren.

Im Vergleich zu einem Kopiervorgang mit der Hilfe von einer Schleife kann die Verarbeitungsdauer also geringer ausfallen.

Verarbeitungsdauer
In der folgenden Tabelle ist angegeben, um wieviele Maschinenzyklen die Ausführung vom Maschinenbefehl länger benötigt, wenn 1 solcher Befehlszusatz vorhanden ist:
Hersteller: Prozessor Verarbeitungsdauer in Maschinenzyklen
Familie: Grundmodelle: Mikroarchitektur: Varianten: Angabe: Quelle:
Advanced Micro Devices Incorporated
Wert: Zahlensystem:
0001 0000 2er-System
(Binär-System)
16 10er-System
(Dezimal-System)
10 16er-System
(Hexadezimal-System)
- alle - - alle - abhängig vom Befehl und der Anzahl der Durchläufe Agner Fog
k. A. offizielle Dokumentation
Wert: Zahlensystem:
0001 0010 2er-System
(Binär-System)
18 10er-System
(Dezimal-System)
12 16er-System
(Hexadezimal-System)
- alle - - alle - k. A. Agner Fog
k. A. offizielle Dokumentation
Intel Corporation
Wert: Zahlensystem:
0000 0010 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
  • Intel286
k. A. Agner Fog
abhängig vom Befehl und der Anzahl der Durchläufe offizielle Dokumentation
Wert: Zahlensystem:
0000 0011 2er-System
(Binär-System)
3 10er-System
(Dezimal-System)
3 16er-System
(Hexadezimal-System)
  • Intel386
k. A. Agner Fog
abhängig vom Befehl und der Anzahl der Durchläufe offizielle Dokumentation
Wert: Zahlensystem:
0000 0100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
  • Intel486
k. A. Agner Fog
abhängig vom Befehl und der Anzahl der Durchläufe offizielle Dokumentation
Wert: Zahlensystem:
0000 0101 2er-System
(Binär-System)
5 10er-System
(Dezimal-System)
5 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0000 0001 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
  • Pentium
k. A. Agner Fog
abhängig vom Befehl und der Anzahl der Durchläufe offizielle Dokumentation
Wert: Zahlensystem:
0000 0010 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
  • Pentium
  • wenn davor ein Befehl ausgeführt wird, welcher lediglich 1 Maschinenzyklus benötigt: 1
  • wenn davor ein Befehl ausgeführt wird, welcher mehr als 1 Maschinenzyklus benötigt: 0

Die zusätzliche Verarbeitungsdauer ist wegen dem mehrmaligen Ausführen vom Befehl auch von der Anzahl der Durchläufe abhängig.
Agner Fog
k. A. offizielle Dokumentation
Wert: Zahlensystem:
0000 0100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
P5
  • Pentium MMX
  • wenn davor ein Befehl ausgeführt wird, welcher lediglich 1 Maschinenzyklus benötigt: 1
  • wenn davor ein Befehl ausgeführt wird, welcher mehr als 1 Maschinenzyklus benötigt: 0

Die zusätzliche Verarbeitungsdauer ist wegen dem mehrmaligen Ausführen vom Befehl auch von der Anzahl der Durchläufe abhängig.
Agner Fog
k. A. offizielle Dokumentation
Wert: Zahlensystem:
0000 0110 2er-System
(Binär-System)
6 10er-System
(Dezimal-System)
6 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0000 0001 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
  • Pentium Pro
k. A. Agner Fog
k. A. offizielle Dokumentation
Wert: Zahlensystem:
0001 1100 2er-System
(Binär-System)
28 10er-System
(Dezimal-System)
1C 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0010 0110 2er-System
(Binär-System)
38 10er-System
(Dezimal-System)
26 16er-System
(Hexadezimal-System)
Bonnell
  • Atom 2xx
  • Atom 3xx
  • Atom D4xx
  • Atom D5xx
  • Atom E6xx
  • Atom N270
  • Atom N4xx
  • Atom N5xx
  • Atom Z5xx
  • Atom Z6xx
abhängig vom Befehl und der Anzahl der Durchläufe Agner Fog
k. A. offizielle Dokumentation
Wert: Zahlensystem:
0011 0101 2er-System
(Binär-System)
53 10er-System
(Dezimal-System)
35 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0011 0110 2er-System
(Binär-System)
54 10er-System
(Dezimal-System)
36 16er-System
(Hexadezimal-System)
Saltwell
  • Atom D2xxx
  • Atom N2xxx
  • Atom S1xxx
  • Atom Z2xxx
k. A. k. A.
Wert: Zahlensystem:
0011 0111 2er-System
(Binär-System)
55 10er-System
(Dezimal-System)
37 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0100 1101 2er-System
(Binär-System)
77 10er-System
(Dezimal-System)
4D 16er-System
(Hexadezimal-System)
Silvermont
  • Atom C2xxx
  • Atom E3xxx
  • Atom Z3xxx
k. A. offizielle Dokumentation

Verfügbarkeit
Der Befehlszusatz kann in allen Betriebsarten verwendet werden.

Wert
Wert: Zahlensystem:
1111 0011 2er-System
(Binär-System)
243 10er-System
(Dezimal-System)
F3 16er-System
(Hexadezimal-System)

um den Befehl mehrmals auszuführen, solange gleich

Beschreibung
Dieser Befehlszusatz entspricht funktional im Wesentlichen dem Befehlszusatz "um den Befehl mehrmals auszuführen". Er unterscheidet sich jedoch darin, dass der Ablauf zusätzlich dann abgebrochen wird, wenn bei einem Vergleich herausgekommen ist, dass die verglichenen Daten ungleich sind.

Wert
Wert: Zahlensystem:
1111 0011 2er-System
(Binär-System)
243 10er-System
(Dezimal-System)
F3 16er-System
(Hexadezimal-System)

um den Befehl mehrmals auszuführen, solange ungleich

Beschreibung
Dieser Befehlszusatz entspricht funktional im Wesentlichen dem Befehlszusatz "um den Befehl mehrmals auszuführen". Er unterscheidet sich jedoch darin, dass der Ablauf zusätzlich dann abgebrochen wird, wenn bei einem Vergleich herausgekommen ist, dass die verglichenen Daten gleich sind.

Wert
Wert: Zahlensystem:
1111 0010 2er-System
(Binär-System)
242 10er-System
(Dezimal-System)
F2 16er-System
(Hexadezimal-System)

zum Überschreiben vom Segmentregister für die Segment-Auswahl

Beschreibung
Bei den Befehlen darf das Segmentregister für die Segment-Auswahl nicht überschrieben werden. Hier muss immer das Segmentregister "stack segment selector" ("ss") verwendet werden.

zum Überschreiben von der Standardgröße von Adressen von Speicherstellen im Arbeitsspeicher

Beschreibung
Wenn dann
  • kann dieser Befehlszusatz zum Überschreiben von der Standardgröße von der Adresse verwendet werden.

Mit der Hilfe von diesem Befehlszusatz wird
  • nur die Größe von der Adresse von der Speicherstelle im Arbeitsspeicher überschrieben, sodass beispielsweise lediglich die ersten 64 Kilobyte vom Arbeitsspeicher adressiert werden können,
  • aber nicht die Größe vom Wert, welcher an dieser Speicherstelle im Arbeitsspeicher gespeichert ist. Der Wert kann immernoch beispielsweise
    • "1 Byte"-groß,
    • "2 Byte"-groß,
    • "4 Byte"-groß,
    • "8 Byte"-groß oder
    • "16 Byte"-groß
    sein.

Dies bedeutet also, dass jeweils eine andere Größe hat.

Auswirkungen
in der Betriebsart "64 Bit mode"
Befehlszusatz vorhanden: Resultat: Standardgröße, welche mit der Hilfe von einer Angabe in der Segmentbeschreibung vom Maschinencode-Segment definiert ist:
nein es werden weiterhin "8 Byte"-große Adressen für Speicherstellen im Arbeitsspeicher verwendet 8 Byte
ja es werden "4 Byte"-große Adressen für Speicherstellen im Arbeitsspeicher verwendet 8 Byte

"2 Byte"-große Adressen können in dieser Betriebsart nicht verwendet werden.

in der Betriebsart "compatibility mode"
siehe: im Kapitel über die Betriebsart "protected mode"

in der Betriebsart "protected mode"
Befehlszusatz vorhanden: Resultat: Standardgröße, welche mit der Hilfe von einer Angabe in der Segmentbeschreibung vom Maschinencode-Segment definiert ist:
nein es werden weiterhin "2 Byte"-große Adressen für Speicherstellen im Arbeitsspeicher verwendet 2 Byte
ja es werden "4 Byte"-große Adressen für Speicherstellen im Arbeitsspeicher verwendet 2 Byte
nein es werden weiterhin "4 Byte"-große Adressen für Speicherstellen im Arbeitsspeicher verwendet 4 Byte
ja es werden "2 Byte"-große Adressen für Speicherstellen im Arbeitsspeicher verwendet 4 Byte

in der Betriebsart "real-address mode"
Befehlszusatz vorhanden: Resultat: Standardgröße, welche mit der Hilfe von einer Angabe in der Segmentbeschreibung vom Maschinencode-Segment definiert ist:
nein es werden weiterhin "2 Byte"-große Adressen für Speicherstellen im Arbeitsspeicher verwendet 2 Byte
ja es werden "4 Byte"-große Adressen für Speicherstellen im Arbeitsspeicher verwendet 2 Byte

Verarbeitungsdauer
In der folgenden Tabelle ist angegeben, um wieviele Maschinenzyklen die Ausführung vom Maschinenbefehl länger benötigt, wenn 1 solcher Befehlszusatz vorhanden ist:
Hersteller: Prozessor Verarbeitungsdauer in Maschinenzyklen
Familie: Grundmodelle: Mikroarchitektur: Varianten: Angabe: Quelle:
Advanced Micro Devices Incorporated
Wert: Zahlensystem:
0001 0000 2er-System
(Binär-System)
16 10er-System
(Dezimal-System)
10 16er-System
(Hexadezimal-System)
k. A. Agner Fog
  • wenn bis zu 3 Befehlszusätze verwendet werden: 3
  • wenn mehr als 3 Befehlszusätze verwendet werden: mehr als 0

AMD schreibt in seiner offizielle Dokumentation: "more than three legacy prefixes limits decoder performance"
offizielle Dokumentation
Wert: Zahlensystem:
0001 0010 2er-System
(Binär-System)
18 10er-System
(Dezimal-System)
12 16er-System
(Hexadezimal-System)
k. A. Agner Fog
  • wenn bis zu 3 Befehlszusätze verwendet werden: 3
  • wenn mehr als 3 Befehlszusätze verwendet werden: mehr als 0

AMD schreibt in seiner offizielle Dokumentation: "more than three legacy prefixes limits decoder performance"
offizielle Dokumentation
Intel Corporation
Wert: Zahlensystem:
0000 0010 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
  • Intel286
k. A. Agner Fog
k. A. offizielle Dokumentation
Wert: Zahlensystem:
0000 0011 2er-System
(Binär-System)
3 10er-System
(Dezimal-System)
3 16er-System
(Hexadezimal-System)
  • Intel386
k. A. Agner Fog
0 offizielle Dokumentation
Wert: Zahlensystem:
0000 0100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
  • Intel486
k. A. Agner Fog
1 offizielle Dokumentation
Wert: Zahlensystem:
0000 0101 2er-System
(Binär-System)
5 10er-System
(Dezimal-System)
5 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0000 0001 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
  • Pentium
k. A. Agner Fog
1 offizielle Dokumentation
Wert: Zahlensystem:
0000 0010 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
  • Pentium
k. A. Agner Fog
1 offizielle Dokumentation
Wert: Zahlensystem:
0000 0100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
P5
  • Pentium MMX
k. A. Agner Fog
1 offizielle Dokumentation
Wert: Zahlensystem:
0000 0110 2er-System
(Binär-System)
6 10er-System
(Dezimal-System)
6 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0000 0001 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
  • Pentium Pro
k. A. Agner Fog
1 offizielle Dokumentation
Wert: Zahlensystem:
0001 1100 2er-System
(Binär-System)
28 10er-System
(Dezimal-System)
1C 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0010 0110 2er-System
(Binär-System)
38 10er-System
(Dezimal-System)
26 16er-System
(Hexadezimal-System)
Bonnell
  • Atom 2xx
  • Atom 3xx
  • Atom D4xx
  • Atom D5xx
  • Atom E6xx
  • Atom N270
  • Atom N4xx
  • Atom N5xx
  • Atom Z5xx
  • Atom Z6xx
k. A. Agner Fog
0 offizielle Dokumentation
Wert: Zahlensystem:
0011 0101 2er-System
(Binär-System)
53 10er-System
(Dezimal-System)
35 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0011 0110 2er-System
(Binär-System)
54 10er-System
(Dezimal-System)
36 16er-System
(Hexadezimal-System)
Saltwell
  • Atom D2xxx
  • Atom N2xxx
  • Atom S1xxx
  • Atom Z2xxx
k. A. k. A.
Wert: Zahlensystem:
0011 0111 2er-System
(Binär-System)
55 10er-System
(Dezimal-System)
37 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0100 1101 2er-System
(Binär-System)
77 10er-System
(Dezimal-System)
4D 16er-System
(Hexadezimal-System)
Silvermont
  • Atom C2xxx
  • Atom E3xxx
  • Atom Z3xxx
k. A. offizielle Dokumentation

Verfügbarkeit
Das Überschreiben ist in den folgenden Betriebsarten möglich:
  • "64 Bit mode" und
  • "compatibility mode",
  • "protected mode" und
  • "real-address mode"

In der Betriebsart "real-address mode" ist die größte, zulässige Adresse allerdings immernoch "00 0F FF FF|h" (das ist 220 - 1).

Das Überschreiben ist in den folgenden Betriebsarten nicht möglich:
  • "system management mode"

Bei der Betriebsart "system management mode" bin ich mir allerdings nicht ganz sicher.

Wert
Wert: Zahlensystem:
0110 0111 2er-System
(Binär-System)
103 10er-System
(Dezimal-System)
67 16er-System
(Hexadezimal-System)

zum Überschreiben von der Standardgröße von Werten von Parametern

Beschreibung
Dieser Befehlszusatz kann verwendet werden, um die Standardgröße von Werten von Parametern zu überschreiben.

Beim Überschreiben von der Standardgröße von Werten von Parametern sind die Werte von den Parametern gemeint. Somit wird also beispielsweise die Entscheidung überschrieben, ob
  • das "2 Byte"-große Register "accumulator" ("ax") oder
  • das "4 Byte"-große Register "extended accumulator" ("eax")
verwendet wird.

Auswirkungen
in der Betriebsart "64 Bit mode"
Befehlszusatz vorhanden: Resultat: Standardgröße, welche mit der Hilfe von einer Angabe in der Segmentbeschreibung vom Maschinencode-Segment definiert ist:
nein es werden weiterhin "4 Byte"-große Werte für Parameter verwendet 4 Byte
ja es werden "2 Byte"-große Werte für Parameter verwendet 4 Byte

Um "8 Byte"-große Werte benutzen zu können, muss ein anderer Befehlszusatz verwendet werden. Dieser heißt im Englischen "REX prefix" und wird in dieser Dokumentation nicht weiter erläutert.

in der Betriebsart "compatibility mode"
siehe: im Kapitel über die Betriebsart "protected mode"

in der Betriebsart "protected mode"
Befehlszusatz vorhanden: Resultat: Standardgröße, welche mit der Hilfe von einer Angabe in der Segmentbeschreibung vom Maschinencode-Segment definiert ist:
nein es werden weiterhin "2 Byte"-große Werte für Parameter verwendet 2 Byte
ja es werden "4 Byte"-große Werte für Parameter verwendet 2 Byte
nein es werden weiterhin "4 Byte"-große Werte für Parameter verwendet 4 Byte
ja es werden "2 Byte"-große Werte für Parameter verwendet 4 Byte

in der Betriebsart "real-address mode"
Befehlszusatz vorhanden: Resultat: Standardgröße, welche mit der Hilfe von einer Angabe in der Segmentbeschreibung vom Maschinencode-Segment definiert ist:
nein es werden weiterhin "2 Byte"-große Werte für Parameter verwendet 2 Byte
ja es werden "4 Byte"-große Werte für Parameter verwendet 2 Byte

Verarbeitungsdauer
In der folgenden Tabelle ist angegeben, um wieviele Maschinenzyklen die Ausführung vom Maschinenbefehl länger benötigt, wenn 1 solcher Befehlszusatz vorhanden ist:
Hersteller: Prozessor Verarbeitungsdauer in Maschinenzyklen
Familie: Grundmodelle: Mikroarchitektur: Varianten: Angabe: Quelle:
Advanced Micro Devices Incorporated
Wert: Zahlensystem:
0001 0000 2er-System
(Binär-System)
16 10er-System
(Dezimal-System)
10 16er-System
(Hexadezimal-System)
k. A. Agner Fog
  • wenn bis zu 3 Befehlszusätze verwendet werden: 3
  • wenn mehr als 3 Befehlszusätze verwendet werden: mehr als 0

AMD schreibt in seiner offizielle Dokumentation: "more than three legacy prefixes limits decoder performance"
offizielle Dokumentation
Wert: Zahlensystem:
0001 0010 2er-System
(Binär-System)
18 10er-System
(Dezimal-System)
12 16er-System
(Hexadezimal-System)
k. A. Agner Fog
  • wenn bis zu 3 Befehlszusätze verwendet werden: 3
  • wenn mehr als 3 Befehlszusätze verwendet werden: mehr als 0

AMD schreibt in seiner offizielle Dokumentation: "more than three legacy prefixes limits decoder performance"
offizielle Dokumentation
Intel Corporation
Wert: Zahlensystem:
0000 0010 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
  • Intel286
k. A. Agner Fog
k. A. offizielle Dokumentation
Wert: Zahlensystem:
0000 0011 2er-System
(Binär-System)
3 10er-System
(Dezimal-System)
3 16er-System
(Hexadezimal-System)
  • Intel386
k. A. Agner Fog
0 offizielle Dokumentation
Wert: Zahlensystem:
0000 0100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
  • Intel486
k. A. Agner Fog
1 offizielle Dokumentation
Wert: Zahlensystem:
0000 0101 2er-System
(Binär-System)
5 10er-System
(Dezimal-System)
5 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0000 0001 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
  • Pentium
k. A. Agner Fog
1 offizielle Dokumentation
Wert: Zahlensystem:
0000 0010 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
  • Pentium
k. A. Agner Fog
1 offizielle Dokumentation
Wert: Zahlensystem:
0000 0100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
P5
  • Pentium MMX
k. A. Agner Fog
1 offizielle Dokumentation
Wert: Zahlensystem:
0000 0110 2er-System
(Binär-System)
6 10er-System
(Dezimal-System)
6 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0000 0001 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
  • Pentium Pro
k. A. Agner Fog
1 offizielle Dokumentation
Wert: Zahlensystem:
0001 1100 2er-System
(Binär-System)
28 10er-System
(Dezimal-System)
1C 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0010 0110 2er-System
(Binär-System)
38 10er-System
(Dezimal-System)
26 16er-System
(Hexadezimal-System)
Bonnell
  • Atom 2xx
  • Atom 3xx
  • Atom D4xx
  • Atom D5xx
  • Atom E6xx
  • Atom N270
  • Atom N4xx
  • Atom N5xx
  • Atom Z5xx
  • Atom Z6xx
k. A. Agner Fog
0 offizielle Dokumentation
Wert: Zahlensystem:
0011 0101 2er-System
(Binär-System)
53 10er-System
(Dezimal-System)
35 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0011 0110 2er-System
(Binär-System)
54 10er-System
(Dezimal-System)
36 16er-System
(Hexadezimal-System)
Saltwell
  • Atom D2xxx
  • Atom N2xxx
  • Atom S1xxx
  • Atom Z2xxx
k. A. k. A.
Wert: Zahlensystem:
0011 0111 2er-System
(Binär-System)
55 10er-System
(Dezimal-System)
37 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0100 1101 2er-System
(Binär-System)
77 10er-System
(Dezimal-System)
4D 16er-System
(Hexadezimal-System)
Silvermont
  • Atom C2xxx
  • Atom E3xxx
  • Atom Z3xxx
k. A. offizielle Dokumentation

Verfügbarkeit
Das Überschreiben ist in den folgenden Betriebsarten möglich:
  • "64 Bit mode",
  • "compatibility mode",
  • "protected mode" und
  • "real-address mode"

Das Überschreiben ist in den folgenden Betriebsarten nicht möglich:
  • "system management mode"

Bei den Betriebsarten
  • "real-address mode" und
  • "system management mode"
bin ich mir allerdings nicht ganz sicher.

Wert
Wert: Zahlensystem:
0110 0110 2er-System
(Binär-System)
102 10er-System
(Dezimal-System)
66 16er-System
(Hexadezimal-System)

Flagge

Zweck

Eine Flagge dient
  • bei manchen Maschinenbefehlen um die Anweisung genauer zu definieren und
  • bei manchen Maschinenbefehlen als Parameter in der Form von von der Verarbeitung.

Die Werte von Flaggen müssen mit der Hilfe von separaten Maschinenbefehlen auf
  • "0" oder
  • "1"
gesetzt werden. Es ist also nicht möglich, die Werte von den Flaggen erst in
  • dem Maschinenbefehl oder
  • den Maschinenbefehlen
anzugeben, für
  • welchen oder
  • welche
sie vorgesehen sind.

Anzahl

Die Anzahl der Flaggen, welche dem Befehl als Parameter dienen oder durch den Befehl gesetzt werden, hängt vom Befehl ab.

Größe

Jede Flagge ist immer "1 Bit"-groß.

Quelle

Zweck

Mit der Hilfe von einer Quelle wird ein Speicherzelle angegeben, in welcher sich ein Wert befindet, welcher verarbeitet werden sollen.

Bei manchen Befehlen, wie zum Beispiel dem Multiplikations-Befehl (Mal rechnen), ist eine von den beiden Quellen auch gleichzeitig das Ziel. Damit wird das Ergebnis in einer von den Speicherzellen gespeichert, in welcher vor der Befehlsausführung noch einer von den beiden Faktoren gestanden hat.

Anzahl

In einem Maschinenbefehl können
  • 0,
  • 1,
  • 2 oder
  • 3
Quellen angegeben werden.

Allerdings kann es sein, dass bei der Befehlsverarbeitung weitere Quellen benutzt werden, welche allerdings nicht separat angegeben werden können. Dies ist besonders häufig bei Flaggen der Fall.

Arten

Eine Quelle kann

Größe

Eine Quelle kann beispielsweise
  • "1 Bit"-groß,
  • "1 Byte"-groß,
  • "2 Byte"-groß oder
  • "4 Byte"-groß
sein.

Es gibt noch ein paar weitere Größen. Beispielsweise können
  • mit der Hilfe von der Befehlssatzerweiterung "multimedia extensions" ("MMX") auch "8 Byte"-große Quellen ein Teil von einem Maschinenbefehl sein.
  • die "64 Bit"-Versionen der x86-Architektur ebenfalls "8 Byte"-große Quellen in einem Maschinenbefehl haben.
  • mit der Hilfe von der Befehlssatzerweiterung "streaming single instruction multiple data extensions" ("SSE") "16 Byte"-große Quellen ein Teil von einem Maschinenbefehl sein.

Alle diese Sonderfälle werden in dieser Dokumentation allerdings weitgehend außer Acht gelassen.

Ziel

Zweck

Mit der Hilfe von einem Ziel wird eine Speicherzelle für die Speicherung von einem Rückgabewert angegeben.

Ein Rückgabewert kann kein Ziel sein. Ein Rückgabewert sind verarbeitete Daten.

Bei manchen Befehlen, wie zum Beispiel dem Multiplikations-Befehl (Mal rechnen), ist eine von den beiden Quellen auch gleichzeitig das Ziel. Damit wird das Ergebnis in einer von den Speicherzellen gespeichert, in welcher vor der Befehlsausführung noch einer von den beiden Faktoren gestanden hat.

Anzahl

In einem Maschinenbefehl können
  • 0,
  • 1 oder
  • 2
Ziele angegeben werden.

Allerdings kann es sein, dass bei der Befehlsverarbeitung weitere Ziele benutzt werden, welche allerdings nicht separat angegeben werden können. Dies ist besonders häufig bei Flaggen der Fall.

Arten

Ein Ziel kann

Größe

Ein Ziel kann beispielsweise
  • "1 Bit"-groß,
  • "1 Byte"-groß,
  • "2 Byte"-groß oder
  • "4 Byte"-groß
sein.

Es gibt noch ein paar weitere Größen. Zu diesen weiteren Größen sind im Kapitel "Quelle - Größe" weitere Informationen, welche ebenfalls für Ziele gelten.

Parameter

direkte Daten

Beschreibung

Wenn
  • direkte Daten im Maschinenbefehl angegeben werden,
dann
  • wird ein Wert im Maschinenbefehl angegeben.

Im Gegensatz hierzu wird bei den indirekten Parametern im Maschinenbefehl angegeben, wo der Wert steht. Also zum Beispiel
  • in welchem Register oder
  • an welcher Speicherstelle im Arbeitsspeicher
der Wert steht.

Bei diesen direkten Daten handelt es sich um einen Wert, welchen der Programmierer zur Zeit von der Programmierung bereits kennen muss. Oft ist dem Programmierer zur Zeit von der Programmierung lediglich bekannt, wo die Daten, welche verarbeitet werden sollen, gespeichert sind, nicht aber der exakte Wert.

In der x86-Architektur können lediglich in der Quelle von einem Maschinenbefehl direkte Daten gespeichert sein. Im Ziel können durch die x86-Architektur keine direkten Daten gespeichert werden. Wenn
  • der Maschinenbefehl direkte Daten im Ziel speichern würde,
dann
  • würde dies bedeuten, dass das Ergebnis von der Verarbeitung im Maschinencode gespeichert wird.

Dies wäre zwar technisch machbar, es ist aber in der x86-Architektur nicht vorgesehen.

Bezeichnung

"Direkte Daten" werden im Englischen "immediate data" genannt.

Flagge

Beschreibung

Eine Flagge dient
  • bei manchen Maschinenbefehlen um die Anweisung genauer zu definieren und
  • bei manchen Maschinenbefehlen als Parameter in Form von von der Verarbeitung.

Wenn
  • eine Flagge als Parameter dient,
dann
  • ist die Angabe vom "1 Bit"-großen Wert meistens als
    • "wahr" oder
    • "unwahr"
    zu verstehen.

Bezeichnung

Eine Flagge wird im Englischen "flag" genannt.

Register

Beschreibung

Register können als Parameter von einem Maschinenbefehl dienen.

Welche Register verwendet werden können, hängt vom verwendeten Maschinenbefehl ab. Oft können bestimmte Typen von Register verwendet werden. Beispielsweise alle Allzweckregister.

Im Kapitel "weiteres Material zu diesem Thema - Dokumente" ist ein Dokument aufgelistet, welches häufig verwendete Register behandelt.

Speicherstelle im Arbeitsspeicher

Beschreibung

Speicherstellen im Arbeitsspeicher können als Parameter von einem Maschinenbefehl dienen.

Im Dokument "x86-Architektur - allgemeine Informationen" sind im Kapitel "allgemeine Informationen über die x86-Architektur - Speicher - Arbeitsspeicher - Adressierung" weitere Informationen darüber enthalten, wie sich die Adressen von einzelnen Speicherzellen zusammensetzen.

Berechnung vom Offset vom Segmentanfang

Die x86-Architektur unterstützt hardwaremäßig die Berechnung vom Offset vom Segmentanfang bevor der Maschinenbefehl ausgeführt wird.

Um eine Berechnung durchzuführen gibt es eine Formel, welche den Offset vom Segmentanfang angibt. Der Programmierer kann dann die einzelnen Komponenten von der Formel im Maschinenbefehl angeben.

Art von den Daten: Größe von der Komponente: Name von der Komponente: Variablentyp:
direkte Daten
  • 0 Bit oder
  • 2 Bit
  (Multiplikator durch einen Multiplikatorschlüssel kodierte Ganzzahl ohne Vorzeichen
indirekte Daten
  • 0 Byte oder
  • 4 Byte
* Index) Ganzzahl mit Vorzeichen
indirekte Daten
  • 0 Byte,
  • 2 Byte oder
  • 4 Byte
+ indirekt angegebener Versatz Ganzzahl mit Vorzeichen
direkte Daten
  • 0 Byte,
  • 1 Byte,
  • 2 Byte oder
  • 4 Byte
+ direkt angegebener Versatz Ganzzahl mit Vorzeichen

  • 2 Byte oder
  • 4 Byte
= Offset vom Segmentanfang Ganzzahl

Der Multiplikator kann erst seit dem Intel386-Prozessor verwendet werden.

Wenn
  • mehrere Komponenten angegeben wurden, sodass die endgültige Adresse auch tatsächlich berechnet werden muss,
dann
  • sind beim 8086- und 8088-Prozessor hierfür zusätzliche Maschinenzyklen notwendig.
Desto mehr Komponenten verwendet werden, desto mehr Maschinenzyklen werden für die Berechnung gebraucht.

Seit dem Intel286-Prozessor wird nur noch dann 1 zusätzlicher Maschinenzyklus benötigt, wenn alle 3 Komponenten von der Formel verwendet werden (also direkt angegebener Versatz, indirekt angegebener Versatz und Index).

Wenn
  • keine Berechnung durchgeführt werden soll,
dann
  • kann wahlweise die Adresse
    Alle anderen Komponenten von der Formel werden in diesem Fall nicht verwendet.

direkt angegebener Versatz
besondere Eignung
Diese Komponente eignet sich besonders, wenn
  • die Adresse von der Speicherstelle im Arbeitsspeicher im Maschinencode wie direkte Daten angegeben werden soll, oder
  • ein Offset in die Adresse eingerechnet werden soll, welchen dem Programmierer bereits zur Zeit von der Programmierung als konstante Zahl bekannt ist.

Bezeichnung
Der direkt angegebene Versatz wird von Intel auf englisch "displacement" genannt.

Speicherort
Der Wert wird direkt im Maschinenbefehl wie direkte Daten gespeichert. Er kann also nicht aus einem Register geladen werden.

indirekt angegebener Versatz
besondere Eignung
Diese Komponente eigenet sich besonders, um das erste Byte von einer Variable anzugeben.

Speziell bei einer Liste kann
  • der indirekt angegebene Versatz den Anfang von der Liste angeben,
  • der Index gibt dann den gewünschten Eintrag an und
  • der Multiplikator kann verwendet werden, wenn jeder Eintrag größer als 1 Byte ist.

Bezeichnung
Der indirekt angegebene Versatz wird von Intel auf englisch "base" genannt.

Speicherort
Wenn
  • diese Komponente "2 Byte"-groß ist,
dann
  • kann sie in einem von den folgenden Registern gespeichert werden:
    Allzweckregister:
    • base (bx)

    Stapelregister:
    • base pointer (bp)

    Zeigerregister:
    • destination index (di)
    • source index (si)

Wenn
  • diese Komponente "4 Byte"-groß ist,
dann
  • kann sie in einem von den folgenden Registern gespeichert werden:
    Allzweckregister:
    • extended accumulator (eax)
    • extended base (ebx)
    • extended counter (ecx)
    • extended data (edx)

    Stapelregister:
    • extended base pointer (ebp)
    • extended stack pointer (esp)

    Zeigerregister:
    • extended destination index (edi)
    • extended source index (esi)

Index
besondere Eignung
Diese Komponente eignet sich besonders, um anzugeben, welcher Eintrag von einer Liste ausgewählt werden soll.

Falls in einer Liste jeder Eintrag
  • "2 Byte"-groß,
  • "4 Byte"-groß oder
  • "8 Byte"-groß
ist, dann kann dies mit der Hilfe vom Multiplikator angegeben werden.

Bezeichnung
Der Index wird von Intel auf englisch "index" genannt.

Speicherort
Diese Komponente kann in einem von den folgenden Registern gespeichert werden:
Allzweckregister:
  • extended accumulator (eax)
  • extended base (ebx)
  • extended counter (ecx)
  • extended data (edx)

Stapelregister:
  • extended base pointer (ebp)

Zeigerregister:
  • extended destination index (edi)
  • extended source index (esi)

Multiplikator
besondere Eignung
Diese Komponente eignet sich besonders, um die Größe von einem Eintrag von einer Liste anzugeben.

In Kombination mit dem Index kann auf diese Weise der Eintrag von einer Liste ausgewählt werden.

Wenn
  • kein Muliplikator angegeben wurde,
dann
  • wird automatisch der Wert "1" als Multiplikator gewählt.

Der Multiplikator darf nur verwendet werden, wenn auch ein Index verwendet wird.

Bezeichnung
Der Multiplikator wird von Intel auf englisch "scale" genannt.

Schlüssel
Wenn
  • in der Formel ein Multiplikator verwendet werden soll,
dann
  • wird hierfür im Unterfeld "Multiplikator"
    • kein direkter Wert,
    • sondern ein Schlüssel
    angegeben.

Es folgt eine Auflistung von den gültigen Schlüsseln und den entsprechenden Werten:
Schlüssel: Wert:
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0001 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0010 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
0100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
11 2er-System
(Binär-System)
3 10er-System
(Dezimal-System)
3 16er-System
(Hexadezimal-System)
Wert: Zahlensystem:
1000 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)

Speicherort
Anstatt dem Wert wird der Schlüssel vom Wert direkt im Maschinenbefehl als direkte Daten gespeichert. Er kann also nicht aus einem Register geladen werden.


die Details vom Aufbau eines Maschinenbefehls

Übersicht

Wenn dann
Feld Unterfeld
Größe: Name: Größe: Name:
  • 0 Byte oder
  • 1 Byte
Befehlszusatz
  • 0 Byte oder
  • 1 Byte
Befehlszusatz
  • 0 Byte oder
  • 1 Byte
Befehlszusatz
  • 0 Byte oder
  • 1 Byte
Befehlszusatz
  • 1 Byte,
  • 2 Byte oder
  • 3 Byte
Befehlsnummer
  • 0 Byte oder
  • 1 Byte
gemischte Angaben
  • 0 Bit oder
  • 2 Bit
1. Parameter (alias "Modus")
  • 0 Bit oder
  • 3 Bit
Befehlsnummer oder Registernummer vom 2. Parameter
  • 0 Bit oder
  • 3 Bit
1. Parameter (alias "r/m")
  • 0 Byte oder
  • 1 Byte
Adressenberechnungsangaben
  • 0 Bit oder
  • 2 Bit
Multiplikator
  • 0 Bit oder
  • 3 Bit
Registernummer vom Index
  • 0 Bit oder
  • 3 Bit
Registernummer vom indirekt angegebenen Versatz
  • 0 Byte,
  • 1 Byte,
  • 2 Byte,
  • 4 Byte oder
  • 6 Byte
direkt angegebener Versatz
  • 0 Byte,
  • 1 Byte,
  • 2 Byte oder
  • 4 Byte
direkte Daten

Vorausgesetzt, dass in dem verwendeten Maschinenbefehl der oberste und unterste Eintrag verwendet werden.

1. Parameter

Beschreibung

Mit diesem "2 Bit + 3 Bit"-großen Feld wird angegeben,

der Wert ist im Arbeitsspeicher gespeichert

Beschreibung

Wenn
  • angegeben wird, dass der Wert vom 1. Parameter im Arbeitsspeicher gespeichert ist,
dann
  • wird im Unterfeld "1. Parameter (alias 'Modus')" ein anderer Wert als der Wert
    Wert: Zahlensystem:
    11 2er-System
    (Binär-System)
    3 10er-System
    (Dezimal-System)
    3 16er-System
    (Hexadezimal-System)
    angegeben.

Das Feld "1. Parameter" gibt in diesem Fall außerdem an, welche Komponenten von der Formel zur Berechnung vom Offset vom Segmentanfang angegeben sind.

bei einem "2 Byte"-großen Offset vom Segmentanfang

Beschreibung
Bei einem "2 Byte"-großen Offset vom Segmentanfang sind folgende Kombinationen von den Komponenten möglich:

direkt angegebener Versatz: indirekt angegebener Versatz: Index und Multiplikator: Details:
nein ja, durch 1 Register nein hier
nein ja, durch eine Addition von 2 Registern nein hier
ja nein nein hier
ja ja, durch 1 Register nein hier
ja ja, durch eine Addition von 2 Registern nein hier

Die Verwendung sind bei einem "2 Byte"-großen Offset vom Segmentanfang nicht möglich.

"direkt angegebener Versatz" angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
110 2er-System
(Binär-System)
6 10er-System
(Dezimal-System)
6 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "2 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

"direkt angegebener Versatz" angegeben und "indirekt angegebener Versatz" durch 1 Register angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
111 2er-System
(Binär-System)
7 10er-System
(Dezimal-System)
7 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
111 2er-System
(Binär-System)
7 10er-System
(Dezimal-System)
7 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "2 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
110 2er-System
(Binär-System)
6 10er-System
(Dezimal-System)
6 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von
  • dem Wert im Register "base pointer" ("bp")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • stack segment selector (ss)

Wenn dann
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
110 2er-System
(Binär-System)
6 10er-System
(Dezimal-System)
6 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von
  • dem Wert im Register "base pointer" ("bp")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "2 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
101 2er-System
(Binär-System)
5 10er-System
(Dezimal-System)
5 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von
  • dem Wert im Register "destination index" ("di")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
101 2er-System
(Binär-System)
5 10er-System
(Dezimal-System)
5 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von
  • dem Wert im Register "destination index" ("di")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "2 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von
  • dem Wert im Register "source index" ("si")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von
  • dem Wert im Register "source index" ("si")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "2 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

"direkt angegebener Versatz" angegeben und "indirekt angegebener Versatz" durch eine Addition von 2 Registern angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
001 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base" ("bx") und
  • dem Wert im Register "destination index" ("di")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
001 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base" ("bx") und
  • dem Wert im Register "destination index" ("di")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "2 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
000 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base" ("bx") und
  • dem Wert im Register "source index" ("si")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
000 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base" ("bx") und
  • dem Wert im Register "source index" ("si")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "2 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
011 2er-System
(Binär-System)
3 10er-System
(Dezimal-System)
3 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base pointer" ("bp") und
  • dem Wert im Register "destination index" ("di")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
011 2er-System
(Binär-System)
3 10er-System
(Dezimal-System)
3 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base pointer" ("bp") und
  • dem Wert im Register "destination index" ("di")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "2 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
010 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base pointer" ("bp") und
  • dem Wert im Register "source index" ("si")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
010 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base pointer" ("bp") und
  • dem Wert im Register "source index" ("si")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Der direkt angegebene Versatz wird mit der Hilfe von
  • einem "2 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
angegeben.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

"indirekt angegebener Versatz" durch 1 Register angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
111 2er-System
(Binär-System)
7 10er-System
(Dezimal-System)
7 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von angegeben.
direkt angegebener Versatz direkt angegebener Versatz - nicht angegeben -
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
101 2er-System
(Binär-System)
5 10er-System
(Dezimal-System)
5 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von
  • dem Wert im Register "destination index" ("di")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz - nicht angegeben -
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe von
  • dem Wert im Register "source index" ("si")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz - nicht angegeben -
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

"indirekt angegebener Versatz" durch eine Addition von 2 Registern angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
001 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base" ("bx") und
  • dem Wert im Register "destination index" ("di")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz - nicht angegeben -
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
000 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base" ("bx") und
  • dem Wert im Register "source index" ("si")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz - nicht angegeben -
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
011 2er-System
(Binär-System)
3 10er-System
(Dezimal-System)
3 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base pointer" ("bp") und
  • dem Wert im Register "destination index" ("di")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz - nicht angegeben -
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
010 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Ergebnis von einer Addition
  • vom Wert im Register "base pointer" ("bp") und
  • dem Wert im Register "source index" ("si")
angegeben.
direkt angegebener Versatz direkt angegebener Versatz - nicht angegeben -
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

bei einem "4 Byte"-großen Offset vom Segmentanfang

Beschreibung
Bei einem "4 Byte"-großen Offset vom Segmentanfang sind folgende Kombinationen von den Komponenten möglich:

direkt angegebener Versatz: indirekt angegebener Versatz: Index und Multiplikator: Details:
nein ja nein hier
nein ja ja hier
ja nein nein hier
ja nein ja hier
ja ja nein hier
ja ja ja hier

alle Komponenten angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator Gibt an.
Registernummer vom Index Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi") oder
  • "extended source index" ("esi")
an, in welchem der Wert gespeichert ist, welcher als Index dienen soll.
Registernummer vom indirekt angegebenen Versatz Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi"),
  • "extended source index" ("esi") oder
  • "extended stack pointer" ("esp")
an, in welchem der Wert gespeichert ist, welcher als indirekt angegebener Versatz dienen soll.
direkt angegebener Versatz direkt angegebener Versatz Gibt
  • den "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
an, welcher als direkt angegebener Versatz dienen soll.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • wird dieses Segmentregister verwendet, um die
    • Segment-Identifikationskennung oder
    • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
    anzugeben:
    • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator Gibt an.
Registernummer vom Index Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi") oder
  • "extended source index" ("esi")
an, in welchem der Wert gespeichert ist, welcher als Index dienen soll.
Registernummer vom indirekt angegebenen Versatz Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi"),
  • "extended source index" ("esi") oder
  • "extended stack pointer" ("esp")
an, in welchem der Wert gespeichert ist, welcher als indirekt angegebener Versatz dienen soll.
direkt angegebener Versatz direkt angegebener Versatz Gibt
  • den "4 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
an, welcher als direkt angegebener Versatz dienen soll.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • wird dieses Segmentregister verwendet, um die
    • Segment-Identifikationskennung oder
    • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
    anzugeben:
    • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

"direkt angegebener Versatz" angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
101 2er-System
(Binär-System)
5 10er-System
(Dezimal-System)
5 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -
direkt angegebener Versatz direkt angegebener Versatz Gibt
  • den "4 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
an, welcher als direkt angegebener Versatz dienen soll.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

"direkt angegebener Versatz" und "indirekt angegebener Versatz" angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m") Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp")
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi") oder
  • "extended source index" ("esi")
an, in welchem der Wert gespeichert ist, welcher als indirekt angegebener Versatz dienen soll.
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Unterfeld
  • '1. Parameter (alias "r/m")'
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Gibt
  • den "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
an, welcher als direkt angegebener Versatz dienen soll.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • wird dieses Segmentregister verwendet, um die
    • Segment-Identifikationskennung oder
    • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
    anzugeben:
    • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m") Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp")
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi") oder
  • "extended source index" ("esi")
an, in welchem der Wert gespeichert ist, welcher als indirekt angegebener Versatz dienen soll.
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Unterfeld
  • '1. Parameter (alias "r/m")'
angegeben.
direkt angegebener Versatz direkt angegebener Versatz Gibt
  • den "4 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
an, welcher als direkt angegebener Versatz dienen soll.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • wird dieses Segmentregister verwendet, um die
    • Segment-Identifikationskennung oder
    • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
    anzugeben:
    • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
01 2er-System
(Binär-System)
1 10er-System
(Dezimal-System)
1 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator Gibt einen beliebigen Wert an.

Bei der Adressenberechnung wird kein Multiplikator verwendet.
Registernummer vom Index
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)

Bei der Adressenberechnung wird kein Index verwendet.
Registernummer vom indirekt angegebenen Versatz Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi"),
  • "extended source index" ("esi") oder
  • "extended stack pointer" ("esp")
an, in welchem der Wert gespeichert ist, welcher als indirekt angegebener Versatz dienen soll.
direkt angegebener Versatz direkt angegebener Versatz Gibt
  • den "1 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
an, welcher als direkt angegebener Versatz dienen soll.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • wird dieses Segmentregister verwendet, um die
    • Segment-Identifikationskennung oder
    • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
    anzugeben:
    • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
10 2er-System
(Binär-System)
2 10er-System
(Dezimal-System)
2 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator Gibt einen beliebigen Wert an.

Bei der Adressenberechnung wird kein Multiplikator verwendet.
Registernummer vom Index
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)

Bei der Adressenberechnung wird kein Index verwendet.
Registernummer vom indirekt angegebenen Versatz Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi"),
  • "extended source index" ("esi") oder
  • "extended stack pointer" ("esp")
an, in welchem der Wert gespeichert ist, welcher als indirekt angegebener Versatz dienen soll.
direkt angegebener Versatz direkt angegebener Versatz Gibt
  • den "4 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
an, welcher als direkt angegebener Versatz dienen soll.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • wird dieses Segmentregister verwendet, um die
    • Segment-Identifikationskennung oder
    • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
    anzugeben:
    • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

"direkt angegebener Versatz", Index und Multiplikator angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator Gibt an.
Registernummer vom Index Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi") oder
  • "extended source index" ("esi")
an, in welchem der Wert gespeichert ist, welcher als Index dienen soll.
Registernummer vom indirekt angegebenen Versatz
Wert: Zahlensystem:
101 2er-System
(Binär-System)
5 10er-System
(Dezimal-System)
5 16er-System
(Hexadezimal-System)

Bei der Adressenberechnung wird kein indirekt angegebener Versatz verwendet.
direkt angegebener Versatz direkt angegebener Versatz Gibt
  • den "4 Byte"-großen Wert vom Variablentyp
    • "Ganzzahl mit Vorzeichen" oder
    • "Ganzzahl ohne Vorzeichen"
an, welcher als direkt angegebener Versatz dienen soll.
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

"indirekt angegebener Versatz" angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m") Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi") oder
  • "extended source index" ("esi")
an, in welchem der Wert gespeichert ist, welcher als indirekt angegebener Versatz dienen soll.
Adressenberechnungsangaben Multiplikator - nicht angegeben -
Registernummer vom Index - nicht angegeben -
Registernummer vom indirekt angegebenen Versatz - nicht angegeben -

Der indirekt angegebene Versatz wird mit der Hilfe vom Unterfeld
  • '1. Parameter (alias "r/m")'
angegeben.
direkt angegebener Versatz direkt angegebener Versatz - nicht angegeben -
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator Gibt einen beliebigen Wert an.

Bei der Adressenberechnung wird kein Multiplikator verwendet.
Registernummer vom Index
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)

Bei der Adressenberechnung wird kein Index verwendet.
Registernummer vom indirekt angegebenen Versatz Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi"),
  • "extended source index" ("esi") oder
  • "extended stack pointer" ("esp")
an, in welchem der Wert gespeichert ist, welcher als indirekt angegebener Versatz dienen soll.
direkt angegebener Versatz direkt angegebener Versatz - nicht angegeben -
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • wird dieses Segmentregister verwendet, um die
    • Segment-Identifikationskennung oder
    • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
    anzugeben:
    • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

"indirekt angegebener Versatz", Index und Multiplikator angegeben
Kodierung: Komponente:
Feld: Unterfeld: Inhalt:
gemischte Angaben 1. Parameter (alias "Modus")
Wert: Zahlensystem:
00 2er-System
(Binär-System)
0 10er-System
(Dezimal-System)
0 16er-System
(Hexadezimal-System)
1. Parameter (alias "r/m")
Wert: Zahlensystem:
100 2er-System
(Binär-System)
4 10er-System
(Dezimal-System)
4 16er-System
(Hexadezimal-System)
Adressenberechnungsangaben Multiplikator Gibt an.
Registernummer vom Index Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi") oder
  • "extended source index" ("esi")
an, in welchem der Wert gespeichert ist, welcher als Index dienen soll.
Registernummer vom indirekt angegebenen Versatz Gibt die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi"),
  • "extended source index" ("esi") oder
  • "extended stack pointer" ("esp")
an, in welchem der Wert gespeichert ist, welcher als indirekt angegebener Versatz dienen soll.
direkt angegebener Versatz direkt angegebener Versatz - nicht angegeben -
Offset vom Segmentanfang
Dieses Segmentregister wird standardmäßig verwendet, um die
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
anzugeben:
  • data segment "d" selector (ds)

Wenn dann
  • wird dieses Segmentregister verwendet, um die
    • Segment-Identifikationskennung oder
    • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher
    anzugeben:
    • stack segment selector (ss)

Wenn dann
  • kann dies mit der Hilfe von einem Befehlszusatz angegeben werden.
  • Segment-Identifikationskennung oder
  • ungeschobener Offset vom Anfang vom linearen Arbeitsspeicher

der Wert ist in einem Register gespeichert

Beschreibung

Wenn
  • angegeben wird, dass der Wert vom 1. Parameter in einem Register gespeichert ist,
dann
  • ist im Unterfeld "1. Parameter (alias 'Modus')" der Wert
    Wert: Zahlensystem:
    11 2er-System
    (Binär-System)
    3 10er-System
    (Dezimal-System)
    3 16er-System
    (Hexadezimal-System)
    angegeben.

Das Feld "1. Parameter" gibt in diesem Fall außerdem an, in welchem Register der Wert angegeben ist.

bei einem "1 Byte"-großen Parameter

Wert vom Unterfeld "1. Parameter (alias 'Modus')":
Wert: Zahlensystem:
11 2er-System
(Binär-System)
3 10er-System
(Dezimal-System)
3 16er-System
(Hexadezimal-System)
Wert vom Unterfeld "1. Parameter (alias 'r/m')": Die Registernummer vom Register
  • "accumulator low byte" ("al"),
  • "accumulator high byte" ("ah"),
  • "base low byte" ("bl"),
  • "base high byte" ("bh"),
  • "counter low byte" ("cl"),
  • "counter high byte" ("ch"),
  • "data low byte" ("dl") oder
  • "data high byte" ("dh"),
in welchem der Wert gespeichert ist.

bei einem "2 Byte"-großen Parameter

Wert vom Unterfeld "1. Parameter (alias 'Modus')":
Wert: Zahlensystem:
11 2er-System
(Binär-System)
3 10er-System
(Dezimal-System)
3 16er-System
(Hexadezimal-System)
Wert vom Unterfeld "1. Parameter (alias 'r/m')": Die Registernummer vom Register
  • "accumulator" ("ax"),
  • "base" ("bx"),
  • "base pointer" ("bp"),
  • "counter" ("cx"),
  • "data" ("dx"),
  • "destination index" ("di"),
  • "source index" ("si") oder
  • "stack pointer" ("sp"),
in welchem der Wert gespeichert ist.

bei einem "4 Byte"-großen Parameter

Wert vom Unterfeld "1. Parameter (alias 'Modus')":
Wert: Zahlensystem:
11 2er-System
(Binär-System)
3 10er-System
(Dezimal-System)
3 16er-System
(Hexadezimal-System)
Wert vom Unterfeld "1. Parameter (alias 'r/m')": Die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi"),
  • "extended source index" ("esi") oder
  • "extended stack pointer" ("esp"),
in welchem der Wert gespeichert ist.

Befehlsnummer oder Registernummer vom 2. Parameter

Beschreibung

Wenn
  • die verwendete Befehlsnummer einen 2. Parameter fordert,
dann
  • kann in diesem Feld die Registernummer vom Register angegeben werden, in welchem der Wert gespeichert ist.
Ansonsten
  • werden in diesem Feld 3 weitere Bits von der Befehlsnummer angegeben.

bei einem "1 Byte"-großen Parameter

Wert vom Unterfeld "Befehlsnummer oder Registernummer vom 2. Parameter": Die Registernummer vom Register
  • "accumulator low byte" ("al"),
  • "accumulator high byte" ("ah"),
  • "base low byte" ("bl"),
  • "base high byte" ("bh"),
  • "counter low byte" ("cl"),
  • "counter high byte" ("ch"),
  • "data low byte" ("dl") oder
  • "data high byte" ("dh"),
in welchem der Wert gespeichert ist.

bei einem "2 Byte"-großen Parameter

Wert vom Unterfeld "Befehlsnummer oder Registernummer vom 2. Parameter": Die Registernummer vom Register
  • "accumulator" ("ax"),
  • "base" ("bx"),
  • "base pointer" ("bp"),
  • "counter" ("cx"),
  • "data" ("dx"),
  • "destination index" ("di"),
  • "source index" ("si") oder
  • "stack pointer" ("sp"),
in welchem der Wert gespeichert ist.

bei einem "4 Byte"-großen Parameter

Wert vom Unterfeld "Befehlsnummer oder Registernummer vom 2. Parameter": Die Registernummer vom Register
  • "extended accumulator" ("eax"),
  • "extended base" ("ebx"),
  • "extended base pointer" ("ebp"),
  • "extended counter" ("ecx"),
  • "extended data" ("edx"),
  • "extended destination index" ("edi"),
  • "extended source index" ("esi") oder
  • "extended stack pointer" ("esp"),
in welchem der Wert gespeichert ist.

Adressenberechnungsangaben

Dieses Feld gibt es erst seit dem Intel386-Prozessor.


allgemeine Informationen über die Maschinenbefehle

Datentransfer-Befehle

Beschreibung

Bei einem Befehl von dieser Art werden Daten bewegt.

Arten

Es gibt folgende Transferarten:

kopieren

Beschreibung

Bei einem Befehl von dieser Art wird der Inhalt von einer Speicherzelle vollständig in eine andere Speicherzelle kopiert.

Übersicht

Hierfür gibt es damit der Datentransfer ausgeführt wird.

Befehle mit Bedingung
Bedingung:
(damit der Datentransfer ausgeführt wird)
Besonderheiten: Name: weitere Änderungen durch die Befehlsausführung:
Anfangswert < Abzug move if below - keine -
Anfangswert < Abzug move if less - keine -
Anfangswert <= Abzug move if below or equal - keine -
Anfangswert <= Abzug move if less or equal - keine -
Anfangswert == Abzug move if equal - keine -
Anfangswert != Abzug move if not equal - keine -
Anfangswert >= Abzug move if above or equal - keine -
Anfangswert >= Abzug move if greater or equal - keine -
Anfangswert > Abzug move if above - keine -
Anfangswert > Abzug move if greater - keine -
carry flag (cf) == 0 move if not carry flag - keine -
carry flag (cf) == 1 move if carry flag - keine -
overflow flag (of) == 0 move if not overflow flag - keine -
overflow flag (of) == 1 move if overflow flag - keine -
parity flag (pf) == 0 move if not parity flag - keine -
parity flag (pf) == 1 move if parity flag - keine -
sign flag (sf) == 0 move if not sign flag - keine -
sign flag (sf) == 1 move if sign flag - keine -
zero flag (zf) == 0 move if not zero flag - keine -
zero flag (zf) == 1 move if zero flag - keine -

Befehle ohne Bedingung
Besonderheiten: Name: weitere Änderungen durch die Befehlsausführung:
bit test
  • es werden folgende Flaggen auf unbestimmte Werte gesetzt:
    • auxiliary carry flag (af),
    • overflow flag (of),
    • parity flag (pf) und
    • sign flag (sf)
bit test and complement
  • Nachdem das Bit ausgelesen wurde, wird es in der Quelle invertiert.
  • es werden folgende Flaggen auf unbestimmte Werte gesetzt:
    • auxiliary carry flag (af),
    • overflow flag (of),
    • parity flag (pf) und
    • sign flag (sf)
bit test and reset
  • Nachdem das Bit ausgelesen wurde, wird es in der Quelle auf "0" gesetzt.
  • es werden folgende Flaggen auf unbestimmte Werte gesetzt:
    • auxiliary carry flag (af),
    • overflow flag (of),
    • parity flag (pf) und
    • sign flag (sf)
bit test and set
  • Nachdem das Bit ausgelesen wurde, wird es in der Quelle auf "1" gesetzt.
  • es werden folgende Flaggen auf unbestimmte Werte gesetzt:
    • auxiliary carry flag (af),
    • overflow flag (of),
    • parity flag (pf) und
    • sign flag (sf)
call
  • führt zuerst etwas wie
    • push(extended instruction pointer) oder
    • push(instruction pointer)
    aus
  • Die Quelle ist immer der Wert
    • "0".
  • Das Ziel ist immer die Flagge
    • "carry flag" ("cf").
clear carry flag - keine -
  • Die Quelle ist immer der Wert
    • "0".
  • Das Ziel ist immer die Flagge
    • "direction flag" ("df").
clear direction flag - keine -
  • Die Quelle ist immer der Wert
    • "0".
  • Das Ziel ist immer die Flagge
    • "interrupt enable flag" ("if").
clear interrupt flag - keine -
compare packed data for equal - keine -
compare packed signed integers for greater than - keine -
  • Die Quelle ist immer das Register
    • "accumulator low byte" ("al") oder
    • "accumulator" ("ax").
  • Das Ziel ist immer das Register
    • "accumulator" ("ax") oder
    • "extended accumulator" ("eax").
  • Der Wert von der Quelle muss vom Variablentyp
    • "Ganzzahl mit Vorzeichen"
    sein.
convert byte to word - keine -
  • Die Quelle ist immer das höchstwertigste Bit vom Register
    • "accumulator" ("ax") oder
    • "extended accumulator" ("eax").
  • Das Ziel ist immer jedes Bit vom Register
    • "data" ("dx") oder
    • "extended data" ("edx").