Documentos de Académico
Documentos de Profesional
Documentos de Cultura
5
PROGRAMACIÓN CON SUBRUTINAS EN LENGUAJE ENSAMBLADOR
OBJETIVO
Realizar la programación con subrutinas utilizando las principales instrucciones de
programación en lenguaje ensamblador, así como conocer el entorno de programación de Microchip MLAB
IDE.
MARCO TEÓRICO
1. Información relacionada a las subrutinas.
En el contexto del lenguaje ensamblador se define una subrutina como una porción de código que
realiza una operación en base a un conjunto de valores dados como parámetros de forma independiente al
resto del programa y que puede ser invocado desde cualquier lugar del código, incluso desde dentro de ella
misma.
La ejecución de subrutinas tiene las siguientes ventajas:
Evita código redundante. Durante el diseño de un programa suelen existir ciertos cálculos que deben
realizarse en diferentes lugares del código. La alternativa a replicar las instrucciones es encapsularlas
en una subrutina e invocar esta cada vez que sea necesario lo cual se traduce en código más
compacto.
Facilita la descomposición de tareas. La descomposición de tareas complejas en secuencias de
subtareas más simples facilita enormemente el desarrollo de programas. Esta técnica se suele aplicar
de forma sucesiva en lo que se denomina “diseño descendente” de programas. Cada subtarea se
implementa como una rutina.
Facilita el encapsulado de código. El agrupar una operación y sus datos en una subrutina y
comunicarse con el resto de un programa a través de sus parámetros y resultados, hace que, si en
algún momento se cambia su implementación interna, el resto del programa no requiera cambio
alguno.
REGISTROS
En la siguiente tabla se muestra un resumen del conjunto de instrucciones donde se pueden observar
los mnemónicos, la explicación, el número de ciclos, el código de máquina y los bits afectados del registro
STATUS para cada una de las instrucciones.
Tabla 1. Resumen de instrucciones
Como podemos observar en la tabla, las instrucciones se pueden clasificar en tres grupos: Instrucciones
orientadas a byte, Instrucciones orientadas a bit e Instrucciones orientadas a literal y control.
La memoria de programa almacena todas las instrucciones del programa en ejecución, que estará
grabado de forma permanente. La información contenida en esta memoria se graba previamente mediante un
equipo físico denominado programador o grabador.
Está organizada en palabras de 14 bits cada una. Todas las instrucciones ocupan una posición de
memoria de programa.