Configuraciones, Explicaciones, Sistemas y mas

Hacer un sencillo menu en lenguaje Ensamblador usando FASM


a continuacion presentaremos un sencillo codigo en lenguaje ensamblador, con sintaxis para compilador FASM
org 100h ; indicamos en que area de memoria se va a iniciar el programa regularmente se inicia en 100h
Menu: ;esta es una etiqueta se llama menu que sera donde mostraremos las opciones al usuario
     mov ah,0
     mov al,3h ;modo texto
     int 10h ; interrupcion de video

     mov ax,0600h ;limpiar pantalla
     mov bh,0fh ;0 color de fondo negro, f color de letra blanco
     mov cx,0000h
     mov dx,184Fh
     int 10h

     mov ah,02h
     mov bh,00
     mov dh,00
     mov dl,00
     int 10h
     mov dx, mostrarMenu ;nombre del mensaje
     mov ah,09 ; mov ah,09 sirve para presentar el msj en pantalla
     int 21h ;interrupcion de video

     mov ah,08 ;pausa y captura de datos 08 espera que el usuario presione una tecla
     int 21h

     cmp al,49 ; ascii 49 = numero 1 compara lo que tiene el registro ah con el ascii 49 en el reg al
     je op1 ; salto condicional jump equals opcion 1 saltar si es igual a la opcion 1

     cmp al,50 ;compara con opcion 2 apellido
     je op2

     cmp al,51 ;compara con opcion 3 carne
     je op3

     cmp al,52 ;compara con opcion 4 salir
     je op4

     mostrarMenu db 'Universidad San Carlos de Guatemala',13,10 ; 13 es un 'enter' 10 un espacio
                 db 'Facultad de Ingenieria',13,10
                 db 'Escuela de Ciencias y Sistemas',13,10
                 db 'Arquitectura de Computadoras y Ensambladores 1',13,10,13,10
                 db '-.-.MENU.-.-',13,10,13,10
                 db '1. Ver Nombre',13,10
                 db '2. Ver Apellido',13,10
                 db '3. Ver Carne',13,10
                 db '4. Salir',13,10,13,10
                 db 'Seleccione una Opcion$',13,10
a continuacion unas imagenes del menu

This slideshow requires JavaScript.

un video explicativo del uso del menu PARA DESCARGAR EL ARCHIVO FUENTE MENU

5 responses

  1. jessica

    hola hola muy buen aporte pero no logro hacer correr tu programa podrias ayudarmeeeee?

    September 29, 2014 at 7:39 pm

    • Hola Jess, tienes que correrlo exactamente con el FASM para que funcione, cada emulador de ASM tiene su propia sintaxis y es por eso seguramente que no te funciona, saludos!

      October 2, 2014 at 10:02 pm

  2. damian

    hola, tengo una consulta, la opción salir del programa detiene la consola pero no la cierra, habrá otro comando para que la cierre?

    November 5, 2014 at 10:12 pm

    • Lo siento Damian eso si te lo debo!

      November 5, 2014 at 10:40 pm

  3. Miguel

    Aunque el tema es del año pasado aun así el ensamblador en 16 bits me parece que para los tiempos que corren las universidades debieran actualizarse bastante este material va a servir de poco al estudiante, cuando se enfrente a códigos de 64 bits y camino de mas estarán en un desierto intelectual monumental

    July 23, 2015 at 1:19 pm

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s