Destripando una instrucción en lenguaje ensamblador X86

La función más importante en un desensamblador es la conversión o recomposición de las instrucciones en lenguaje ensamblador a partir de los códigos de operacion (OP / operation code). En la arquitectura X86, a diferencia de otras, la longitud en bytes de una instrucción, varía dependiendo de la instrucción en sí y de los operandos sobre las que ésta actúa. Últimamente, gracias en entre otros a proyectos como Capstonehemos visto el lanzamiento de desensambladores de todo tipo, así como la migración o adaptación de desensambladores previamente existentes a este motor.
Leer más

Vídeo tutoriales sobre introducción a la programación en ensamblador

Aquítenéis una buena colección de vídeos muy cortos y específicos sobre programación en ensamblador x86 (Windows). Son tutoriales de iniciación muy instructivos. Tratan desde instalación del entorno que necesitas para seguir los ejemplos, conceptos básicos, pero indispensables en el entorno ensamblador, hasta ejemplos específicos de diferentes instrucciones. El autor de los vídeos Rasim Muratovic, usa como base para los mismos el libro Assembly Language for x86 Processors.
Leer más

Assembly, arte digital en su estado más puro

No, en esta entrada no vamos a hablar del lenguaje de programación ensamblador, sino de en evento que se celebra cada año y reúne a un número importante de geeks, entusiastas, jugadores, programadores, etc. Este evento llamado Assemblyse lleva celebrando desde el año 1992. En este evento se celebran varios tipos de competiciones y actividades. Por ejemplo tenemos competiciones de juegos (eSports), a nivel profesional y amateur: Professional tournamentsDentro de la Demoscene, existen varias categorías: demos, demos de 4k, demos de 1k, demos de la vieja escuela, etc.
Leer más

Desarrolla tu propio sistema operativo para Raspberry Pi

Para aquellos que os interese la programación sistemas operativos, nada mejor que empezar sobre una plataforma sencilla y por su sencillez y precio nada como un Raspberry Pi. En este linkde la Universidad de Cambridge podemos encontrar un curso de como crear un sistema operativo simple sobre un Raspberry Pi usando lenguaje ensamblador. Aunque para el curso no se necesitan conocimientos previos sobre sistemas operativos, a bajo nivel o incluso conocimientos de ensamblador, sí que se aconseja el menor tener conocimientos sobre programación.
Leer más

Introducción al ensamblador del 6502

Los que sigáis el blog desde hace algún tiempo ya sabréis que nos gusta la programación retro, es decir, programación de tecnología antigua y obsoleta que ya no se usa, pero que en su día fueron joyas. El motivo de esta entrada es la de hablaros sobre este tutorialde introducción al lenguaje ensamblador del microprocesador MOS 6502, chip que incluía sistemas como el Atari 2600, Commodore 64 o la consola NESentre otros.
Leer más

Introducción a la programación ensamblador en Android

Ya todos sabemos que el lenguaje de programación es Java. Luego Google liberó lo que le llaman las NDK(Native Development kit), un conjunto de herramientas y librerías que te permiten tener un poco más de control sobre tus aplicaciones. En este caso programamos en C o C++ y entre medio hemos visto también la posibilidad de programar usando lenguajes de script como Lua, Python, PHP, etc. En esta entradapodemos ver un tutorial compuesto por varias partes, en estos momentos 8, donde nos guían desde los más básico como preparar nuestro entorno hasta la ejecución de código ensamblador en Android usando las anteriormente mencionadas NDK, pasando una ligera introducción al ensamblador de micros ARM.
Leer más

Introducción a ensamblador, videotutorial

Una vez más en SecurityTubepodemos encontrar otra buena colección de vídeos, esta vez sobre una introducción al ensamblador.
Leer más

ARobots

No, no usas joystick, pad o ratón. Tu jugador tienes que programarlo en ensamblador 8086. El juego acepta hasta 6 robots en una misma batalla. Los robots van perdiendo vida o incrementando el daño cada vez que hay una colisión o cuando un misil explota a menos de 40 metros del mismo. Un robot tiene una vida de 100 puntos de daño. La velocidad de éstos es de 1 metro por segundo y les toma 1 segundo para acelerar 0.
Leer más

La demo "1995", una de las últimas joyas de la demoscene

http://www.demoscene.tv/prod.php?id_prod=12612Visto en: http://www.pixfans.com/demoanalisis-1995/PD: algunos de nosotros también tenemos nuestro pasado de demoscene, pero eso es otra historia … ;)
Leer más