AMD64: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
m Foram revertidas as edições de 201.68.42.70 devido a vandalismo (usando Huggle) (3.4.9)
Etiquetas: Huggle Reversão
Linha 19:
Os projetistas tiveram a oportunidade de fazer outras melhorias também. As alterações mais significativas são:
 
* '''Manipular inteiros de 64-bit:''' Todos os registradores de uso geral (GPRS) são expandidos de 32 bits para 64 bits, e todas as operações aritméticas e lógicas, memória para registro e registro para memória, etc., podem agora operar diretamente sobre inteiros de 64-bit. Adições ao endereço de pilha estão sempre em 8 bytes, e ponteiros são 8 bytes de tamanho.
 
* '''Registradores adicionais:''' Além de aumentar o tamanho dos registradores de uso geral, o número deles é aumentadaaumentado de oito (ou seja, EAX, EBX, ECX, EDX, EBP, ESP, ESI, EDI), em x86-32, para dezesseis (isto é, RAX, RBX, RCX, RDX, RBP, RSP, RSI, RDI, R8, R9, R10, R11, R12, R13, R14, R15). É conseqüentementeconsequentemente possível manter mais variáveis locais nos registradores do que na pilha, e constantes frequentemente acessadas; os argumentos para sub-rotinas pequenas e rápidas podem igualmente ser passados nos registradores em maior medida. Entretanto, o AMD64 ainda tem poucos registradores do que muitos processadores comuns do RISC (que têm tipicamente 32-64 registradores) ou VLIW-como máquinas tais como o IA-64 (que tem 128 registradores).
 
* '''Registradores adicionais do MMX (SSE):''' Similarmente, o número de registradores de 128 bit do MMX (usados em instruções Streaming-SIMD) é aumentado igualmente de 8 a 16.
 
* '''Espaço de endereço virtual maior:''' Os modelos de processadores atuais que executam a arquitetura AMD64 podem endereçar até 256 TB(2^<sup>48</sup> ou 281.474.976.710.656 bytes) do espaço de endereço virtual. Este limite pode ser aumentado nas implementações futuras a 16 EB (2^<sup>64</sup> ou 18.446.744.073.709.551.616 bytes). Isto é comparado a apenas 4 GB (2^<sup>32</sup> ou 4.294.967.296 bytes) para x86 de 32 bits. Isto significa que arquivos muito grandes podem ser operados pelo mapeamento de todo o arquivo para o processo de endereçamento de espaço (que por vezes é mais rápido do que trabalhar com chamadas de leitura/gravação do arquivo), em vez de ter de mapear regiões do arquivo para dentro e fora do espaço de endereçamento.
 
* '''Espaço de endereço físico maior:''' As execuções atuais da arquitetura AMD64 podem endereçar até 1 TB (2^<sup>40</sup> ou 1.099.511.627.776 bytes) doda RAM; a arquitetura permite estender esta a 4 PB (2^<sup>52</sup> ou 4.503.599.627.370.496 bytes) no futuro (limitado pelo formato da entrada da tabela de páginas). No modo legado, a extensão do endereço físico (PAE) é incluída, enquanto está na maioria de processadores x86 de 32 bits atuais, permitindo o acesso a um máximo de 64 GB (2^<sup>36</sup> ou 68.719.476.736 bytes).
 
* '''Ponteiro de Instrução de acesso a dados relativos: ''' As instruções podem agora referenciar os dados relativos à instrução ponteiro (registrador RIP). Isto faz a posição do código ser independente, como é usado frequentemente em bibliotecas compartilhadas e em código carregados no tempo de execução, e mais eficiente.