Compartilhar via


Registrar o uso

O x64 a arquitetura fornece 16 registradores de propósito gerais (doravante referidas como inteiro registra), bem como registradores de 16 XMM disponíveis para uso de ponto flutuante. Registradores voláteis são transitórios registradores presumed pelo chamador a ser destruído através de uma chamada. Registradores de não-volátil são necessárias para manter seus valores em uma chamada de função e devem ser salvo pelo receptor se usado.

A tabela a seguir descreve como cada registro é usado em chamadas de função:

Registrar

Status

Use

RAX

Volátil

Registre-se o valor de retorno

RCX

Volátil

Primeiro argumento inteiro

RDX

Volátil

Segundo argumento de inteiro

R8

Volátil

Terceiro argumento de inteiro

R9

Volátil

Quarto argumento de inteiro

R10:R11

Volátil

Deve ser preservado conforme necessário pelo chamador; usados nas instruções de syscall/sysret.

R12:R15

Não-volátil

Deve ser preservado pelo chamador

RDI

Não-volátil

Deve ser preservado pelo chamador

RSI

Não-volátil

Deve ser preservado pelo chamador

RBX

Não-volátil

Deve ser preservado pelo chamador

RBP

Não-volátil

Pode ser usado como um ponteiro de quadro; deve ser preservado pelo chamador

RSP

Não-volátil

Ponteiro de pilha

XMM0

Volátil

Primeiro argumento do FP

XMM1

Volátil

Segundo argumento do FP

XMM2

Volátil

Terceiro argumento do FP

XMM3

Volátil

Quarto argumento FP

XMM4:XMM5

Volátil

Deve ser preservado conforme necessário pelo chamador

XMM6:XMM15

Não-volátil

Devem ser preservadas conforme necessário pelo receptor.

Consulte também

Referência

x 64 convenções de Software