El lenguaje ensamblador del PIC16F84A

Páginas: 28 (6893 palabras) Publicado: 26 de abril de 2014
Introducción
El juego de instrucciones de un microprocesdor o microcontrolador es el conjunto de entradas binarias que producen acciones definidas durante un ciclo de instrucción. Un juego de instrucciones es para el microcontrolador lo mismo que una tabla de verdad es para una puerta lógica, un registro de desplazamiento o un sumador. Por supuesto, las acciones que realiza unmicrocontrolador con cada instrucción, son más complejas que las que realizan los dispositivos y puertas antes mencionados.
Una instrucción es un patrón de dígitos binarios el cual debe estar a disposición del microcontrolador en el tiempo y forma que éste lo requiera.
Por ejemplo, cuando el procesador de un microcontrolador PIC16F84A recibe el patrón binario de 12 bits '0000 0100 0000' en el momentoadecuado, significa: Clear (borrar o poner a cero) el registro W, y corresponde a la instrucción CLRW.
En instrucciones del PIC16F84A se muestra el juego de instrucciones completo del PIC16F84A
Para los PIC se han creado unas instrucciones y una estructura de programa que los hacen más sencillos y atractivos todavía..
Las instrucciones de los microcontrolador PIC cumplen con lassiguientes condiciones:
• Juego de instrucciones reducido: Por ejemplo, solo existen 35 instrucciones en el PIC16F84A.
• Sencillas y rápidas: La mayoría se ejecuta en un ciclo de instrucción, y solo las de salto precisan 2 ciclos. El ciclo de instrucción consta de 4 ciclos de reloj principal. De esta manera un dispositivo con un cristal de cuarzo de 20 MHz realiza 5 millones de instrucciones porsegundo.
• Ortogonalidad: La ubicación de los operandos que manejan es muy flexible. Cualquier objeto del procesador puede actuar como origen o como destino.
• Formato uniforme de las instrucciones: Todas las instrucciones tienen una longitud fija de bits. Esta característica significa un notable ahorro de la memoria de programa y una facilidad en la construcción de compiladores.
• Formatouniforme de los datos.
Un programa es una serie de instrucciones mediante las cuales un sistema basado en CPU realiza una tarea en particular y la forma mas simple de realizar un programa es mediante el lenguaje ensamblador (Ver Sistemas microprogramables, Lenguajes de programación para sistemas basados en CPU).
Podríamos decir que el lenguaje ensamblador "es complejo por su sencillez". Estoquiere decir que, a diferencia de los lenguajes de alto nivel, aquí no hay funciones que solucionen y simplifiquen algoritmos, si no que hay que implementar hasta los pasos más elementales.
Programa en ensamblador
Para introducir un programa en ensamblador en un sistema basado en CPU tenemos que traducirlo a hexadecimal o a binario. Para realizarlo a suvez se utiliza un programa de ordenador,llamado programa ensamblador. Éste sería un ejemplo de programación en ensamblador o mnemónicos:
org 0
start movlw 0Eh
movwf REG1
movlw 100
addwf REG1,1
end
Desventajas del ensamblador
Existe una gran diferencia entre el juego de instrucciones de un sistema basado en CPU y las tareas que este debe realizar. Las instrucciones tienden a hacer cosas como: sumar contenidos de dosregistros, desplazar el contenido de un acumulador un bit, o colocar un nuevo valor en el contador de programa.
Por otro lado, centrandonos en el caso de los microcontroladores, este deberá hacer cosas como: reaccionar cuando una entrada digital se activa, comprobar si un valor analógico se ha excedido de un cierto umbral, activar un relé en un momento determinado, mostrar resultados en unpanel LCD, comunicarse vía serie con otros dispositivos, etc. El programador en lenguaje ensamblador debe "traducir" estas tareas a secuencias de simples instrucciones. Esto no suele ser fácil y consume tiempo de trabajo.
Otro inconveniente es la no portabilidad. Cada microprocesador o microcontrolador posee su propio juego de instrucciones en el y su propia arquitectura interna.
Un...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Lenguaje ensamblador
  • Lenguaje Ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador
  • Lenguaje ensamblador

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS