La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

SISTEMAS MICROPROGRAMABLES. Definición de equipo microprogramable Bloques de un sistema microprogramable Clasificación de los sistemas microprogramables.

Presentaciones similares


Presentación del tema: "SISTEMAS MICROPROGRAMABLES. Definición de equipo microprogramable Bloques de un sistema microprogramable Clasificación de los sistemas microprogramables."— Transcripción de la presentación:

1 SISTEMAS MICROPROGRAMABLES

2 Definición de equipo microprogramable Bloques de un sistema microprogramable Clasificación de los sistemas microprogramables El microprocesador Tipos de microprocesadores Sistema basado en un microprocesador Arquitectura interna de un microprocesador Programación

3 SISTEMAS MICROPROGRAMABLES Un sistema microprogramables es un sistema digital formado por uno o varios chips, capaz de leer, interpretar y posteriormente ejecutar, de forma secuencial, las instrucciones contenidas en un PROGRAMA, a una elevada velocidad.

4 SISTEMAS MICROPROGRAMABLES Aplicaciones informáticas Control de procesos industriales Aplicaciones de control en aparatos electrodomésticos.

5 SISTEMAS MICROPROGRAMABLES Cuando se realiza el estudio de un sistema microprogramable, todos los conceptos relacionados con el sistema se agrupan bajo dos términos genéricos: HARDWARE SOFTWARE

6 SISTEMAS MICROPROGRAMABLES Periféricos Sistema de control externo Memoria interna C.P.UReloj Unidad entrada/salida Usuario/a Receptores

7 SISTEMAS MICROPROGRAMABLES LOS MICROPROCESADORES Microprocesadores En este caso el sistema microprogramables está dividido en varios chips, denominándose el más importante MICROPROCESADOR. Los microprocesadores se utilizan en aquellas aplicaciones en las que se quiere grandes cantidades de memoria, ejecutar una gran cantidad de programas o se prevea hacer ampliaciones realizando las tareas a una gran velocidad.

8 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores

9 SISTEMAS MICROPROGRAMABLES TIPOS DE MICROPROCESADORES Microprocesadores MICROPROCESADORES RISC MICROPROCESADORES CISC Microprocesadores con un set de instrucciones reducido (entre 35 y 40). Instrucciones simples y realizables en un ciclo máquina Microprocesadores con un set de instrucciones complejo (más de 80).Se necesitan varios ciclos máquinas para realizar una instrucción Las CPU,s atendiendo al juego de instrucciones que utilizan pueden clasificarse en:

10 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR (μP) Microprocesadores

11 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores CPU (Chip microprocesador) El microprocesador controla, por medio de las instrucciones que decodifica e interpreta: las memorias, la unidad I/O y a través de esta última, los periféricos y sistemas de control externo. El microprocesador es un circuito integrado que internamente posee: Una unidad de control, una unidad operativa y unos registros de trabajo.

12 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores RELOJ: El microprocesador genera todos los impulsos de control de los restantes bloques, partiendo de ondas cuadradas de frecuencia constante generadas por el reloj. La señal de reloj determina la velocidad de operación o funcionamiento del microprocesador.

13 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores CIRCUITOS DE SELECCIÖN DE CHIPS Forman un conjunto de decodificadores que tienen la finalidad de obtener, partiendo del bus de direcciones, las señales de autorización o chip select de cada bloque del sistema.

14 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores MEMORIA RAM (Memoria de Acceso Aleatorio) La función de este circuito integrado en los sistemas microprogramables es la de contener los programas y los datos que el usuario/a o la CPU, pueden variar a voluntad. En ella se pueden guardar datos en una operación de escritura o recuperar datos en una operación de lectura. Es una memoria volátil

15 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores MEMORIA ROM (Memoria de solo lectura) La función de este tipo de memoria en un equipo microprogramable es la de contener los datos y programas de arranque que precisan los sistemas microprogramables para su activación, o el programa de funcionamiento para aquellos sistemas destinados a la automatización. Es un tipo de memoria de la cual solo se puede leer la información en ella almacenada. Es una memoria no volátil

16 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores UNIDAD DE ENTRADA/SALIDA (Unidad I/O) Todo sistema microprogramable necesita comunicarse con el exterior, bien para recibir información bien para enviarla. Los dispositivos de entrada y salida constituyen el elemento de comunicación entre los circuitos internos ( CPU, memorias..) y los externos.

17 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores BUSES : Se definen como el conjunto de grupos de cables que transportan información del mismo tipo y que sirven para realizar la comunicación entre los diferentes bloques del sistema microprogramable.

18 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores BUSES : BUS DE DATOS: (Data bus) Destinado a transportar los datos entre los diferentes bloques.Su número de hilos depende de la longitud de la palabra binaria con que trabaja el sistema. Se representan con la letra D D D 7

19 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores BUSES : BUS DE DIRECCIONES: (Address bus) Su misión es la de transmitir, al bloque correspondiente,la dirección con la que va a trabajar la CPU. El número de líneas que lo forman depende del fabricante del microprocesador y determina la máxima cantidad de memoria que es capaz de gobernar. A A N

20 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores BUSES : BUS DE DATOS: (Data bus) Destinado a transportar los datos entre los diferentes bloques.Su número de hilos depende de la longitud de la palabra binaria con que trabaja el sistema. Se representan con la letra D

21 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores BUSES : BUS DE CONTROL: (Control bus) Los microprocesadores suelen utilizar una serie de líneas para enviar o recibir órdenes que realizan funciones diversas.:líneas de R/W en la memoria, RESET o inicialización, líneas de interrupción etc..

22 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores PERIFERICOS : Estos dispositivos realizan dos tipos de funciones : Comunicación entre el sistema y el usuario Almacenamiento masivo de información

23 SISTEMAS MICROPROGRAMABLES SISTEMA MICROPROGRAMABLE BASADO EN UN MICROPROCESADOR Microprocesadores SISTEMA DE CONTROL EXTERNO : Constituyen un conjunto de circuitos que sirven para realizar la comunicación entre el sistema microprogramable y los procesos industriales o máquinas por él controlados.En sus estructura intervienen los siguientes elementos : Transductores Convertidores A/D y D/A Componentes de potencia

24 SISTEMAS MICROPROGRAMABLES Microprocesadores

25 SISTEMAS MICROPROGRAMABLES Microprocesadores ARQUITECTURA INTERNA BASICA DE UN MIROPROCESADOR Para poder realizar todas las misiones encomendadas al microprocesador, el/la diseñador/a reúne y relaciona una serie de componentes que se clasifican en tres grandes grupos: UNIDAD DE CONTROL REGISTROS DE TRABAJO UNIDAD OPERATIVA

26 SISTEMAS MICROPROGRAMABLES Microprocesadores ARQUITECTURA INTERNA BASICA DE UN MIROPROCESADOR Unidad de Control Unidad Operativa Registros Unidad de Control Se encarga de la interpretación y ejecución de las instrucciones, así como del control de todos los componentes internos y externos que forman el sistema. μP

27 SISTEMAS MICROPROGRAMABLES Microprocesadores ARQUITECTURA INTERNA BASICA DE UN MIROPROCESADOR Unidad de Control Unidad Operativa Registros Se encarga de realizar las operaciones aritméticas, lógicas y de rotación bajo la supervisión de la unidad de control Unidad Operativa μP

28 SISTEMAS MICROPROGRAMABLES Microprocesadores ARQUITECTURA INTERNA BASICA DE UN MIROPROCESADOR Unidad de Control Unidad Operativa Registros Son unidades de almacenamiento temporal de información.Algunos tienen una función concreta y otros se emplean en múltiples tareas. Registros μP

29 SISTEMAS MICROPROGRAMABLES ARQUITECTURA INTERNA CONVENCIONAL DE UN MIROPROCESADOR

30 SISTEMAS MICROPROGRAMABLES Microprocesadores MICROPROCESADORES DE 8 BITS: MICROPROCESADOR 6502 (ROCKWELL) MICROPROCESADOR 6800 (MOTOROLA) MICROPROCESADOR 8085 (INTEL) MICROPROCESADOR Z80 (ZILOG)

31 SISTEMAS MICROPROGRAMABLES Microprocesadores MICROPROCESADORES DE 8 BITS: ROCKWELL 6502 Tecnología NMOS y CMOS (Versión 65C02) Direccionamiento 64Kbytes Frecuencia reloj: 1MHz y 3MHz según versión Set de instrucciones 56 (Versión 65C02 es de 68) Alimentación + 5V

32 SISTEMAS MICROPROGRAMABLES Microprocesadores MICROPROCESADORES DE 8 BITS: ROCKWELL 6502

33 SISTEMAS MICROPROGRAMABLES Microprocesadores MICROPROCESADORES DE 8 BITS: MOTOROLA 6800 Tecnología NMOS en 1974 Direccionamiento 64Kbytes Frecuencia reloj: 1MHz y 2MHz según versión Set de instrucciones 72 Alimentación + 5V Tecnología NMOS en 1974 Direccionamiento 64Kbytes Frecuencia reloj: 1MHz y 2MHz según versión Set de instrucciones 72 Alimentación + 5V

34 SISTEMAS MICROPROGRAMABLES Microprocesadores MICROPROCESADORES DE 8 BITS: MOTOROLA 6800

35 SISTEMAS MICROPROGRAMABLES Microprocesadores MICROPROCESADORES DE 8 BITS: ZILOG Z80 Tecnología NMOS en 1976 Direccionamiento 64Kbytes Frecuencia reloj: 2,4MHz y 4,5MHz Set de instrucciones 158 Alimentación + 5V Tecnología NMOS en 1976 Direccionamiento 64Kbytes Frecuencia reloj: 2,4MHz y 4,5MHz Set de instrucciones 158 Alimentación + 5V

36 SISTEMAS MICROPROGRAMABLES Microprocesadores MICROPROCESADORES DE 8 BITS: ZILOG Z80

37 SISTEMAS MICROPROGRAMABLES Microprocesadores MICROPROCESADORES DE 8 BITS: INTEL 8085 Tecnología NMOS en 1977 Direccionamiento 64Kbytes Frecuencia reloj: 5MHz Set de instrucciones 80 Alimentación + 5V Tecnología NMOS en 1977 Direccionamiento 64Kbytes Frecuencia reloj: 5MHz Set de instrucciones 80 Alimentación + 5V

38 SISTEMAS MICROPROGRAMABLES Microprocesadores MICROPROCESADORES DE 8 BITS: INTEL 8085

39 Microprocesadores INTEL 8085 CARACTERICTICAS GENERALES Precisa de a sola alimentación + 5V Generador interno de señal de reloj Ciclo de instrucción 1,3 microsegundos Líneas de entrada y salida serie Bus de direcciones de 16 líneas Direccionamiento de 64K Bus de datos 8 líneas - multiplexado

40 Microprocesadores INTEL 8085 ESTRUCTURA EXTERNA:

41 Microprocesadores INTEL 8085 DIAGRAMA DE CONEXIONADO

42 Microprocesadores INTEL 8085 ESTRUCTURA INTERNA

43 Microprocesadores INTEL 8085 ESTRUCTURA INTERNA

44 Microprocesadores INTEL 8085 LOS REGISTROS: El Acumulador (A) Es el registro principal del micro y a él están referidas la mayor parte de las operaciones de la ALU. Actúa como registro de datos y resultados en las operaciones realizadas por la ALU. Es un registro de 8 bits

45 Microprocesadores INTEL 8085 REGISTROS AUXILIARES: Estos registros de trabajo se utilizan para almacenar datos y resultados intermedios dentro de la CPU. Este micro tiene 6 registros auxiliares. Pueden trabajar de forma independiente (8 bits) o por parejas (16 bits)

46 Microprocesadores INTEL 8085 LOS REGISTROS: REGISTRO DE ESTADO / REGISTRO DE FLAGS Es un registro de 8 bits de los cuales solo 5 actúan de señalizadores de la última operación que se halla realizado en el registro Acumulador (A)

47 Microprocesadores INTEL 8085 LOS REGISTROS: REGISTRO DE ESTADO / REGISTRO DE FLAGS SZACCYP P AC Z S Señalizador de paridad Señalizador de acarreo Señalizador de carry auxiliar Señalizador de cero Señalizador de signo

48 Microprocesadores INTEL 8085 CONTADOR DE PROGRAMA: Es un registro de 16 bits, en los microprocesadores de 8 bits, que tiene la misión de almacenar la próxima dirección de la instrucción a ejecutar. Se autoincrementa automáticamente, una vez ejecutada la instrucción anterior.

49 Microprocesadores INTEL 8085 PILA DE MEMORIA (STACK): Se denomina pila de memoria (STACK) a una zona de la RAM, cuyo tamaño varía de unos microprocesadores a otros, reservada expresamente para que la CPU o el/la programador/a puedan guardar los datos. La pila de memoria funciona como una memoria de acceso LIFO ( último en entrar primero en salir))

50 Microprocesadores INTEL 8085 PUNTERO DE PILA (STACK POINTER): Se denomina puntero de pila (STACK POINTER) a un registro especial de la CPU que nos indica la próxima dirección libre de la pila de memoria y que se decrementa e incrementa automáticamente cada vez que se ejecuta una instrucción de llamada a subrutina.

51 Microprocesadores INTEL 8085 REGISTRO DE DATOS: El registro e datos es una unidad para el almacenamiento de los datos que llegan a la CPU o parten de ella, a través del bus de datos. El registro de datos establece una comunicación bidireccional. Incorpora buffers triestado, uno por cada bit

52 Microprocesadores INTEL 8085 REGISTRO DE DATOS: TRIESTADO Buffer Triestado: Son circuitos integrados que se conectan a la entrada o a la salida de un C.I. normal, y, de este modo, permitir que pueda trabajar en lógica triestado. Buffer 8216 de INTEL

53 Microprocesadores INTEL 8085 REGISTRO DE DATOS: TRIESTADO Integrados digitales triestado: Son circuitos integrados que llevan incluidos en su estructura un registro triestado en cada una de sus salida y entradas. Microprocesadores y Memorias

54 Microprocesadores INTEL 8085 REGISTRO DE DIRECCIONES: La misión de este registro es la de almacenar las direcciones que el micro envía al bus de direcciones y separar a las unidades internas del citado bus por medio de un conjunto de buffers triestado unidireccionales. Este registro poseerá una capacidad de 16 bits

55 Microprocesadores INTEL 8085 GENERADOR INTERNO DE LAS SEÑALES DE RELOJ: Contiene un generador de señales de reloj, que solo precisa estabilizar su frecuencia mediante un cristal de cuarzo que se coloca entra las patillas X1 y X2. También acepta el control desde un reloj externo aplicado en la patilla X1. Cristal = 6,25MHz

56 Microprocesadores INTERRUPCIONES EN UN MICRO DE 8 BITS: Las interrupciones constituyen el mecanismo más importante para la conexión del sistema microprocesador al mundo exterior, sincronizando la ejecución del programas con entradas y/o salidas de datos.

57 Microprocesadores INTERRUPCIONES EN UN MICRO DE 8 BITS: Las interrupciones se pueden producir en cualquier momento de la ejecución de un programa, al activarse un terminal de entrada de la CPU, es decir, mediante un mecanismo hardware.

58 Microprocesadores INTERRUPCIONES EN UN MICRO DE 8 BITS: Cuando un microprocesador, que está ejecutando un programa, recibe una orden hardware por medio de un impulso en la patilla de solicitud de interrupción, realiza el siguiente proceso:

59 Microprocesadores INTERRUPCIONES EN UN MICRO DE 8 BITS: 1º.- Para la ejecución del programa y guarda en el stack la dirección de retorno al programa principal. 2º.- Carga en el contador de programa la dirección de la subrutina de atención. 3º.- Al final de la subrutina de atención, el microprocesador encuentra la instrucción de fin de interrupción, recuperando de la pila la dirección de retorno al programa principal.

60 Microprocesadores INTERRUPCIONES EN UN MICRO DE 8 BITS: En los microprocesadores suelen existir al menos dos tipos de interrupciones hardware y una software, jerarquizadas por orden de prioridad: INTERRUPCIONES ENMASCARABLES INTERRUPCIONES NO ENMASCARABLES

61 Microprocesadores INTEL 8085 INTERRUPCIONES: El bloque interno del 8085 destinado al control de las interrupciones, consta de 5 líneas por las cuales se puede solicitar una interrupción de la CPU, desde el exterior. Hay tres tipos de interrupciones: Interrupción INTR ( enmascarable ) Interrupciones RST 5.5, RST 6.5 y RST 7.5 (enmascarable) Interrupción TRAP (no enmascarable)

62 Microprocesadores INTEL 8085 DIAGRAMA DE CONEXIONADO BUS de CONTROL (13) +Vcc 8085 TRAP RST 7.5 RST 6.5 RST 5.5 INTR INTA CLK X1 X2 Vss AD0.....AD7 A A15

63 Microprocesadores INTEL 8085 INTERRUPCION INTR: Interrupción enmascarable Cuando se solicita se puede atender o no, de acuerdo con el estado de una máscara que se gobierna con dos instrucciones EI ( permiso) y DI (prohibición). Cuando el micro reconoce y ejecuta la interrupción INTR, activa la línea de salida INTA, que sirve para comunicar al peticionario la concesión de la interrupción.

64 Microprocesadores INTEL 8085 INTERRUPCION INTR: 8085 PERIFERICO INTR INTA Bus de Datos (8) Código de la instrucción a ejecutar 8

65 Microprocesadores INTEL 8085 INTERRUPCIONES RST 5.5, RST 6.5, RST 7.5: Interrupciones enmascarables. Estas interrupciones pueden validarse o invalidarse en grupo, mediante las instrucciones EI y DI. Las interrupciones RST 5.5 y RST 6.5 son sensibles al nivel activo. La interrupción 7.5 es sensible al flanco ascendente.

66 Microprocesadores INTEL 8085 INTERRUPCIONES RST 5.5, RST 6.5, RST 7.5:

67 Microprocesadores INTEL 8085 INTERRUPCION TRAP: Interrupción no enmascarable, o sea, siempre se atiende. Un flanco de subida en la TRAP determina la ejecución, sin condiciones, de la interrupción. Dicha interrupción debe permanecer en nivel alto hasta que el procesador detecte y reconozca la petición.

68 Microprocesadores INTEL 8085 INTERRUPCION TRAP:

69 Microprocesadores INTEL 8085 NIVEL DE PRIORIDAD EN LAS INTERRUPCIONES :

70 Microprocesadores INTEL 8085 EQUIPO uP-2000

71 Microprocesadores R6522 PINES EXTERNOS:

72 Microprocesadores R6522 MONTAJE PRACTICO:

73 Microprocesadores R6522 MONTAJE PRACTICO:

74 Microprocesadores LAS SUBRUTINAS EN UN MICROPROCESADOR: Una subrutina se define como : el grupo de instrucciones de un programa que se repiten íntegramente en varias zonas de este. El objetivo de emplear subrutinas es el de disminuir el tamaño de los programas que contienen tareas repetitivas.

75 Microprocesadores LAS SUBRUTINAS EN UN MICROPROCESADOR: Supongamos que un sistema microprogramable debe controlar la activación y desactivación de tres motores a intervalos de tiempo de 30 segundos. El diagrama de flujo de la secuencia de trabajo será la siguiente:

76 Microprocesadores LAS SUBRUTINAS EN UN MICROPROCESADOR: Act. Motor 1 Temporización Act. Motor 2 Temporización Act. Motor 3 Temporización FIN Inicio

77 Microprocesadores LAS SUBRUTINAS EN UN MICROPROCESADOR: Observando el ordinograma nos damos cuenta que el bloque temporizador formado por una serie de instrucciones, se repite tres veces en el programa principal. Esta repetición supone: Trabajo adicional para el programador o programadora, que tiene que repetir varias veces el mismo conjunto de instrucciones El inconveniente para la memoria de una mayor longitud de programa y por tanto un mayor espacio ocupado.

78 LAS SUBRUTINAS EN UN MICROPROCESADOR: Inicio Act. motor1 Act. motor2 Delay Act. motor2 Delay Fin Delay Tempo. 30 seg. RET

79 Microprocesadores LAS SUBRUTINAS EN UN MICROPROCESADOR: Para que pueda definirse una subrutina, son imprescindibles dos tipos de instrucciones: Instrucción de llamada a subrutina. Instrucción de retorno de subrutina

80 Microprocesadores LAS SUBRUTINAS EN UN MICROPROCESADOR: Es posible que durante la ejecución de una subrutina, se llame a otra subrutina y, dentro de esta última, puede llamarse a otra, y así sucesivamente. A este entrelazamiento de subrutinas, se denomina SUBRUTINAS ANIDADAS.

81 SISTEMAS MICROPROGRAMABLES LENGUAJES DE PROGRAMACÖN: Microprocesadores Para codificar la información que se introduce a un sistema microprogramable, es necesario un método o lenguaje que sea fácilmente comprensible tanto para el sistema como para el usuario/a que realiza la programación

82 SISTEMAS MICROPROGRAMABLES LENGUAJES DE PROGRAMACION: Microprocesadores Los lenguajes de programación se clasifican en función de la proximidad al lenguaje del sistema en los siguientes tipos: LENGUAJE MAQUINA (denominada de bajo nivel) LENGUAJE ENSAMBLADOR (denominado simbólico) LENGUAJE DE ALTO NIVEL

83 Microprocesadores EL SISTEMA LOGICO: PROGRAMA FUENTE PROGRAMA TRADUCTOR PROGRAMA OBJETO EJECUTAR

84 Microprocesadores EL SISTEMA LOGICO: Lenguaje ensamblador Programa ensamblador Lenguaje máquina PROGRAMA FUENTE PROGRAMA TRADUCTOR PROGRAMA OBJETO EJECUTAR

85 Microprocesadores EL SISTEMA LOGICO: Lenguaje alto nivel Programa compilador Lenguaje máquina PROGRAMA FUENTE PROGRAMA TRADUCTOR PROGRAMA OBJETO EJECUTAR Fortran Cobol Basic

86 Microprocesadores El lenguaje ensamblador, simbólico o nemotécnico, emplea nemónicos, que son grupos de caracteres que simbolizan a las diferentes órdenes o tareas a realizar en cada instrucción. Los nemónicos se corresponden con las iniciales del nombre de la instrucción en inglés. Este tipo de lenguaje es utilizado en sistemas microprogramables destinados al mundo de la automatización y la robótica.

87 ESTRUCTURA DE UN LENGUAJE ENSAMBLADOR: SINTAXIS DE UN LENGUAJE ENSAMBLADOR. Microprocesadores CAMPOS DE UNA INSTRUCCIÓN EN ENSAMBLADOR. PSEUDOINTRUCCIONES.

88 ESTRUCTURA DE UN LENGUAJE ENSAMBLADOR: SINTAXIS DE UN LENGUAJE ENSAMBLADOR. EtiquetaNemotécnicoOperandosComentarios * Estructura de una línea: * Tipos de líneas Instrucciones: Ejecutables por el ordenador Pseudoinstrucciones: No ejecutables

89 ESTRUCTURA DE UN LENGUAJE ENSAMBLADOR: CAMPO DE INSTRUCCIONES DE UN LENGUAJE ENSAMBLADOR. Microprocesadores ETIQUETA: * Identifica la línea en la cual se encuentra * Se asocia a la dirección en la cual se encuentra la instrucción, dato o constante definida. * Utilizar solo letras o números (comenzar por una letra)

90 ESTRUCTURA DE UN LENGUAJE ENSAMBLADOR: CAMPO DE INSTRUCCIONES DE UN LENGUAJE ENSAMBLADOR. Microprocesadores NEMOTECNICO: Identifica: * Un código de operación del lenguaje * Una pseudoinstrucción

91 ESTRUCTURA DE UN LENGUAJE ENSAMBLADOR: CAMPO DE INSTRUCCIONES DE UN LENGUAJE ENSAMBLADOR. Microprocesadores OPERANDOS: Identifica los operandos que intervienen en la instrucción o pseudoinstrucción Constantes, símbolos,

92 ESTRUCTURA DE UN LENGUAJE ENSAMBLADOR: CAMPO DE INSTRUCCIONES DE UN LENGUAJE ENSAMBLADOR. Microprocesadores COMENTARIOS: Indicaciones para una mejor comprensión del programa ensamblador. Comienzan con el símbolo ;

93 Microprocesadores INTEL 8085 DIAGRAMA DE FLUJO: El diagrama de flujo, ordinograma u organigrama, es una representación gráfica del proceso en la resolución de un programa. Para ello se emplean una serie de símbolos normalizados.

94 Microprocesadores INTEL 8085 DIAGRAMA DE FLUJO: Símbolos PROCESO DECISION INICIO / FINAL SUBRUTINA LINEA DE FLUJO

95 Microprocesadores INTEL 8085 DIAGRAMA DE FLUJO: Ejemplo CONTADOR A 00H A A + 1 A = 15 ? FIN NOSI

96 Microprocesadores INTEL 8085 DIAGRAMA DE FLUJO: Ejemplo Descontador A 15H A A - 1 A = 0 ? FIN NOSI

97 Microprocesadores INTEL 8085 INSTRUCCIONES Manipulación y transferencia de datos Intercambio de datos con la memoria Instrucciones Aritmético y lógicas Instrucciones de salto Instrucciones de llamada y retorno de subrutina Instrucciones de control de interrupciones Instrucciones especiales

98 Microprocesadores INTEL 8085 INSTRUCCIONES MANIPULACION Y TRANSFERENCIA DE DATOS: Todas las instrucciones que comprende este grupo se encargan de transferir datos a y desde registros a la memoria. No hay instrucciones que transfieran datos desde una posición de memoria a otra directamente, siempre hay que hacer el traslado a través de un registro. No se modifica el registro de FLAGS, por la ejecución de estas instrucciones.

99 Microprocesadores INTEL 8085 INSTRUCCIONES MANIPULACION Y TRANSFERENCIA DE DATOS: MOV r1,r2 Transfiere el contenido del registro de origen al registro de destino. r Registro de origen r Registro de destino

100 Microprocesadores INTEL 8085 INSTRUCCIONES MANIPULACION Y TRANSFERENCIA DE DATOS: MVI r,byte Transfiere el byte inmediato que se especifica al registro r que se indica. MVI A,2AH MVI B,F0H

101 Microprocesadores INTEL 8085 INSTRUCCIONES MANIPULACION Y TRANSFERENCIA DE DATOS: LDA addr Transfiere al acumulador el contenido de la dirección de memoria especificada. STA addr Guarda o transfiere el contenido del acumulador a la posición de memoria indicada.

102 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES ARITMETICAS : Este grupo de instrucciones se encargan de soportar las operaciones aritméticas sobre datos contenidos en los registros de trabajo o en posiciones de memoria. La mayor parte de las instrucciones aritméticas afectan a los señalizadores (FLAGS) del registro de estados.

103 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES ARITMETICAS : El contenido del registro especificado r en la instrucción se suma con el acumulador. El resultado de la suma se deposita en el Acumulador. ADI byte El byte especificado en la instrucción se suma con el acumulador. El resultado sigue obteniéndose en el acumulador. ADD r

104 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES ARITMETICAS : El contenido del registro especificado r en la instrucción se resta del acumulador. El resultado de la suma se deposita en el Acumulador. SUI byte El byte especificado en la instrucción se resta del acumulador. El resultado sigue obteniéndose en el acumulador. SUB r

105 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES ARITMETICAS : INR r El contenido del registro r, especificado en la instrucción, se decrementa una unidad. DCR r El contenido del registro r, especificado en la instrucción, se incrementa una unidad.

106 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES LOGICAS : Con este conjunto de instrucciones se realizan las funciones lógicas que siguen el Algebra de Boole. En la mayor parte de este grupo de instrucciones quedan afectados todos los señalizadores del registro de estado.

107 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES LOGICAS : ANA r ANI byte Esta instrucción realiza una operación lógica AND, bit a bit, entre el contenido del registro r y el acumulador, donde se queda depositado el resultado.. Esta instrucción realiza una operación lógica AND, bit a bit, entre el dato inmediato byte y el acumulador, donde se queda depositado el resultado..

108 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES LOGICAS : ORA r ORI byte Esta instrucción realiza una operación lógica OR, bit a bit, entre l contenido del registro r y el acumulador, donde se queda depositado el resultado.. Esta instrucción realiza una operación lógica OR, bit a bit, entre el dato inmediato byte y el acumulador, donde se queda depositado el resultado..

109 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES LOGICAS : XRA r XRI byte Esta instrucción realiza una operación lógica X-OR, bit a bit, entre l contenido del registro r y el acumulador, donde se queda depositado el resultado.. Esta instrucción realiza una operación lógica X-OR, bit a bit, entre el dato inmediato byte y el acumulador, donde se queda depositado el resultado..

110 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES LOGICAS : CMP r CPI byte Compara el contenido del acumulador con el contenido del registro r, especificado en la instrucción Compara el contenido del acumulador con el dato inmediato byte, especificado en la instrucción

111 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES DE BIFURCACION: Este grupo de instrucciones sirve para alterar el funcionamiento normal del contador de programa, que, generalmente, se incrementa al iniciarse la ejecución de una instrucción. Con estas instrucciones se provoca una rotura en la ejecución ordenada de las instrucciones de un programa.

112 Microprocesadores INTEL 8085 INSTRUCCIONES INSTRUCCIONES DE BIFURCACION: Hay tres clases de instrucciones para la rotura de la secuencia del programa: 1º.- De salto 2º.- De llamada a subrutina 3º.- De retorno

113 Microprocesadores INTEL 8085 INSTRUCCIONES 1º.- INSTRUCCIONES DE SALTO : Produce un salto o bifurcación a cualquier instrucción del programa, distinta a la siguiente que se está ejecutando. IncondicionalCondicional JMP addr JNZ addr JZ addr JNC addr JC addr JPO addr JPE addr JP addr JM addr

114 Microprocesadores INTEL 8085 INSTRUCCIONES 2º.- INSTRUCCIONES DE LLAMADA A SUBRUTINA : Produce un salto o bifurcación a cualquier instrucción del programa, pero además, guarda en la pila la dirección de la siguiente instrucción que correspondería realizar en un proceso secuencial.

115 Microprocesadores INTEL 8085 INSTRUCCIONES 2º.- INSTRUCCIONES DE LLAMADA A SUBRUTINA : IncondicionalCondicional CALL addr CNZ addr CZ addr CNC addr CC addr CPO addr CPE addr CP addr CM addr

116 Microprocesadores INTEL 8085 INSTRUCCIONES 3º.- INSTRUCCIONES DE RETORNO : Produce un salto o bifurcación a la instrucción del programa, cuya dirección está contenida en las dos primeras posiciones de la pila.

117 Microprocesadores INTEL 8085 INSTRUCCIONES 3º.- INSTRUCCIONES DE RETORNO : IncondicionalCondicional RET RNZ addr RZ addr RNC addr RC addr RPO addr RPE addr RP addr RM addr

118 Microprocesadores INTEL 8085 GENERADOR INTERNO DE LAS SEÑALES DE RELOJ: Contiene un generador de señales de reloj, que solo precisa estabilizar su frecuencia mediante un cristal de cuarzo que se coloca entra las patillas X1 y X2. También acepta el control desde un reloj externo aplicado en la patilla X1. Cristal = 6,25MHz

119 Microprocesadores SEÑAL DE RELOJ: La señal de reloj permite sincronizar el microprocesador con todo el funcionamiento del sistema. Cuando nos referimos a la señal de reloj, se hace de dos formas:

120 Microprocesadores Es la frecuencia en MHz o GHz que posee la onda cuadrada que se genera en el microprocesador partiendo del cristal de cuarzo Es el periodo en segundos producida por el microprocesador partiendo del cristal de cuarzo del sistema

121 Microprocesadores CICLOS DE TRABAJO DE UN μP: Cuando un micro se encuentra trabajando, realiza siempre una serie de tareas repetitivas que se denominan ciclos. Estos ciclos de trabajo son:

122 Microprocesadores Es el ciclo de trabajo básico del microprocesador y está formada por dos fases bien diferenciadas. FASE DE BUSQUEDA: El microprocesador, en esta fase, busca en memoria y transfiere al registro correspondiente la instrucción o el dato FASE DE EJECUCION: El microprocesador, en esta fase, interpreta o ejecuta las instrucciones CICLO MAQUINA = Fase de búsqueda + Fase de ejecución

123 Microprocesadores La relación entre el ciclo máquina y la señal de reloj depende del tipo de microprocesador. FILOSOFIA MOTOROLA: FILOSOFIA INTEL CICLO MAQUINA = Ciclo de reloj CICLO MAQUINA =N x Ciclo de reloj

124 Microprocesadores La ejecución completa de una instrucción requiere más de un ciclo máquina, de ahí que se considere el ciclo de instrucción, como el número de ciclos máquina necesarios para procesar por completo una ejecución: CICLO INSTRUCCION =N x Ciclo máquina

125 Microprocesadores INTEL 8085 DIAGRAMA DE TIEMPO: En este microprocesador la unidad básica de tiempo es el estado, que es un ciclo de reloj y que viene determinado por la mitad de la frecuencia del cristal de cuarzo. T1T2T3 ESTADOS

126 Microprocesadores INTEL 8085 DIAGRAMA DE TIEMPO: Un ciclo máquina consta de 3 a 6 estados T1T2T3 ESTADOS Ciclo máquina

127 Microprocesadores INTEL 8085 DIAGRAMA DE TIEMPO: El ciclo de una instrucción es el tiempo requerido para ejecutar una instrucción completa y puede comprender de 1 a 5 ciclos máquina.

128 INTEL 8085 EJERCICIOS DE PROGRAMACION Se trata de confeccionar un programa que sume dos números. Para mayor sencillez, los dos sumandos se proporcionan de forma inmediata en el programa y toman los valores de 10 H y A2 H. El resultado de la suma se depositará en la dirección 1240 H de la memoria. a)Realizar el ordinograma b)Confeccionar el programa ( Analizar diferentes soluciones) c)Una vez ejecutado el programa, determinar el valor que tomaría el registro de FLAGS

129 INTEL 8085 EJERCICIOS DE PROGRAMACION Se trata de confeccionar un programa que realice la siguiente ecuación lógica.Teniendo en cuenta que los datos de las variables son: A ( 20 H ), B (12 H ) y C(F5 H ) El resultado de la operación (F) se depositará en la dirección 1300 H de la memoria. a)Realizar el ordinograma b)Confeccionar el programa ( Analizar diferentes soluciones) c)Una vez ejecutado el programa, determinar el valor que tomaría el registro de FLAGS F = (A+B).C

130 INTEL 8085 EJERCICIOS DE PROGRAMACION a)Realizar el ordinograma b)Confeccionar el programa ( Analizar diferentes soluciones) c)Una vez ejecutado el programa, determinar el valor que tomaría el registro de FLAGS Confeccionar un programa que sume tres números, dados de forma inmediata en le propio programa y cuyo resultado no sobrepase el valor FFH (255 en decimal).Los tres números son 17H, 2FH y 0CH.El resultado de la operación se depositará en la dirección 1410H de memoria.

131 INTEL 8085 EJERCICIOS DE PROGRAMACION a)Realizar el ordinograma b)Confeccionar el programa ( Analizar diferentes soluciones) c)Una vez ejecutado el programa, determinar el valor que tomaría el registro de FLAGS En este ejercicio se propone la confección de un programa que sume dos operandos X e Y, almacenados en dos posiciones de memoria de la RAM 1030H y 104AH, respectivamente. El resultado de la operaciónse depositará en la posición 1240H.


Descargar ppt "SISTEMAS MICROPROGRAMABLES. Definición de equipo microprogramable Bloques de un sistema microprogramable Clasificación de los sistemas microprogramables."

Presentaciones similares


Anuncios Google