Resultados da pesquisa a pedido "x86"

3 a resposta

Intel 64 e IA-32 | Operações atômicas, incluindo aquisição / liberação semântica

De acordo com o Manual do desenvolvedor de software das arquiteturas Intel 64 e IA-32, o prefixo do sinal LOCK "garante que o processador use exclusivamente qualquer memória compartilhada enquanto o sinal é afirmado". Isso pode ser um na forma de ...

3 a resposta

Quando devo usar diretivas de tamanho em x86?

Quando usar diretivas de tamanho no x86 parece um pouco ambíguo.Este guia de montagem x86 [http://www.cs.virginia.edu/~evans/cs216/guides/x86.html]diz o seguinte: Em geral, o tamanho pretendido do item de dados em um determinado endereço ...

4 a resposta

Quando devo usar _mm_sfence _mm_lfence e _mm_mfence

Eu li o "Guia do Intel Optimization Guide para arquitetura Intel". No entanto, ainda não tenho idéia de quando devo usar _mm_sfence() _mm_lfence() _mm_mfence()Alguém poderia explicar quando estes devem ser usados ao escrever código multiencadeado?

1 a resposta

O que os prefixos E e R representam nos nomes dos registradores Intel de 32 e 64 bits?

Os nomes dos registradores de 32 bits começam com um E e os de 64 bits começam com um R. O que os E e R representam? Existe uma razão para escolher esses alfabetos? Além disso, em registros de 64 bits, também podemos ver em qualquer depurador ...

1 a resposta

Quais bits na palavra-chave x87 o FFREE ST (i) modifica?

Este exemplo foi escrito no NASM: section .bss var28: resb 28 section .text _main: ; Initialize finit fldpi ; Read Tag Word fstenv [var28] mov ax, [var28 + 8] ; move the Tag Word to axNesse ponto, ax = 0011 1111 1111 1111, o que significa ST7 = ...

1 a resposta

Por que passar um caractere para uma função altera seu valor em c?

Atualmente, estou seguindoesta pasta de trabalho [http://www.cs.bham.ac.uk/~exr/lectures/opsys/10_11/lectures/os-dev.pdf]na construção de um sistema operacional. Minha intenção é escrever um kernel de 64 bits. Eu cheguei até carregando o código ...

3 a resposta

Por que posso acessar dword / word / byte inferior em um registro, mas não superior?

Comecei a aprender assembler, e isso não me parece lógico. Por que não consigo usar vários bytes mais altos em um registro? Eu entendo a razão histórica derax->eax->ax, então vamos nos concentrarNovo Registros de 64 bits. Por exemplo, eu posso ...

1 a resposta

Inserir valores na matriz e exibir, nasm

Primeiro de tudo, esta é uma tarefa de casa. Eu tenho um loop para obter valores de dois dígitos individualmente e juntá-los fazendo uma multiplicação do primeiro dígito por 10 e adicionando com o segundo dígito para obter um número ...

1 a resposta

Empacotando dois DWORDs em um QWORD para economizar largura de banda da loja

Imagine um loop de armazenamento de carga como o seguinte, que carregaDWORDs de locais não contíguos e os armazena de forma contígua: top: mov eax, DWORD [rsi] mov DWORD [rdi], eax mov eax, DWORD [rdx] mov DWORD [rdi + 4], eax ; unroll the above ...

2 a resposta

Como saber se um registro é um "registro de uso geral"?

Estou tentando entender quais critérios um registro deve ter para ser chamado de "registro de uso geral". Acredito que um registro de propósito geral é um registro que pode ser usado para qualquer coisa (para cálculo, para mover dados de / para ...