Tag: ANDROID-X86
Hasta donde entiendo, algunos objetos de la sección “datos” a veces necesitan alineación en el ensamblaje x86. Un ejemplo que he encontrado es al usar movaps en x86 SSE: necesito cargar una constante especial para xors posteriores en un registro XMM. El registro XMM tiene 128 bits de ancho y . . . Read more
Tengo el carácter displayChar que muestra en el arranque. ¿Cómo agrego writeHexBytes que luego se muestra en la pantalla usando writeHexByte en un bucle y writeHexWord? *writeHexByte espera un registro de 8 bits lo muestra llamando convertHexNibble y usando writeChar *writeHexWord espera un registro o memoria de 16 bits parámetro . . . Read more
¿Existe alguna forma de manejar una excepción de violación de acceso en lenguaje ensamblador? .inicio: MOV EAX,[0x400000] MOV DWORD [EAX],0x00 JMP .inicio Existe tal código y el valor de 0x400000 es la memoria virtual recuperada por un hilo. El área de memoria luego es liberada por VirtualFree en momentos aleatorios . . . Read more
Estoy intentando escribir una biblioteca (llamada mylib.so) utilizando la biblioteca Capstone C++ y LD_PRELOAD para encontrar dónde se encuentran las instrucciones del sistema en un archivo binario (este archivo binario contiene algunas escrituras del sistema en ensamblador inline) y qué sistema es ese (por ejemplo, SYSopen, SYSread, etc.). Utilizo el . . . Read more
Este código funciona como se pretende: section .bss var2: DB ? X: DW ? ; funciona Con las reservas en orden opuesto, el código no se ensambla: section .bss X: DW ? var2: DB ? ; error con líneas en otro orden Obtuve este error, aunque no uso esta etiqueta, . . . Read more