Resultados da pesquisa a pedido "assembly"

2 a resposta

Como calcular o lembrete de divisão na montagem SPARC?

qui está o pseudo-código que calcula a divisão de dois números inteiros positivo registro @HR salva lembrete e LR salva dividendos. (e eventualmente salva a raiz) No entanto, acho que esse algoritmo tem algum problem Por que esse algoritmo às ...

2 a resposta

Teste se o valor no EAX é igual a qualquer valor em uma matriz x86

Estou tentando testar se o valor aleatório gerado no eax é igual a qualquer valor em uma matriz que eu aloquei. O loop externo gera a matriz e a grava na tela e na matriz. O loop interno deve testar se o valor existe na matriz. Sei que não estou ...

3 a resposta

Como um gerenciador de inicialização pode ler um DVD (cd)?

Eu tenho um bootloader de primeiro estágio escrito, em assembly. Eu preciso que ele carrega o carregador de inicialização do segundo estágio a partir do dvd (ou cd). Eu só encontrei exemplos onde ele lê de floopy ou hdd. A interrupção usada é ...

2 a resposta

Como sair de um loop na montagem

Eu tenho um loop com algumas condições, o que significa que, quando o loop terminar, ele passará pelo segmento de loop restante. Como forçar o programa a pular o segmento de loop restante, mesmo se o ecx já estiver em

3 a resposta

Por que os programas de montagem têm segmentos separados?

Por que os programas de montagem carregam segmentos .data/.bss e.text) em blocos de memória separados, em vez de carregar os dados e os segmentos de código em um único bloco de memória? Meu palpite é que o sistema operacional pode, então, mover ...

10 a resposta

Qual é a maneira mais rápida de converter float para int em x86

Qual é a maneira mais rápida de converter um número de ponto flutuante em int em uma CPU x86. De preferência em C ou montagem (que pode ser alinhada em C) para qualquer combinação do seguinte: Flutuação de 32/64/80 bits -> inteiro de 32/64 bits ...

1 a resposta

Por que dados e segmentos de pilha são executáveis?

Acabei de notar que meu programa simples tem seus segmentos de dados e pilha executáveis. Eu vi isso em / proc / [pid] / maps, e um código simples confirmo Por exemplo ; prog.asm section .data code: db 0xCC ;int3 section .text global _start ...

3 a resposta

Por que o gcc força o PIC para bibliotecas compartilhadas x64?

Tente compilar código não PIC em uma biblioteca compartilhada em x64 comgcc resulta em um erro, algo como: /usr/bin/ld: /tmp/ccQ2ttcT.o: relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with ...

2 a resposta

C # Teórico: Escreva um JMP em uma codecave em asm

Suponhamos que eu tenha alocado o endereço onde minha codecave é colocada usandoVirtualAllocEx (retorna o endereço) e escrevo meu código nesse endereço usandoWriteProcessMemory(). Aqui está a pergunta: Como eu escrevo um salto na minha ...

2 a resposta

Instruções de salto no conjunto MIPS

Aqui está um código de montagem do MIPS que escrevi para testar a instrução de salto: addi $a0, $0, 1 j next next: j skip1 add $a0, $a0, $a0 skip1: j skip2: add $a0, $a0, $a0 add $a0, $a0, $a0 skip2: j skip3 loop: add $a0, $a0, $a0 add $a0, ...