Resultados da pesquisa a pedido "x86"
use a função de retorno de chamada para relatar o rastreamento de pilha
Suponha que eu tenha o seguinte: typedef struct { char *name; char binding; int address; } Fn_Symbol //definition of function symbol static Fn_Symbol *fnSymbols; //array of function symbols in a file statc int total; //number of symbol functions ...
Imprimir carros alegóricos com printf em x86 nasm de 32 bits
Estou tentando imprimir alguns carros alegóricos de 32 bits usando o assembly x86 com sabor NASM. Este é um exemplo de trabalho mínimo do que estou tentando fazer: global main extern printf, scanf section .data scan_format: db ...
Decodificando a Linguagem Assembly (Bomb Lab Phase 5)
Tudo bem, então este é o laboratório de bombas cada vez mais popular e atualmente estou na fase 5 e só estou preso em duas linhas. Aqui está o código de montagem: Dump of assembler code for function phase_5: 0x08048e29 <+0>: push %ebx 0x08048e2a ...
Qual é o significado da instrução data32 data32 nopw% cs: 0x0 (% rax,% rax, 1) no gcc inline asm?
Durante a execução de alguns testes para a otimização -O2 dos compiladores gcc, observei a seguinte instrução no código desmontado de uma função: data32 data32 data32 data32 nopw %cs:0x0(%rax,%rax,1)O que essa instrução faz? Para ser mais ...
Use ld na plataforma de 64 bits para gerar arquivos executáveis de 32 bits
Eu escrevi uma montagem que é montada com: $as --32 -o hello.o hello.sEntão eu tentei gerar um executável com: $ld -o hello hello.oIsso me dá um erro: ld: i386 architecture of input file `ConditionalBranching.o' is incompatible with ...
Transformação do modo indexado baseado em modo de endereçamento indireto (montagem x86)
Estou trabalhando corretamente na alteração de exemplos do modo complexo de endereçamento indireto em partes simples do modo de endereçamento indireto. No entanto, me deparei com um exemplo do Modo Baseado, não consigo ...
Alinhamento da memória hoje e há 20 anos
No famoso artigo "Smashing the Stack for Fun and Profit", seu autor assume uma função C void function(int a, int b, int c) { char buffer1[5]; char buffer2[10]; }e gera a saída do código de montagem correspondente pushl %ebp movl %esp,%ebp subl ...
Assembly x86 Date to Number - Quebrando uma string em seções menores
Na verdade, estou procurando ser apontado na direção certa sobre um problema. Estou procurando converter uma data no x86 Assembly do formato "DD-MMM-AAAA" para um número exclusivo, para que possa ser classificada posteriormente mais tarde e ...
convenção de chamada x86: os argumentos transmitidos pela pilha devem ser somente leitura?
Parece que os compiladores de última geração tratam os argumentos passados pela pilha como somente leitura. Observe que na convenção de chamada x86, o chamador envia argumentos para a pilha e o destinatário usa os argumentos na pilha. ...
Resposta errada da montagem DIV
Eu tenho uma parte do meu código mov di,3 mov cx,16 looop: xor dx,dx shl bx,1 adc dx,dx cmp cx,16 je cx16 (it's will dec cx and jump loop) push dx dec cx cmp cx,0 je cx0 mov ax,cx div di cmp dx,0 jne looopquando cx = 3 vou receber ax = 3 Masdiv ...