SlideShare una empresa de Scribd logo
Sistemas Basados en
   Microprocesadores

    Memoria de Programa
Memoria de programa
 Memoria   de tipo Flash, con una capacidad máxima
  direccionable de 2MBytes (21 bits)
 Las instrucciones ocupan 16 bits, y cada posición de
  memoria es de 8 bits.
    Cada instrucción ocupa dos posiciones.
 Direcciones      dedicadas
    0000h = vector de reset
    0008h = vector de interrupción HP (Hight Priority)
    0018h = vector de interrupción LP (Low Priority)
 Se puede leer, escribir y borrar mediante
 instrucciones software.

 http://paginaspersonales.deusto.es/jonathan.garibay/
Memoria de programa (continuación…)
                                                            Contador de programa

      Vector de reset                                        Pila con capacidad
                                                             para 31 direcciones
Vector de interrupción HP

Vector de interrupción LP




     http://paginaspersonales.deusto.es/jonathan.garibay/
Memoria de programa (continuación…)
 El
   contador de programa o PC guarda la dirección
 de la siguiente instrucción a ejecutar.
    Se inicializa a 0x0000 después de un reset.
    Se autoincrementa al ejecutar cada instrucción, de forma
     que la secuencia natural de ejecución del programa es
     lineal, una instrucción detrás de otra.
    Algunas instrucciones de control cambian el valor del PC,
     alterando la secuencia lineal de ejecución (goto, call…)
    El PC es también accesible al programador como registro
     de memoria interna de datos.




 http://paginaspersonales.deusto.es/jonathan.garibay/
Memoria de programa (continuación…)
 Existe
       una memoria interna dedicada independiente,
 organizada en forma de pila (Firts In Last Out).
    Guarda las direcciones de retorno de subrrutinas e
     interrupciones.
    El puntero de la pila es accesible para lectura y
     escritura desde software.




 http://paginaspersonales.deusto.es/jonathan.garibay/
Memoria de programa (continuación…)
 Instrucciones      de manejo de pila
    pop: genera un POP en el stack
    push: genera un PUSH en el stack




 http://paginaspersonales.deusto.es/jonathan.garibay/
Memoria de programa (continuación…)
 Instrucciones      de control
    call n: llamada a subrutina en la dirección “n”
    return: regreso de una subrutina
    retlw k: regreso con el literal “k” en WREG
    bra n (goto n): salto a “n” incondicional
    rcall n: llamada relativa a subrutina en “n”
    nop: no hay operación
    reset: reset por software del microcontrolador
    sleep: entra en modo Standby




 http://paginaspersonales.deusto.es/jonathan.garibay/
Memoria de programa (continuación…)
 Ejemplo     de funcionamiento:
                     org      0x00                           Pila
   0x0000 inicio     movlw    0x34             PC
                                                        31
   0x0002            movwf    TRISA                     30
   0x0004            call     rutina1                   29
   0x0006            movlw    0x00                      …
   0x0008            movwf    PORTA                      0
   0x000A            goto     inicio
   …
   0x003A rutina2    movlw    0xAE
   0x003C            movwf    TRISC
   0x003E            return
   …
   0x0084 rutina1    clrf     TRISB
   0x0086            call     rutina2
   0x0088            return
   …
 http://paginaspersonales.deusto.es/jonathan.garibay/

Más contenido relacionado

La actualidad más candente

El procesador y sus registros internos
El procesador y sus registros internosEl procesador y sus registros internos
El procesador y sus registros internosromo91
 
Capacidad de la unidad de procesamiento por andres maica
Capacidad de la unidad de procesamiento por andres maicaCapacidad de la unidad de procesamiento por andres maica
Capacidad de la unidad de procesamiento por andres maica
AndresMaica28
 
Unidad 2 arquitectura del computador
Unidad 2 arquitectura del computadorUnidad 2 arquitectura del computador
Unidad 2 arquitectura del computador
Cristhixn Leon
 
Microprocesadores: Registros Internos
Microprocesadores: Registros InternosMicroprocesadores: Registros Internos
Microprocesadores: Registros Internos
verduguillo
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensambladorgbermeo
 
Capacidad de la unidad de procesamiento
Capacidad de la unidad de procesamientoCapacidad de la unidad de procesamiento
Capacidad de la unidad de procesamiento
EduardMora4
 
Diagrama de bloque procesador intel
Diagrama de bloque procesador intelDiagrama de bloque procesador intel
Diagrama de bloque procesador intel
Cristian Paredes
 
CAPACIDAD DE LA UNIDAD DE PROCESAMIENTO
CAPACIDAD DE LA UNIDAD DE PROCESAMIENTOCAPACIDAD DE LA UNIDAD DE PROCESAMIENTO
CAPACIDAD DE LA UNIDAD DE PROCESAMIENTO
Rafael Espina
 
Capacidad de la unidad de procesamiento
Capacidad de la unidad de procesamientoCapacidad de la unidad de procesamiento
Capacidad de la unidad de procesamiento
JehisglayOliveros
 
Andrea Avendaño 28.041.479
Andrea Avendaño 28.041.479Andrea Avendaño 28.041.479
Andrea Avendaño 28.041.479
Andrea Carolina
 
Estructura y funcionamiento del procesador
Estructura y funcionamiento del procesadorEstructura y funcionamiento del procesador
Estructura y funcionamiento del procesador
Jose Diaz Silva
 
Capacidad de la unidad de procesamiento
Capacidad de la unidad de procesamientoCapacidad de la unidad de procesamiento
Capacidad de la unidad de procesamiento
LucianoCabrera7
 
268109592 operacion-general-de-la-memoria
268109592 operacion-general-de-la-memoria268109592 operacion-general-de-la-memoria
268109592 operacion-general-de-la-memoria
Rebeca Ortega
 
Arquitectura de computadoras II-Codigo de Operaciones y Campo de Direccionami...
Arquitectura de computadoras II-Codigo de Operaciones y Campo de Direccionami...Arquitectura de computadoras II-Codigo de Operaciones y Campo de Direccionami...
Arquitectura de computadoras II-Codigo de Operaciones y Campo de Direccionami...
Mari Cruz
 
Tipos De Lenguajes
Tipos De LenguajesTipos De Lenguajes
Tipos De Lenguajes
orfeo_d_lirabel
 
lenguaje ensamblado
lenguaje ensambladolenguaje ensamblado
lenguaje ensamblado
Carlos Manuel
 
Yeimir rincon 20%
Yeimir rincon 20%Yeimir rincon 20%
Yeimir rincon 20%
yeimirsthuarg
 
FUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
FUNDAMENTOS DEL LENGUAJE ENSAMBLADORFUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
FUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
Jesus Adrian Muñoa Martinez
 
Organización y estructura interna del cpu
Organización y estructura interna del cpuOrganización y estructura interna del cpu
Organización y estructura interna del cpuIsaí Beto Matz Mijes
 

La actualidad más candente (19)

El procesador y sus registros internos
El procesador y sus registros internosEl procesador y sus registros internos
El procesador y sus registros internos
 
Capacidad de la unidad de procesamiento por andres maica
Capacidad de la unidad de procesamiento por andres maicaCapacidad de la unidad de procesamiento por andres maica
Capacidad de la unidad de procesamiento por andres maica
 
Unidad 2 arquitectura del computador
Unidad 2 arquitectura del computadorUnidad 2 arquitectura del computador
Unidad 2 arquitectura del computador
 
Microprocesadores: Registros Internos
Microprocesadores: Registros InternosMicroprocesadores: Registros Internos
Microprocesadores: Registros Internos
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Capacidad de la unidad de procesamiento
Capacidad de la unidad de procesamientoCapacidad de la unidad de procesamiento
Capacidad de la unidad de procesamiento
 
Diagrama de bloque procesador intel
Diagrama de bloque procesador intelDiagrama de bloque procesador intel
Diagrama de bloque procesador intel
 
CAPACIDAD DE LA UNIDAD DE PROCESAMIENTO
CAPACIDAD DE LA UNIDAD DE PROCESAMIENTOCAPACIDAD DE LA UNIDAD DE PROCESAMIENTO
CAPACIDAD DE LA UNIDAD DE PROCESAMIENTO
 
Capacidad de la unidad de procesamiento
Capacidad de la unidad de procesamientoCapacidad de la unidad de procesamiento
Capacidad de la unidad de procesamiento
 
Andrea Avendaño 28.041.479
Andrea Avendaño 28.041.479Andrea Avendaño 28.041.479
Andrea Avendaño 28.041.479
 
Estructura y funcionamiento del procesador
Estructura y funcionamiento del procesadorEstructura y funcionamiento del procesador
Estructura y funcionamiento del procesador
 
Capacidad de la unidad de procesamiento
Capacidad de la unidad de procesamientoCapacidad de la unidad de procesamiento
Capacidad de la unidad de procesamiento
 
268109592 operacion-general-de-la-memoria
268109592 operacion-general-de-la-memoria268109592 operacion-general-de-la-memoria
268109592 operacion-general-de-la-memoria
 
Arquitectura de computadoras II-Codigo de Operaciones y Campo de Direccionami...
Arquitectura de computadoras II-Codigo de Operaciones y Campo de Direccionami...Arquitectura de computadoras II-Codigo de Operaciones y Campo de Direccionami...
Arquitectura de computadoras II-Codigo de Operaciones y Campo de Direccionami...
 
Tipos De Lenguajes
Tipos De LenguajesTipos De Lenguajes
Tipos De Lenguajes
 
lenguaje ensamblado
lenguaje ensambladolenguaje ensamblado
lenguaje ensamblado
 
Yeimir rincon 20%
Yeimir rincon 20%Yeimir rincon 20%
Yeimir rincon 20%
 
FUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
FUNDAMENTOS DEL LENGUAJE ENSAMBLADORFUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
FUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
 
Organización y estructura interna del cpu
Organización y estructura interna del cpuOrganización y estructura interna del cpu
Organización y estructura interna del cpu
 

Similar a 02e.Memoria de programa

Interrupciones de la bios
Interrupciones de la biosInterrupciones de la bios
Interrupciones de la bios
César Salazar
 
Presentación final
Presentación finalPresentación final
Presentación finalitueii
 
Evolucion De Los Microprocesadores
Evolucion De Los MicroprocesadoresEvolucion De Los Microprocesadores
Evolucion De Los Microprocesadoresguesta60221
 
C2- Arquitectura del Microprocesador.pptx
C2- Arquitectura del Microprocesador.pptxC2- Arquitectura del Microprocesador.pptx
C2- Arquitectura del Microprocesador.pptx
Nombre Apellidos
 
Robotica2
Robotica2Robotica2
Robotica2
Jovanni Patiño
 
Introducción pic 16 f 84 universidad de la marina mercante
Introducción pic 16 f 84   universidad de la marina mercanteIntroducción pic 16 f 84   universidad de la marina mercante
Introducción pic 16 f 84 universidad de la marina mercanteDaniel Remondegui
 
Tema1
Tema1Tema1
Curso Micro Tema 2
Curso Micro Tema 2Curso Micro Tema 2
Curso Micro Tema 2
Luis Zurita
 
Arquitectura Microcontrolador PIC16F887
Arquitectura Microcontrolador PIC16F887Arquitectura Microcontrolador PIC16F887
Arquitectura Microcontrolador PIC16F887
Fernando Aparicio Urbano Molano
 
Introduccion_a_los_Microcontroladores_v2.ppt
Introduccion_a_los_Microcontroladores_v2.pptIntroduccion_a_los_Microcontroladores_v2.ppt
Introduccion_a_los_Microcontroladores_v2.ppt
JimyJavier
 
Introduccion a los_microcontroladores_v2
Introduccion a los_microcontroladores_v2Introduccion a los_microcontroladores_v2
Introduccion a los_microcontroladores_v2
Gonzalo Gomez
 
M.c
M.cM.c
Micc temas examen
Micc temas examenMicc temas examen
Micc temas examen
Jair BG
 
02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores pic02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores picJonathan Ruiz de Garibay
 
Introduccion a las herramientas libres GNU/Linux para la programacion de micr...
Introduccion a las herramientas libres GNU/Linux para la programacion de micr...Introduccion a las herramientas libres GNU/Linux para la programacion de micr...
Introduccion a las herramientas libres GNU/Linux para la programacion de micr...georgeguitar
 
Von neuman
Von neumanVon neuman
Von neumantuxman82
 

Similar a 02e.Memoria de programa (20)

02c.Unidad central de proceso
02c.Unidad central de proceso02c.Unidad central de proceso
02c.Unidad central de proceso
 
Interrupciones de la bios
Interrupciones de la biosInterrupciones de la bios
Interrupciones de la bios
 
Presentación final
Presentación finalPresentación final
Presentación final
 
Cartilla pic16f877
Cartilla pic16f877Cartilla pic16f877
Cartilla pic16f877
 
Evolucion De Los Microprocesadores
Evolucion De Los MicroprocesadoresEvolucion De Los Microprocesadores
Evolucion De Los Microprocesadores
 
C2- Arquitectura del Microprocesador.pptx
C2- Arquitectura del Microprocesador.pptxC2- Arquitectura del Microprocesador.pptx
C2- Arquitectura del Microprocesador.pptx
 
Robotica2
Robotica2Robotica2
Robotica2
 
Introducción pic 16 f 84 universidad de la marina mercante
Introducción pic 16 f 84   universidad de la marina mercanteIntroducción pic 16 f 84   universidad de la marina mercante
Introducción pic 16 f 84 universidad de la marina mercante
 
Tema1
Tema1Tema1
Tema1
 
Tema1 - Introducción a Computación
Tema1 - Introducción a ComputaciónTema1 - Introducción a Computación
Tema1 - Introducción a Computación
 
Curso Micro Tema 2
Curso Micro Tema 2Curso Micro Tema 2
Curso Micro Tema 2
 
Arquitectura Microcontrolador PIC16F887
Arquitectura Microcontrolador PIC16F887Arquitectura Microcontrolador PIC16F887
Arquitectura Microcontrolador PIC16F887
 
Introduccion_a_los_Microcontroladores_v2.ppt
Introduccion_a_los_Microcontroladores_v2.pptIntroduccion_a_los_Microcontroladores_v2.ppt
Introduccion_a_los_Microcontroladores_v2.ppt
 
Introduccion a los_microcontroladores_v2
Introduccion a los_microcontroladores_v2Introduccion a los_microcontroladores_v2
Introduccion a los_microcontroladores_v2
 
M.c
M.cM.c
M.c
 
Micc temas examen
Micc temas examenMicc temas examen
Micc temas examen
 
Introducción a la Computadora
Introducción a la ComputadoraIntroducción a la Computadora
Introducción a la Computadora
 
02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores pic02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores pic
 
Introduccion a las herramientas libres GNU/Linux para la programacion de micr...
Introduccion a las herramientas libres GNU/Linux para la programacion de micr...Introduccion a las herramientas libres GNU/Linux para la programacion de micr...
Introduccion a las herramientas libres GNU/Linux para la programacion de micr...
 
Von neuman
Von neumanVon neuman
Von neuman
 

Más de Jonathan Ruiz de Garibay

Vocaciones STEM
Vocaciones STEMVocaciones STEM
Vocaciones STEM
Jonathan Ruiz de Garibay
 
Configuraciones con transistores BJT
Configuraciones con transistores BJTConfiguraciones con transistores BJT
Configuraciones con transistores BJT
Jonathan Ruiz de Garibay
 
Amplificadores Multietapa
Amplificadores MultietapaAmplificadores Multietapa
Amplificadores Multietapa
Jonathan Ruiz de Garibay
 
Amplificación de señal con BJT
Amplificación de señal con BJTAmplificación de señal con BJT
Amplificación de señal con BJT
Jonathan Ruiz de Garibay
 
Recta de carga para señal
Recta de carga para señalRecta de carga para señal
Recta de carga para señal
Jonathan Ruiz de Garibay
 
Codesign-Oriented Platform for Agile Internet of Things Prototype Development
Codesign-Oriented Platform for Agile Internet of Things Prototype DevelopmentCodesign-Oriented Platform for Agile Internet of Things Prototype Development
Codesign-Oriented Platform for Agile Internet of Things Prototype Development
Jonathan Ruiz de Garibay
 
Introducción a la planificación de proyectos
Introducción a la planificación de proyectosIntroducción a la planificación de proyectos
Introducción a la planificación de proyectosJonathan Ruiz de Garibay
 

Más de Jonathan Ruiz de Garibay (20)

Vocaciones STEM
Vocaciones STEMVocaciones STEM
Vocaciones STEM
 
Configuraciones con transistores BJT
Configuraciones con transistores BJTConfiguraciones con transistores BJT
Configuraciones con transistores BJT
 
Amplificadores Multietapa
Amplificadores MultietapaAmplificadores Multietapa
Amplificadores Multietapa
 
Amplificación de señal con BJT
Amplificación de señal con BJTAmplificación de señal con BJT
Amplificación de señal con BJT
 
Recta de carga para señal
Recta de carga para señalRecta de carga para señal
Recta de carga para señal
 
Práctica09.Librerías
Práctica09.LibreríasPráctica09.Librerías
Práctica09.Librerías
 
Práctica08.Comunicaciones
Práctica08.ComunicacionesPráctica08.Comunicaciones
Práctica08.Comunicaciones
 
Práctica06.Controlando Motores
Práctica06.Controlando MotoresPráctica06.Controlando Motores
Práctica06.Controlando Motores
 
Práctica05.Interrupciones en Arduino
Práctica05.Interrupciones en ArduinoPráctica05.Interrupciones en Arduino
Práctica05.Interrupciones en Arduino
 
Práctica04.Programando Arduino
Práctica04.Programando ArduinoPráctica04.Programando Arduino
Práctica04.Programando Arduino
 
Práctica01.Sistemas de Entrada Salida
Práctica01.Sistemas de Entrada SalidaPráctica01.Sistemas de Entrada Salida
Práctica01.Sistemas de Entrada Salida
 
Programación Basada en Autómatas
Programación Basada en AutómatasProgramación Basada en Autómatas
Programación Basada en Autómatas
 
Introduccion a la Programación
Introduccion a la ProgramaciónIntroduccion a la Programación
Introduccion a la Programación
 
Fundamentos de los Microcontroladores
Fundamentos de los MicrocontroladoresFundamentos de los Microcontroladores
Fundamentos de los Microcontroladores
 
Polarización de los Transistores
Polarización de los TransistoresPolarización de los Transistores
Polarización de los Transistores
 
Programación en Arduino
Programación en ArduinoProgramación en Arduino
Programación en Arduino
 
Codesign-Oriented Platform for Agile Internet of Things Prototype Development
Codesign-Oriented Platform for Agile Internet of Things Prototype DevelopmentCodesign-Oriented Platform for Agile Internet of Things Prototype Development
Codesign-Oriented Platform for Agile Internet of Things Prototype Development
 
Introducción a la planificación de proyectos
Introducción a la planificación de proyectosIntroducción a la planificación de proyectos
Introducción a la planificación de proyectos
 
01.Puntos Clave de una Presentación Oral
01.Puntos Clave de una Presentación Oral01.Puntos Clave de una Presentación Oral
01.Puntos Clave de una Presentación Oral
 
02.El Soporte Visual
02.El Soporte Visual02.El Soporte Visual
02.El Soporte Visual
 

02e.Memoria de programa

  • 1. Sistemas Basados en Microprocesadores Memoria de Programa
  • 2. Memoria de programa  Memoria de tipo Flash, con una capacidad máxima direccionable de 2MBytes (21 bits)  Las instrucciones ocupan 16 bits, y cada posición de memoria es de 8 bits.  Cada instrucción ocupa dos posiciones.  Direcciones dedicadas  0000h = vector de reset  0008h = vector de interrupción HP (Hight Priority)  0018h = vector de interrupción LP (Low Priority)  Se puede leer, escribir y borrar mediante instrucciones software. http://paginaspersonales.deusto.es/jonathan.garibay/
  • 3. Memoria de programa (continuación…) Contador de programa Vector de reset Pila con capacidad para 31 direcciones Vector de interrupción HP Vector de interrupción LP http://paginaspersonales.deusto.es/jonathan.garibay/
  • 4. Memoria de programa (continuación…)  El contador de programa o PC guarda la dirección de la siguiente instrucción a ejecutar.  Se inicializa a 0x0000 después de un reset.  Se autoincrementa al ejecutar cada instrucción, de forma que la secuencia natural de ejecución del programa es lineal, una instrucción detrás de otra.  Algunas instrucciones de control cambian el valor del PC, alterando la secuencia lineal de ejecución (goto, call…)  El PC es también accesible al programador como registro de memoria interna de datos. http://paginaspersonales.deusto.es/jonathan.garibay/
  • 5. Memoria de programa (continuación…)  Existe una memoria interna dedicada independiente, organizada en forma de pila (Firts In Last Out).  Guarda las direcciones de retorno de subrrutinas e interrupciones.  El puntero de la pila es accesible para lectura y escritura desde software. http://paginaspersonales.deusto.es/jonathan.garibay/
  • 6. Memoria de programa (continuación…)  Instrucciones de manejo de pila  pop: genera un POP en el stack  push: genera un PUSH en el stack http://paginaspersonales.deusto.es/jonathan.garibay/
  • 7. Memoria de programa (continuación…)  Instrucciones de control  call n: llamada a subrutina en la dirección “n”  return: regreso de una subrutina  retlw k: regreso con el literal “k” en WREG  bra n (goto n): salto a “n” incondicional  rcall n: llamada relativa a subrutina en “n”  nop: no hay operación  reset: reset por software del microcontrolador  sleep: entra en modo Standby http://paginaspersonales.deusto.es/jonathan.garibay/
  • 8. Memoria de programa (continuación…)  Ejemplo de funcionamiento: org 0x00 Pila 0x0000 inicio movlw 0x34 PC 31 0x0002 movwf TRISA 30 0x0004 call rutina1 29 0x0006 movlw 0x00 … 0x0008 movwf PORTA 0 0x000A goto inicio … 0x003A rutina2 movlw 0xAE 0x003C movwf TRISC 0x003E return … 0x0084 rutina1 clrf TRISB 0x0086 call rutina2 0x0088 return … http://paginaspersonales.deusto.es/jonathan.garibay/