Resultados da pesquisa a pedido "x86"

2 a resposta

Como desmontar o código do setor de inicialização x86 de 16 bits no GDB com "x / i $ pc"? É tratado como 32 bits

Por exemplo, com um setor de inicialização que o BIOS imprimea para a telamain.asm: org 0x7c00 bits 16 cli mov ax, 0x0E61 int 0x10 hlt times 510 - ($-$$) db 0 dw 0xaa55Então: nasm -o main.img main.asm qemu-system-i386 -hda main.img -S -s & gdb ...

4 a resposta

Intrínsecas SSE2 - comparando números inteiros não assinados

Estou interessado em identificar valores excedentes ao adicionar números inteiros de 8 bits não assinados e saturar o resultado em 0xFF: __m128i m1 = _mm_loadu_si128(/* 16 8-bit unsigned integers */); __m128i m2 = _mm_loadu_si128(/* 16 8-bit ...

1 a resposta

tendo problemas com a fase 4 do laboratório de bombas [fechado]

Estou com muita dificuldade para entender o que fazer aqui. Eu pensei que um dos números com os quais eu seria capaz de trabalhar seria 85, mas parece que estou errado com isso. Eu sei que só devo obter 2 casas decimais, mas não consigo fazê-lo. ...

1 a resposta

O que será usado para a troca de dados entre threads em execução em um Core com HT?

Hyper-Threading [https://en.wikipedia.org/wiki/Hyper-threading]A tecnologia é uma forma de tecnologia multithreading simultânea introduzida pela Intel. Esses recursos incluem o mecanismo de execução,caches e interface de barramento do sistema; o ...

1 a resposta

Desenrole o loop e faça soma independente com vetorização

Para o loop a seguir, o GCC somente vetorizará o loop se eu disser para usar a matemática associativa, por exemplo. com-Ofast. float sumf(float *x) { x = (float*)__builtin_assume_aligned(x, 64); float sum = 0; for(int i=0; i<2048; i++) sum += ...

2 a resposta

Como obtenho a entrada do usuário com o NASM?

O programa precisa coletar uma sequência simples do usuário e exibi-la novamente. Eu recebi o programa para receber informações do usuário, mas não consigo armazená-lo. Aqui está o que eu tenho até agora: BITS 32 global _main section .data ...

4 a resposta

Dividindo em Assembler x86

Minha faculdade me deu um exercício: 1. Crie um novo documento no Jasmin 2. Use o AL-Register para adicionar 9 a 8. 3. Subtraia 2. 4. Divida por 7. Minha solução é: mov al,9 add al,8 sub al,2Mas como faço para dividir por 7? Eu tentei ...

2 a resposta

Passando do registro DX: AX para o registro único de 32 bits

Estou tendo um problema ao adicionar um produto de uma multiplicação de 16 bits. Eu quero multiplicar um ano como 2015, pelo 365, para isso eu mov dx, 0 ; to clear the register mov ax, cx ; cx holds the year such as 2015 mov dx, 365 ; to use as ...

2 a resposta

Pergunta x86 LOCK em CPUs multi-core

É verdade que o prefixo de comando x86 ASM "LOCK" faz com que todos os núcleos congelem enquanto a instrução a seguir "LOCK" está sendo executada? Eu li isso em um post do blog e não faz sentido. Não consigo encontrar nada que indique se isso é ...

1 a resposta

Como uso o prefixo LOCK ASM para ler um valor?

Eu sei como usar LOCK para incrementar com segurança um valor de thread: lock inc [J];Mas como leio [J] (ou qualquer valor) de maneira segura para threads? O prefixo LOCK não pode ser usado com mov. E se eu fizer o seguinte: xor eax, eax; lock ...