ASSEMBLY

    Destripando una instrucción en lenguaje ensamblador X86

    CheatSheet.png

    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 Capstone hemos visto el lanzamiento de desensambladores de todo tipo, así como la migración o adaptación de desensambladores previamente existentes a este motor.

    Aug 4, 2015
    ClasesProgramación

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

    SpeakAssemblySmall.png

    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.

    Jun 3, 2014
    Programaciónvideos

    Assembly, arte digital en su estado más puro

    header-bg.jpg

    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 Assembly se 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:

    Aug 20, 2013
    Demoscene

    Desarrolla tu propio sistema operativo para Raspberry Pi

    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 link de 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.

    Sep 3, 2012
    ProgramaciónHardwareLinux

    Introducción al ensamblador del 6502

    asm6502 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 tutorial de introducción al lenguaje ensamblador del microprocesador MOS 6502, chip que incluía sistemas como el Atari 2600, Commodore 64 o la consola NES entre otros.

    Jul 9, 2012
    ProgramaciónRetrocomputer

    Introducción a la programación ensamblador en Android

    android-introduce-assembly.jpg

    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 entrada podemos 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.

    Sep 16, 2011
    ProgramaciónAndroid

    Tabla de instrucciones ensamblador del Intel 80x86

    intelcodetable-es.gif

    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.

    Feb 17, 2011
    Programación

    ARobots

    arena_arobots.png

    ARobots es un juego de batalla entre robots que se desarrolla en un área de 1 km cuadrado.

    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.01 metros, desacelerar 0.05 m o rotar 10 grados.

    Jan 21, 2011
    JuegosProgramación

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

     

    Ya que NOP ha publicado el video de la fantástica demo "Second Reality" de Future Crew, voy a retomar un poco el tema de la demoscene.

    Que tiempos aquellos por 1995, momento cumbre cuando grupos como Iguana o Future Crew llenaban de obras de arte todas las party y las bbs.

    He leido en PixFans un análisis de una demo bastante reciente, 2006, del grupo Kewlers que se presentó al evento más famoso de las demos, la Assembly (que por cierto continúa). Os puedo decir que es realmente impresionante. Ahora se usa la potencia gráfica de las tarjetas de video y los efectos ya son algo realmente espectaculares, sobre todo pensando que el código está programado, no hay nada de video y el render es en tiempo real.

    Jan 5, 2009
    ProgramaciónVarios