Close Menu
    Facebook X (Twitter) Instagram
    Facebook YouTube LinkedIn
    Industry SurferIndustry Surfer
    Inicio - Programación en lenguaje ensamblador del microcontrolador 8051
    Cursos 8051 Microcontroller

    Programación en lenguaje ensamblador del microcontrolador 8051

    9 Mins Read Cursos 8051 Microcontroller
    Facebook Twitter Pinterest LinkedIn Tumblr Email
    Programación en lenguaje ensamblador del microcontrolador 8051
    Share
    Facebook Twitter LinkedIn Pinterest Email

    En el tutorial anterior del microcontrolador 8051, analizamos el conjunto de instrucciones y los modos de direccionamiento del microcontrolador 8051. En este tutorial, veremos la programación en lenguaje ensamblador del microcontrolador 8051, la estructura del lenguaje ensamblador 8051, programas de muestra y más.

    Antes de entrar en los detalles del lenguaje ensamblador y la programación para microcontroladores 8051, comprendamos rápidamente los lenguajes de programación comunes (específicos de los microcontroladores) y los tipos de lenguajes de programación.

    descripción general

    palanca

    • ¿Qué es un lenguaje de programación?
      • Lenguaje de máquina
      • lenguaje ensamblador
      • lenguaje de alto nivel
    • ¿Por qué lenguaje ensamblador?
    • Estructura del lenguaje ensamblador del microcontrolador 8051
      • etiqueta
      • orden
      • comentario
    • Directivas del lenguaje ensamblador del microcontrolador 8051
      • ORG – Establecer origen
      • DB – Definición de bytes
      • DW – Definición de palabra
      • EQU – equivalente
      • fin
    • Ejemplos de programación en lenguaje ensamblador del microcontrolador 8051
      • Ejemplo 1
      • Ejemplo 2

    Tabla de contenido

    • ¿Qué es un lenguaje de programación?
      • Lenguaje de máquina
      • lenguaje ensamblador
      • lenguaje de alto nivel
    • ¿Por qué lenguaje ensamblador?
    • Estructura del lenguaje ensamblador del microcontrolador 8051
      • etiqueta
      • orden
      • comentario
    • Directivas del lenguaje ensamblador del microcontrolador 8051
      • ORG – Establecer origen
      • DB – Definición de bytes
      • DW – Definición de palabra
      • EQU – equivalente
      • fin
    • Ejemplos de programación en lenguaje ensamblador del microcontrolador 8051
      • Ejemplo 1
      • Ejemplo 2
    • Artículo relacionado:

    ¿Qué es un lenguaje de programación?

    Programar en el sentido de un microcontrolador (o cualquier computadora) significa escribir una secuencia de instrucciones que un procesador ejecuta en un orden específico para realizar una tarea predefinida. La programación también incluye instrucciones de depuración y resolución de problemas y secuencias de instrucciones para garantizar que se realicen las tareas deseadas.

    Como cualquier otro lenguaje, los lenguajes de programación tienen vocabulario, gramática y reglas específicas. Existen tres tipos o niveles de lenguajes de programación para los microcontroladores 8051. Estos niveles se basan en qué tan similares son las declaraciones en el lenguaje con las operaciones y tareas realizadas por un microcontrolador.

    Los tres niveles de lenguajes de programación son:

    • Lenguaje de máquina
    • lenguaje ensamblador
    • lenguaje de alto nivel

    Lenguaje de máquina

    En lenguaje de máquina, o código de máquina, las instrucciones se escriben como patrones de bits binarios, o combinaciones de unos y ceros binarios, y se almacenan como niveles de voltaje ALTO y BAJO. Este es el nivel más bajo de lenguaje de programación, el que realmente puede entender un microcontrolador o microprocesador.

    lenguaje ensamblador

    El siguiente nivel de lenguajes de programación es el lenguaje ensamblador. Dado que todas las instrucciones en lenguaje de máquina o código constan de unos y ceros, es muy difícil para los humanos programar usándolo.

    El lenguaje ensamblador es una representación pseudoinglés del lenguaje de máquina. El lenguaje ensamblador del microcontrolador 8051 es una combinación de palabras similares al inglés llamadas mnemónicos y códigos hexadecimales.

    También es un lenguaje de bajo nivel y requiere un amplio conocimiento de la arquitectura del microcontrolador.

    lenguaje de alto nivel

    El nombre lenguaje de alto nivel significa que no hay que preocuparse por la arquitectura del microcontrolador u otros detalles internos, y utiliza palabras y declaraciones que los humanos pueden entender fácilmente.

    Ejemplos de lenguajes de alto nivel incluyen BASIC, C Pascal, C++ y Java. Un programa llamado compilador convierte un programa escrito en un lenguaje de alto nivel en código de máquina.

    ¿Por qué lenguaje ensamblador?

    Aunque es más fácil trabajar con lenguajes de alto nivel, las ventajas del lenguaje ensamblador se señalan por las siguientes razones.

    • Los programas escritos en ensamblador se ejecutan más rápido y ocupan menos memoria.
    • El lenguaje ensamblador le permite utilizar directamente todas las funciones de un microcontrolador.
    • El lenguaje ensamblador permite un control directo y preciso de todos los recursos del microcontrolador, como puertos de E/S, RAM y SFR.
    • En comparación con los lenguajes de alto nivel, el lenguaje ensamblador tiene menos reglas y restricciones.

    Lea también este interesante artículo. Conjunto de instrucciones del microcontrolador 8051

    Estructura del lenguaje ensamblador del microcontrolador 8051

    Esta sección describe la estructura o sintaxis del lenguaje ensamblador del microcontrolador 8051. Cada línea o declaración en un programa en lenguaje ensamblador del microcontrolador 8051 consta de tres campos: una etiqueta, una instrucción y un comentario.

    La disposición u orden en que aparecen estos campos se muestra a continuación.

    [Label:] Instrucciones [//Comments]

    Nota: Los corchetes en las etiquetas y comentarios significan que estos campos son opcionales y no están disponibles en todas las declaraciones del programa.

    Antes de analizar estos tres campos, veamos primero un ejemplo de cómo se ve una declaración o línea típica en el lenguaje ensamblador del microcontrolador 8051.

    Etiqueta de prueba: MOV A, 24H; este es un comentario de muestra

    En la declaración anterior, “TESTLABEL” es el nombre de la etiqueta, “MOV A, 24H” es la instrucción y “ESTO ES UN COMENTARIO DE MUESTRA” es el comentario.

    Imagen 3 del lenguaje ensamblador del microcontrolador 8051

    etiqueta

    Una etiqueta es un nombre elegido por el programador para una ubicación de memoria o declaración dentro de un programa. La parte de la etiqueta de la declaración es opcional y, si está presente, la etiqueta debe terminar con dos puntos (:).

    Lo importante que debe recordar al elegir un nombre para su etiqueta es que debe reducir la necesidad de documentación.

    orden

    Las instrucciones son la parte principal de la programación en lenguaje ensamblador del microcontrolador 8051 porque son responsables de las tareas realizadas por el microcontrolador. Las instrucciones en lenguaje ensamblador constan de dos partes: un código de operación y un operando.

    Imagen 4 del lenguaje ensamblador del microcontrolador 8051

    La primera parte de la instrucción es el código de operación, que significa código de operación y especifica la operación que debe realizar el microcontrolador. Los códigos de operación en lenguaje ensamblador se llaman mnemónicos. Los códigos de operación están en forma binaria (usados ​​en lenguaje de máquina), mientras que los mnemotécnicos (equivalentes a los códigos de operación) son declaraciones similares al inglés.

    La segunda parte de la instrucción se llama operando y representa los datos sobre los cuales se realiza la operación. Hay dos tipos de operandos: operandos de origen y operandos de destino. El operando de origen es la entrada de la operación y el operando de destino es donde se almacena el resultado.

    comentario

    8051 La última parte de una estructura en lenguaje ensamblador es un comentario. Los comentarios son declaraciones incluidas por los desarrolladores para hacer que el código sea más fácil de entender y se utilizan para documentar adecuadamente un programa.

    Los comentarios son opcionales y, si se usan, deben comenzar con un punto y coma (;) o doble barra (//), según el ensamblador.

    Las siguientes declaraciones demuestran algunos usos de etiquetas, instrucciones y comentarios.

    Etiqueta sin instrucciones ni comentarios: ETIQUETA:

    Línea que contiene etiqueta e instrucción: ETIQUETA: MOV A, 22H

    Línea que contiene instrucciones y comentarios: MOV A, 22H; Este es un comentario

    Líneas que contienen etiquetas y comentarios: ETIQUETA: ; Este es un comentario

    Línea de sólo comentarios: ; Este es un comentario

    Lea también: Arquitectura del microcontrolador 8051

    Directivas del lenguaje ensamblador del microcontrolador 8051

    Aunque las directivas en lenguaje ensamblador aparecen en el campo mnemotécnico de un programa, no son instrucciones para el ensamblador del microcontrolador 8051. Las directivas del lenguaje ensamblador son en realidad instrucciones para el ensamblador que le dicen al programa ensamblador qué hacer durante el proceso de ensamblaje.

    Las directivas del lenguaje ensamblador no afectan el contenido de la memoria del microcontrolador 8051 (excepto las directivas DB y DW).

    Estas directivas dependen del programa ensamblador y para el ensamblador ASM51 existen las siguientes categorías de directivas:

    Imagen 1 del lenguaje ensamblador del microcontrolador 8051

    A continuación, veremos algunas directivas importantes y de uso frecuente en lenguaje ensamblador.

    ORG – Establecer origen

    El programa en lenguaje ensamblador del microcontrolador 8051 comienza a ensamblarse en la dirección de memoria del programa 0000H. Esta es también la dirección donde el microcontrolador 8051 comienza a ejecutar código.

    Para colocar programas y datos en cualquier lugar del espacio de direcciones del microcontrolador 8051, puede utilizar la directiva ORG.

    ejemplo

    ORG0000H; Le dice al ensamblador que monte la siguiente declaración en 0000H.

    LJMP principal; memoria de código 0000H. Saltar a principal.

    ORG000BH; Le dice al ensamblador que monte la siguiente declaración en 000BH.

    Principal: No. Memoria de código 000BH. La parte principal comienza aquí.

    DB – Definición de bytes

    La directiva DB se utiliza para definir variables de tipo byte. Esta directiva le permite definir datos en formato decimal, binario, hexadecimal o ASCII. Requiere el sufijo “B” para binario y “H” para hexadecimal. Los caracteres ASCII están entre comillas simples (por ejemplo, “cadena”).

    ejemplo

    ORG0000H

    DB10; define el byte 10 (decimal) y guárdalo en 0000H

    DB30H; define el byte 30 (HEX) y guárdalo en 0001H

    DB ‘STRING’ ; Defina la cadena “STRING” y guárdela en 0002H a 0007H

    DB 00001111B; define el byte 00001111 (binario) y guárdalo en 0008H

    DB1234H; Defina el byte 34 (HEX) y guárdelo en 0009H.Sólo el byte inferior

    Sólo puede asignar bytes de memoria si se acepta como base de datos.

    DW – Definición de palabra

    Las directivas Define Word (DW) se utilizan para incluir datos de 16 bits en un programa. La funcionalidad DW es similar a la funcionalidad DB, excepto que DW genera valores de 16 bits.

    EQU – equivalente

    La directiva EQU le permite asociar un símbolo (o etiqueta) con un valor.

    ejemplo

    TMP EKU #30; Asigna el valor #30 al nombre TMP.

    RED_LED EQU P1.0; P1.0 se define como RED_LED

    fin

    La directiva END se utiliza para detener el proceso de ensamblaje. Esta debe ser la última declaración de su programa. La directiva END no puede contener una etiqueta y el ensamblador no procesa las declaraciones más allá de END.

    ejemplo

    ORG0000H

    MOVIMIENTO A, 20H

    MOVIMIENTO R0, #30

    fin

    Ejemplos de programación en lenguaje ensamblador del microcontrolador 8051

    Ejemplo 1

    A continuación se muestra un lenguaje ensamblador simple para un microcontrolador 8051 que copia datos de R0 en el Banco0 a R0 en el Banco3.

    Organización 00H

    MOVIMIENTO R0, #33H

    MOVIMIENTO A, R0

    AJUSTE PSW.3

    AJUSTE PSW.4

    MOV R0,A

    fin

    Ejemplo 2

    El siguiente ejemplo le permite encender y apagar (parpadeando el LED) el LED conectado al PORT1 de un microcontrolador 8051.

    Este tutorial cubrió los conceptos básicos de la programación en lenguaje ensamblador del microcontrolador 8051, la estructura del lenguaje ensamblador 8051, las directivas del lenguaje ensamblador y algunos ejemplos.

    Artículo relacionado:

    • Fundamentos de los programas C integrados
    • Configuración de la memoria del microcontrolador 8051
    • Conjunto de instrucciones del microcontrolador 8051
    • Programando la Raspberry Pi Pico con C | Obtenga…
    • Registro de funciones especiales del microcontrolador 8051 (SFR)
    • Introducción a NodeMCU | Guía para principiantes

    del ensamblador lenguaje microcontrolador Programación
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email

    Entradas relacionadas

    El funcionamiento del transistor como interruptor

    Aplicación del electromagnetismo.

    Configuración de la memoria del microcontrolador 8051

    Entradas recientes
    ¿Qué es el campo magnético y cómo funciona?
    circuito capacitivo de ca
    circuito inductivo ca
    ¿Cómo probar un diodo? Uso de multímetros analógicos y digitales (DMM)
    Noticias industrial
    ¿Qué es el campo magnético y cómo funciona?
    circuito capacitivo de ca
    circuito inductivo ca
    ¿Cómo probar un diodo? Uso de multímetros analógicos y digitales (DMM)
    Facebook YouTube LinkedIn
    © 2025 Hecho con ♥ desde México

    Type above and press Enter to search. Press Esc to cancel.

    Ir a la versión móvil