Resultados de la búsqueda a petición "x86"

1 la respuesta

Impresión de flotantes con printf en x86 nasm de 32 bits

Estoy tratando de imprimir algunos flotantes de 32 bits usando el ensamblado x86 con sabor NASM. Este es un ejemplo mínimo de trabajo de lo que estoy tratando de hacer: global main extern printf, scanf section .data scan_format: db ...

1 la respuesta

Lenguaje ensamblador de decodificación (Bomb Lab Phase 5)

Muy bien, este es el laboratorio de bombas cada vez más popular y actualmente estoy en la fase 5 y solo estoy atrapado en dos líneas. Aquí está el código de ensamblaje: Dump of assembler code for function phase_5: 0x08048e29 <+0>: push ...

3 la respuesta

¿Cuál es el significado de la instrucción data32 data32 nopw% cs: 0x0 (% rax,% rax, 1) en gcc inline asm?

Mientras ejecutaba algunas pruebas para la optimización -O2 de los compiladores gcc, observé las siguientes instrucciones en el código desmontado para una función: data32 data32 data32 data32 nopw %cs:0x0(%rax,%rax,1)¿Qué hace esta ...

1 la respuesta

Use ld en la plataforma de 64 bits para generar un ejecutable de 32 bits

Escribí una asamblea que se ensambla con: $as --32 -o hello.o hello.sLuego intenté generar un ejecutable con: $ld -o hello hello.oMe da un error: ld: i386 architecture of input file `ConditionalBranching.o' is incompatible with i386:x86-64 ...

2 la respuesta

Transformación del modo indexado basado en modo de direccionamiento indirecto (ensamblaje x86)

Actualmente estoy trabajando en cambiar ejemplos del modo complejo de direccionamiento indirecto a piezas simples del modo de direccionamiento indirecto. Sin embargo, me he encontrado con un ejemplo del modo basado, no puedo ...

3 la respuesta

Alineamiento de memoria hoy y hace 20 años

En el famoso artículo "Smashing the Stack for Fun and Profit", su autor toma una función C void function(int a, int b, int c) { char buffer1[5]; char buffer2[10]; }y genera la salida del código de ensamblaje correspondiente pushl %ebp movl ...

1 la respuesta

Ensamblado x86 Fecha a número: división de una cadena en secciones más pequeñas

De hecho, estoy buscando que se apunte en la dirección correcta en un tema. Estoy buscando convertir una fecha en Asamblea x86 del formato "DD-MMM-AAAA" a un número único para que pueda ser ordenada por burbujas más tarde y eventualmente ...

3 la respuesta

Convención de llamada x86: ¿los argumentos pasados por la pila deben ser de solo lectura?

Parece que los compiladores de vanguardia tratan los argumentos pasados por stack como de solo lectura. Tenga en cuenta que en la convención de llamadas x86, la persona que llama empuja los argumentos a la pila y la persona que llama utiliza los ...

2 la respuesta

El ensamblaje en línea de c obtiene un "desajuste de tamaño de operando" cuando se usa cmpxchg

Estoy tratando de usar cmpxchg con ensamblaje en línea a través de c. Este es mi código: static inline int cas(volatile void* addr, int expected, int newval) { int ret; asm volatile("movl %2 , %%eax\n\t" "lock; cmpxchg %0, %3\n\t" "pushfl\n\t" ...

7 la respuesta

¿Cómo generar y ejecutar código nativo dinámicamente?

Me gustaría escribir un compilador JIT de prueba de concepto muy pequeño para un procesador de lenguaje de juguete que he escrito (puramente académico), pero tengo algunos problemas en las altitudes medias del diseño. Conceptualmente, estoy ...