Editor de ensamblador MIPS con simulador incluido

MARS (MIPS Assembler and Runtime Simulator) es un IDE (entorno de desarrollo integrado) que soporta el lenguaje ensamblador MIPS y además integra un simulador de ejecución a la vez. Es un proyecto orientado a la enseñanza. Está escrito en Java y requiere por lo menos la versión 1.5 de éste. Algunas de las características son: Depuración paso a paso Permite editar múltiples ficheros (pestañas) Uso de breakpoints Mostrar los valores en hexadecimal o decimal Línea de comandos para evaluación rápida de los programas Control de velocidad de ejecución Registros de coma flotante Para ver las características por cada versión liberada: aquí.
Leer más

Servidor Web (sencillo) en ASM x86

Muy útil para estudiar el código y comprender el funcionamiento básico de un servidor web y repasar algo de ensamblador. Sólo incluye las funciones básicas, responde a peticiones GET y permite descarga de ficheros. Puedes verlo y descargarlo aquí.
Leer más

BareMetal OS, un sistema operativo para geeks de verdad

BareMetal es un sistema operativo (de 16KB) para ordenadores basados en la arquitectura x86-64. Todo el SO está escrito en ensamblador, pero las aplicaciones se pueden escribir tanto en ASM como en C/C++. Está destinado sobre todo para computación avanzada (el famoso “Hello World!” en BareMetal, compilado ocupa 31 bytes), sistemas embebidos o educación.Necesitas un loader para ejecutarlo, se llama Pure64. Este lanzador es el que prepara el acceso para que BareMetal OS pueda acceder a todos los rincones de la CPU.
Leer más

Introducción a ensamblador, videotutorial

Una vez más en SecurityTube podemos encontrar otra buena colección de vídeos, esta vez sobre una introducción al ensamblador. Assembly Primer For Hackers (Part 1) System Organization Assembly Primer For Hackers (Part 2) Virtual Memory Organization Assembly Primer For Hackers (Part 3) Gdb Usage Primer Assembly Primer For Hackers (Part 4) Hello World Assembly Primer For Hackers (Part 5) Data Types Assembly Primer For Hackers (Part 6) Moving Data Assembly Primer For Hackers (Part 7) Working With Strings Assembly Primer For Hackers (Part 8 ) Unconditional Branching Assembly Primer For Hackers (Part 9) Conditional Branching Assembly Primer For Hackers (Part 10) Functions Assembly Primer For Hackers (Part 11) Functions Stack
Leer más

Tabla de instrucciones ensamblador del Intel 80x86

Esto no es más que un PDF (aquí en inglés) muy bien organizado con las instrucciones de ensamblador del 80x86, los registros generales y los bits de estado o bandera (flag). Página original.
Leer más

El Universo Digital del IBM PC, AT y PS/2

Este libro ha sido una de mis grandes referencias dentro de este mundo de la Informática. Es una completa guía de programación (en ensamblador y lenguaje C) de sistemas para los microprocesadores 80x86 y Pentium. Puede que esté un poco desfasado pero aún es muy útil (e indispensable para entender el funcionamiento de esta arquitectura) si quieres programar en ensamblador y C a bajo nivel. De todas formas todos (o casi todos) los ejemplos descritos y técnicas de programación son funcionales hoy día.
Leer más

Los mejores programas de depuración (debugging) y desensambladores

 

Si te dedicas a esto de la infomática desde hace tiempo, sabrás que dominar el ensamblador implica dominar totalmente el ordenador. A veces la única forma de entender lo que realmente hace un programa es estudiar su código ensamblador, ya que de la mayoría puede que no tengas el código fuente en su lenguaje original. Otra de las grandes utilidades de usar estos programas es el análisis para la búsqueda de programas maliciosos o usarlos cómo herramientas para la ingeniería inversa.

Estas son algunas de las mejores herramientas para desemsamblar y hacer debugging de programas:


Leer más