Resultados da pesquisa a pedido "assembly"
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 ...
Posição do cursor do idioma do assembler Turbo, deslocamento
Demos uma instrução para tornar o texto CSC 112.1 centralizado. Eu usei instrução DB e deslocamento. Este é o meu código .model small .stack .data c db 10,13,10,13," лллл ",10,13 db " лллллл ",10,13 db "лл лл",10,13 db "лл ",10,13 db "лл ",10,13 ...
É 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, ...
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 ...
Existem termos como o modo de endereçamento direto / indireto real nos manuais do Intel x86
Para dar um pouco de fundo, eu queria estudar como as instruções x86 são codificadas / decodificadas manualmente. Me deparei com oModR/M eSIB bytes e parece que entender os modos de endereçamento x86 é fundamental para entender o esquema de ...
Interpretando o código de montagem
Algum intérprete de montagem por aí? O que estou olhando: Eu tenho algum código de firmware de montagem que desejo executar, mas não no hardware real.Gostaria de executar o código e ver o que está fazendo.Então, existe algum tipo de simulador ...
Por que o NASM não tem problemas com mnemônicos de instruções válidos como nomes de símbolos em operandos?
Eu escrevi o seguinte programa simples, mas o nasm se recusa a compilá-lo. section .text global _start _start: mov rax, 0x01 mov rdi, 0x01 mov rsi, str mov rdx, 0x03 syscall mov rax, 60 syscall segment .data str db 'Some string' nasm -f elf64 ...
As comparações de ponteiros devem ser assinadas ou não assinadas no x86 de 64 bits?
Ao escrever a montagem do espaço do usuário x86 e comparar dois valores de ponteiro, devemos usarassinado condições comojl ejge ounão assinado condições comojb ejae? Intuitivamente, penso nos ponteiros como não assinados, executando de 0 a 2 ...
Tornar os armazenamentos de memória anteriores visíveis para as cargas de memória subsequentes
Quero armazenar dados em uma grande variedade com_mm256_stream_si256() chamado em um loop. Pelo que entendi, é necessária uma cerca de memória para tornar essas alterações visíveis para outros threads. A descrição de_mm_sfence() diz Execute uma ...