x86_64 - Opcode-Karte. Möglicher Fehler?

8

Ich arbeite an der Intel Opcode Map für x86_64, vol2, Abschnitt B.2.1

Ich habe ein Problem mit der Anweisung pop .

%Vor%

Das Präfix 0101 0101 , das anscheinend mit wordregisters verwendet wird, nervt mich hier wirklich, weil ich keinen Nutzen dafür finden kann.

Auch nachdem ich den Befehl an objcopy oder einen anderen Disassembler gesendet habe, sehe ich ihn nie.

%Vor%

Ich kann jedoch die Teile 1000 1111 : 11 000 reg16 und 0100 000B : 0101 1 reg16 verstehen.

Also, was ist mit dem 0x55 ?

    
Amy Lindsen 17.12.2015, 12:00
quelle

1 Antwort

3

Wenn Sie die CPU auf x86_64 setzen, erhalten Sie von einem Disassembler

%Vor%

Und ein Klick auf 55 in dieser Referenz zeigt auch auf push .

Die pop Befehle haben das Bit 3 (4 th ) an 1 , das push hat es an 0 , wie in 0x55.

Es gibt definitiv einen Fehler in der Dokumentation, da die Codelogik der CPU-Befehle und andere im Netz verfügbare Elemente eindeutig 0x55 als Push-Operation anzeigen.

    
Ring Ø 17.12.2015, 12:26
quelle

Tags und Links