Resultados da pesquisa a pedido "x86"
Como $ trabalha exatamente no NASM?
message db "Enter a digit ", 0xA,0xD Length equ $- messageÉ usado para obter o comprimento de uma string? Como isso funciona internamente?
Como a implementação do módulo (%) do GCC funciona e por que não usa a instrução div?
Eu estava tentando descobrir como calcular o módulo 10 no assembly, então eu compilei o seguinte código c no gcc para ver o que ele veio. unsigned int i=999; unsigned int j=i%10;Para minha surpresa, consegui movl -4(%ebp), %ecx movl ...
Qual é a penalidade de misturar os esquemas codificados em EVEX e VEX?
É umproblema conhecido [https://stackoverflow.com/questions/41303780/why-is-this-sse-code-6-times-slower-without-vzeroupper-on-skylake] que misturar instruções codificadas em VEX e não-VEX tem uma penalidade e o programador deve estar ciente ...
Como os caches da CPU L1, L2, L3 podem ser desativados nos modernos chips x86 / amd64?
Toda CPU moderna de alto desempenho da arquitetura x86 / x86_64 possui alguma hierarquia de caches de dados: L1, L2 e, às vezes, L3 (e L4 em casos muito raros), e os dados carregados da / para a RAM principal são armazenados em cache em alguns ...
adicionando dispositivos cliente i2c em x86_64
Na minha placa x86_64, há um barramento i2c saindo de um dispositivo MFD. Existem dispositivos neste barramento i2c. Eu sou capaz de detectar esses dispositivos usando o programa i2cdetect. # i2cdetect -y 0 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- ...
Confiabilidade do perfil do tempo de desmontagem do Xcode Instrument
Eu criei um perfil do meu código usando o criador de perfil de tempo do Instrument e, ampliando o zoom para a desmontagem, aqui está um trecho de seus resultados: [/imgs/dAzUD.png] Eu não esperaria ummov instruções para levar 23,3% do tempo ...
É possível realizar alguns cálculos dentro da RAM?
Teoricamente, existe alguma maneira de realizar cálculos na RAM, usando instruções relacionadas à memória, comomove, clflush ou o que for, como umxor entre duas linhas adjacentes, por exemplo? Com meu conhecimento limitado sobre RAM e montagem, ...
Maneira fácil de armazenar em cache para coletar resultados de vários threads
ConsiderarN threads fazendo algumas tarefas assíncronas com pequeno valor de resultado comodouble ouint64_t. Então sobre8 valores de resultado podem caber em uma única linha de cache da CPU.N é igual ao número de núcleos da CPU. Por um lado, se ...
O que acontece quando você usa um prefixo de substituição de memória, mas todos os operandos são registradores?
O que acontece quando você usa um prefixo de substituição de memória, mas todos os operandos são registradores? Então, digamos que você codifiquemov eax, ebx ouadd eax, ebxe o padrão é 32 bits, mas você usa uma substituição de 67 h. Como o ...
O que acontece quando diferentes núcleos da CPU gravam no mesmo endereço de RAM sem sincronização?
Vamos supor que 2 núcleos estão tentando gravar valores diferentes no mesmo endereço de RAM (1 byte), no mesmo momento (mais-menos eta) e sem usar instruções intertravadas ou barreiras de memória. O que acontece nesse caso e qual valor será ...