Nota
L'accesso a questa pagina richiede l'autorizzazione. Puoi provare ad accedere o a cambiare directory.
L'accesso a questa pagina richiede l'autorizzazione. Puoi provare a cambiare directory.
La maggior parte delle istruzioni x86 continua a essere valida per x64 in modalità a 64 bit. Alcune operazioni usate raramente non sono più supportate in modalità a 64 bit, ad esempio:
Istruzioni aritmetiche decimali codificate in formato binario: AAA, AAD, AAM, AAS, DAA, DAS
BOUND
PUSHAD e POPAD
la maggior parte delle operazioni che hanno a che fare con i registri di segmento, ad esempio PUSH DS e POP DS. Le operazioni che usano i registri dei segmenti FS o GS sono ancora valide.
Il set di istruzioni x64 include aggiunte recenti a x86, ad esempio SSE 2. I programmi compilati per x64 possono usare liberamente queste istruzioni.
Trasferimento dati
X64 fornisce nuove varianti dell'istruzione MOV in grado di gestire costanti immediate a 64 bit o indirizzi di memoria.
MOV |
r,#n |
r = #n |
MOV |
rax, m |
Move contents at 64-bit address to rax. |
MOV |
m, rax |
Move contents of rax to 64-bit address. |
X64 fornisce anche una nuova istruzione per l'estensione degli operandi a 32 bit a 64 bit.
MOVSXD |
r1, r/m |
Spostare DWORD con l'estensione del segno in QWORD. |
Le normali operazioni MOV in sottoregistratori a 32 bit si estendono automaticamente a 64 bit, quindi non esiste alcuna istruzione MOVZXD.
Two SSE instructions can be used to move 128-bit values (such as GUIDs) from memory to an xmmn register or vice versa.
MOVDQA |
r1/m, r2/m |
Move 128-bit aligned value to xmmn register, or vice versa. |
MOVDQU |
r1/m, r2/m |
Spostare il valore a 128 bit (non necessariamente allineato) per registrare o viceversa. |
Conversione dei dati
CDQE |
Convert dword (eax) to qword (rax). |
CQO |
convert qword (rax) to oword (rdx:rax). |
Manipolazione delle stringhe
MOVSQ |
Move qword from rsi to rdi. |
CMPSQ |
Compare qword at rsi with rdi. |
SCASQ |
Scan qword at rdi. Compares qword at rdi to rax. |
LODSQ |
Load qword from rsi into rax. |
STOSQ |
Store qword to rdi from rax. |