SlideShare a Scribd company logo
1 of 11
Download to read offline
Sistemas Basados en
   Microprocesadores

 Unidad Central de Proceso
CPU: Unidad Central de Proceso
 Es la responsable de la interpretación y ejecución de
 las instrucciones guardadas en la memoria de
 programa.
    Muchas de las instrucciones operan sobre la memoria de
     datos, para lo que se usa además la ALU (Unidad
     Aritmético-Lógica)
 La  CPU controla el bus de direcciones de la
  memoria de programa, el bus de direcciones de la
  memoria de datos y el acceso a la pila.
 Para la sincronización del funcionamiento de la CPU
  (y con ello de todo el µcontrolador) se utiliza un
  circuito oscilador.
 http://paginaspersonales.deusto.es/jonathan.garibay/
CPU: Unidad Central de Proceso (continuación…)
   Ejecución segmentada de instrucciones:
       En la mayoría de los procesadores, las instrucciones se
        buscan en la memoria y ejecutan de forma secuencial.
       En la ejecución Pipe-Line ambas fases se solapan de forma
        que, una instrucción se ejecuta al tiempo que se busca la
        siguiente, en un mismo ciclo.
       Cualquier instrucción de salto emplea dos ciclos para su
        búsqueda y ejecución.
           Se inserta una instrucción NOP automáticamente.
                        Busca 1ª   Ejecuta 1ª                                  En las instrucciones de
                                                                                salto se inserta NOP
                                   Busca 2ª     Ejecuta 2ª

1    movlw       0x55                           Busca 3ª     Ejecuta 3ª
2    movwf       PORTB
                                                             Busca 4ª      NOP
3    call        subr
                                                                          Busca 1ª
4    bsf         PORTA,RA3                                                  subr



    http://paginaspersonales.deusto.es/jonathan.garibay/
CPU: Unidad Central de Proceso (continuación…)
 La entrada de reloj está “dividida” internamente
 entre cuatro (Q1, Q2, Q3 y Q4), creando relojes
 internos utilizados para la decodificación de las
 instrucciones
    El contador de programa se incrementa a cada pulso del
     primero (Q1) de los cuatro relojes internos.
    La ejecución de una instrucción y la lectura de la
     siguiente se realiza en paralelo y se finalizan en el pulso
     del cuarto reloj (Q4).
                                   FOSC = 4MHz  TOSC = 250nS  TINST = 1µS  1MIPS
                                  FOSC = 20MHz  TOSC = 50nS  TINST = 200nS  5MIPS
                                                          …
                                                   MIPS = Millones de instrucciones por segundo




 http://paginaspersonales.deusto.es/jonathan.garibay/
CPU: Unidad Central de Proceso (continuación…)
   Cada ciclo Q provee la sincronización para los siguientes
    eventos:
       Q1  decodificación de la instrucción.
       Q2  lectura del dato (si lo hay)
       Q3  procesa el dato                      Realiza la lectura de la
                                              siguiente instrucción a ejecutar
       Q4  escribe el dato




                                                                      PC = PC + 2




            ¿Y cuando se produce un reset?
            ¿Y cuando se produce un salto?

    http://paginaspersonales.deusto.es/jonathan.garibay/
ALU: Unidad Aritmético-Lógica
 Realizatodas las operaciones aritméticas y lógicas
 indicadas en las instrucciones.
    Instrucciones con un solo operando
        Se trabaja siempre con un registro de la memoria de datos
    Instrucciones con dos operandos
      El registro de trabajo W es siempre uno de los operandos
      El otro operando puede ser un literal o un registro de la
       memoria de datos
 La ALU genera una serie de señales o códigos de
 condición para indicar casos como acarreo saliente,
 overflow, resultado cero, etc.


 http://paginaspersonales.deusto.es/jonathan.garibay/
ALU: Unidad Aritmético-Lógica (continuación…)
                                                   Bus de datos



                                                Resultado del
                                                multiplicador

                                                Multiplicador de 8 bits




                                              Registro de trabajo



                                             Unidad Aritmético-Lógica




 http://paginaspersonales.deusto.es/jonathan.garibay/
ALU: Unidad Aritmético-Lógica (continuación…)




 http://paginaspersonales.deusto.es/jonathan.garibay/
ALU: Unidad Aritmético-Lógica (continuación…)
   Instrucciones de operación orientada a un registro
       addwf f,d,a: suma “f” y WREG
       addwfc f,d,a: suma “f”, WREG y el bit carry
       andwf f,d,a: operación AND entre “f” y WREG
       decf f,d,a: decremento de “f”
       clrf f,a: registro “f” igual a cero
       movwf f,d,a: mueve “f” a WREG
       mulwf f,d,a: multiplica “f” con WREG
       rlcf f,d,a: rota “f” a la izquierda pasando por carry
       rlncf f,d,a: rota “f” a la izquierda sin pasar por carry
       …
   Instrucciones de operación orientada a un registro con salto
       decfsz f,d,a: decrementa “f”, salta si “f” es igual a cero
       dcfsnz f,d,a: decrementa “f”, salta si “f” no es igual a cero
       ...


    http://paginaspersonales.deusto.es/jonathan.garibay/
ALU: Unidad Aritmético-Lógica (continuación…)
 Instrucciones      de operación orientada a un bit
    bcf f,b,a: bit “b” del registro “f” igual a cero
    bsf f,b,a: bit “b” del registro “f” igual a uno
    btg f,b,a: cambia el estado del bit “b” del registro “f”
 Instrucciones      de operación orientada a un bit con
 salto
    btfsc f,b,a: verifica el bit “b” del resguitro “f”, salta si es
     cero
    btfss f,b,a: verifica el bit “b” del resguitro “f”, salta si es
     uno



 http://paginaspersonales.deusto.es/jonathan.garibay/
ALU: Unidad Aritmético-Lógica (continuación…)
 Instrucciones      de operación orientada a un literal
     addlw k: suma “k” y WREG
     andlw k: operación AND entre “k” y WREG
     movlw k: mueve “k” a WREG
     mullw k: multiplica “k” con WREG
     …
 Instrucciones      de control con bits de estado
     bc n: ve a la dirección “n” si hay carry
   bn n: ve a la dirección “n” si hay negative
   bnc n: ve a la dirección “n” si no hay carry
  …



 http://paginaspersonales.deusto.es/jonathan.garibay/

More Related Content

What's hot

Laborqatoio 1 telematica
Laborqatoio 1 telematicaLaborqatoio 1 telematica
Laborqatoio 1 telematicamaleja2012
 
Micp mej feb18_2011_solucion
Micp mej feb18_2011_solucionMicp mej feb18_2011_solucion
Micp mej feb18_2011_solucionJair BG
 
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizador
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizadorLab 8 eeprom_de_datos_y_tmr0_contador_y_temporizador
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizadorDaniel Pardo
 
Circuitos Digitales Secuenciales
Circuitos Digitales SecuencialesCircuitos Digitales Secuenciales
Circuitos Digitales SecuencialesEsteban Jesus
 
Curso Micro Tema 4
Curso Micro Tema 4Curso Micro Tema 4
Curso Micro Tema 4Luis Zurita
 
Micc final feb14_2009_soluc
Micc final feb14_2009_solucMicc final feb14_2009_soluc
Micc final feb14_2009_solucJair BG
 
Micc parcial dic9_2010 - copia (1)_sol
Micc parcial dic9_2010 - copia (1)_solMicc parcial dic9_2010 - copia (1)_sol
Micc parcial dic9_2010 - copia (1)_solJair BG
 
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxCurso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxJose Manuel Mansilla Carrasco
 
Introduccion a los Microcontroladores
Introduccion a los MicrocontroladoresIntroduccion a los Microcontroladores
Introduccion a los Microcontroladoresdavidcmos
 
Understanding Advanced Buffer Overflow
Understanding Advanced Buffer OverflowUnderstanding Advanced Buffer Overflow
Understanding Advanced Buffer OverflowConferencias FIST
 
Microcontroladores ii en c. tema 4
Microcontroladores ii en c. tema 4Microcontroladores ii en c. tema 4
Microcontroladores ii en c. tema 4Luis Zurita
 
Lenguaje ensamblador del microprocesador
Lenguaje ensamblador del microprocesadorLenguaje ensamblador del microprocesador
Lenguaje ensamblador del microprocesadorsmfch
 
Arquitectura escalar
Arquitectura escalarArquitectura escalar
Arquitectura escalarGotham Trix
 
Micc parcial dic9_2010 - copia (3)_sol
Micc parcial dic9_2010 - copia (3)_solMicc parcial dic9_2010 - copia (3)_sol
Micc parcial dic9_2010 - copia (3)_solJair BG
 
1.4.2 stack segment
1.4.2  stack  segment1.4.2  stack  segment
1.4.2 stack segmentgabo
 
Micc mejoramiento-sept2011-solucion
Micc mejoramiento-sept2011-solucionMicc mejoramiento-sept2011-solucion
Micc mejoramiento-sept2011-solucionJair BG
 
Electrónica digital: Maquina de estado finito
Electrónica digital: Maquina de estado finito Electrónica digital: Maquina de estado finito
Electrónica digital: Maquina de estado finito SANTIAGO PABLO ALBERTO
 
Introducpic
IntroducpicIntroducpic
Introducpicconalep
 

What's hot (19)

Laborqatoio 1 telematica
Laborqatoio 1 telematicaLaborqatoio 1 telematica
Laborqatoio 1 telematica
 
Micp mej feb18_2011_solucion
Micp mej feb18_2011_solucionMicp mej feb18_2011_solucion
Micp mej feb18_2011_solucion
 
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizador
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizadorLab 8 eeprom_de_datos_y_tmr0_contador_y_temporizador
Lab 8 eeprom_de_datos_y_tmr0_contador_y_temporizador
 
Circuitos Digitales Secuenciales
Circuitos Digitales SecuencialesCircuitos Digitales Secuenciales
Circuitos Digitales Secuenciales
 
Curso Micro Tema 4
Curso Micro Tema 4Curso Micro Tema 4
Curso Micro Tema 4
 
Micc final feb14_2009_soluc
Micc final feb14_2009_solucMicc final feb14_2009_soluc
Micc final feb14_2009_soluc
 
Micc parcial dic9_2010 - copia (1)_sol
Micc parcial dic9_2010 - copia (1)_solMicc parcial dic9_2010 - copia (1)_sol
Micc parcial dic9_2010 - copia (1)_sol
 
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxCurso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xx
 
Introduccion a los Microcontroladores
Introduccion a los MicrocontroladoresIntroduccion a los Microcontroladores
Introduccion a los Microcontroladores
 
Understanding Advanced Buffer Overflow
Understanding Advanced Buffer OverflowUnderstanding Advanced Buffer Overflow
Understanding Advanced Buffer Overflow
 
Microcontroladores ii en c. tema 4
Microcontroladores ii en c. tema 4Microcontroladores ii en c. tema 4
Microcontroladores ii en c. tema 4
 
Lenguaje ensamblador del microprocesador
Lenguaje ensamblador del microprocesadorLenguaje ensamblador del microprocesador
Lenguaje ensamblador del microprocesador
 
Semaforos
SemaforosSemaforos
Semaforos
 
Arquitectura escalar
Arquitectura escalarArquitectura escalar
Arquitectura escalar
 
Micc parcial dic9_2010 - copia (3)_sol
Micc parcial dic9_2010 - copia (3)_solMicc parcial dic9_2010 - copia (3)_sol
Micc parcial dic9_2010 - copia (3)_sol
 
1.4.2 stack segment
1.4.2  stack  segment1.4.2  stack  segment
1.4.2 stack segment
 
Micc mejoramiento-sept2011-solucion
Micc mejoramiento-sept2011-solucionMicc mejoramiento-sept2011-solucion
Micc mejoramiento-sept2011-solucion
 
Electrónica digital: Maquina de estado finito
Electrónica digital: Maquina de estado finito Electrónica digital: Maquina de estado finito
Electrónica digital: Maquina de estado finito
 
Introducpic
IntroducpicIntroducpic
Introducpic
 

Similar to CPU-ALU: Sistemas basados en microprocesadores

Organizacion de la unidad central de procesamiento
Organizacion de la unidad central de procesamientoOrganizacion de la unidad central de procesamiento
Organizacion de la unidad central de procesamientoHarold Torres
 
Organizacion-de-la-unidad-central-de-procesamiento
Organizacion-de-la-unidad-central-de-procesamientoOrganizacion-de-la-unidad-central-de-procesamiento
Organizacion-de-la-unidad-central-de-procesamientoJosé Luis Olivares
 
Microcomputadoras al detalle
Microcomputadoras al detalleMicrocomputadoras al detalle
Microcomputadoras al detalleLupiita Paniagua
 
Microcomputadoras al detalle
Microcomputadoras al detalleMicrocomputadoras al detalle
Microcomputadoras al detallePTA Records
 
Registros de control y estados de la CPU
Registros de control y estados de la CPURegistros de control y estados de la CPU
Registros de control y estados de la CPUIvan Porras
 
Curso Micro Tema 2
Curso Micro Tema 2Curso Micro Tema 2
Curso Micro Tema 2Luis Zurita
 
Arquitectura interna
Arquitectura internaArquitectura interna
Arquitectura internagbermeo
 
base de datos
base de datosbase de datos
base de datosnotalone
 
Microcomputadoras al detalle
Microcomputadoras al detalleMicrocomputadoras al detalle
Microcomputadoras al detalledsolana
 
dokumen.tips_arquitectura-de-von-neumann-unidad-de-control-ula-registradores-...
dokumen.tips_arquitectura-de-von-neumann-unidad-de-control-ula-registradores-...dokumen.tips_arquitectura-de-von-neumann-unidad-de-control-ula-registradores-...
dokumen.tips_arquitectura-de-von-neumann-unidad-de-control-ula-registradores-...CarlitosSalgadoOrtuo1
 
Microcontroladores: Ejemplo de un computador real: AtmegaX8PA
Microcontroladores: Ejemplo de un computador real: AtmegaX8PAMicrocontroladores: Ejemplo de un computador real: AtmegaX8PA
Microcontroladores: Ejemplo de un computador real: AtmegaX8PASANTIAGO PABLO ALBERTO
 
Ejercicios Ordenador_zuz (1).pdf
Ejercicios Ordenador_zuz (1).pdfEjercicios Ordenador_zuz (1).pdf
Ejercicios Ordenador_zuz (1).pdfMelidaCedeo1
 

Similar to CPU-ALU: Sistemas basados en microprocesadores (20)

Organizacion de la unidad central de procesamiento
Organizacion de la unidad central de procesamientoOrganizacion de la unidad central de procesamiento
Organizacion de la unidad central de procesamiento
 
Organizacion-de-la-unidad-central-de-procesamiento
Organizacion-de-la-unidad-central-de-procesamientoOrganizacion-de-la-unidad-central-de-procesamiento
Organizacion-de-la-unidad-central-de-procesamiento
 
Microcomputadoras al detalle
Microcomputadoras al detalleMicrocomputadoras al detalle
Microcomputadoras al detalle
 
Microcomputadoras al detalle
Microcomputadoras al detalleMicrocomputadoras al detalle
Microcomputadoras al detalle
 
Microcomputadoras al detalle
Microcomputadoras al detalleMicrocomputadoras al detalle
Microcomputadoras al detalle
 
Instrucciones y Programacion
Instrucciones y ProgramacionInstrucciones y Programacion
Instrucciones y Programacion
 
Registros de control y estados de la CPU
Registros de control y estados de la CPURegistros de control y estados de la CPU
Registros de control y estados de la CPU
 
Apunt2a
Apunt2aApunt2a
Apunt2a
 
Curso Micro Tema 2
Curso Micro Tema 2Curso Micro Tema 2
Curso Micro Tema 2
 
Arquitectura interna
Arquitectura internaArquitectura interna
Arquitectura interna
 
base de datos
base de datosbase de datos
base de datos
 
Microcomputadoras al detalle
Microcomputadoras al detalleMicrocomputadoras al detalle
Microcomputadoras al detalle
 
Apuntes del pic 16f84
Apuntes del pic 16f84Apuntes del pic 16f84
Apuntes del pic 16f84
 
Cpu
CpuCpu
Cpu
 
dokumen.tips_arquitectura-de-von-neumann-unidad-de-control-ula-registradores-...
dokumen.tips_arquitectura-de-von-neumann-unidad-de-control-ula-registradores-...dokumen.tips_arquitectura-de-von-neumann-unidad-de-control-ula-registradores-...
dokumen.tips_arquitectura-de-von-neumann-unidad-de-control-ula-registradores-...
 
Aplicaciones con el pic 16f84
Aplicaciones con el pic 16f84Aplicaciones con el pic 16f84
Aplicaciones con el pic 16f84
 
Aplicaciones con el pic 16f84
Aplicaciones con el pic 16f84Aplicaciones con el pic 16f84
Aplicaciones con el pic 16f84
 
Microcontroladores: Ejemplo de un computador real: AtmegaX8PA
Microcontroladores: Ejemplo de un computador real: AtmegaX8PAMicrocontroladores: Ejemplo de un computador real: AtmegaX8PA
Microcontroladores: Ejemplo de un computador real: AtmegaX8PA
 
El cpu
El cpuEl cpu
El cpu
 
Ejercicios Ordenador_zuz (1).pdf
Ejercicios Ordenador_zuz (1).pdfEjercicios Ordenador_zuz (1).pdf
Ejercicios Ordenador_zuz (1).pdf
 

More from 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 DevelopmentJonathan 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
 

More from 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
 

CPU-ALU: Sistemas basados en microprocesadores

  • 1. Sistemas Basados en Microprocesadores Unidad Central de Proceso
  • 2. CPU: Unidad Central de Proceso  Es la responsable de la interpretación y ejecución de las instrucciones guardadas en la memoria de programa.  Muchas de las instrucciones operan sobre la memoria de datos, para lo que se usa además la ALU (Unidad Aritmético-Lógica)  La CPU controla el bus de direcciones de la memoria de programa, el bus de direcciones de la memoria de datos y el acceso a la pila.  Para la sincronización del funcionamiento de la CPU (y con ello de todo el µcontrolador) se utiliza un circuito oscilador. http://paginaspersonales.deusto.es/jonathan.garibay/
  • 3. CPU: Unidad Central de Proceso (continuación…)  Ejecución segmentada de instrucciones:  En la mayoría de los procesadores, las instrucciones se buscan en la memoria y ejecutan de forma secuencial.  En la ejecución Pipe-Line ambas fases se solapan de forma que, una instrucción se ejecuta al tiempo que se busca la siguiente, en un mismo ciclo.  Cualquier instrucción de salto emplea dos ciclos para su búsqueda y ejecución.  Se inserta una instrucción NOP automáticamente. Busca 1ª Ejecuta 1ª En las instrucciones de salto se inserta NOP Busca 2ª Ejecuta 2ª 1 movlw 0x55 Busca 3ª Ejecuta 3ª 2 movwf PORTB Busca 4ª NOP 3 call subr Busca 1ª 4 bsf PORTA,RA3 subr http://paginaspersonales.deusto.es/jonathan.garibay/
  • 4. CPU: Unidad Central de Proceso (continuación…)  La entrada de reloj está “dividida” internamente entre cuatro (Q1, Q2, Q3 y Q4), creando relojes internos utilizados para la decodificación de las instrucciones  El contador de programa se incrementa a cada pulso del primero (Q1) de los cuatro relojes internos.  La ejecución de una instrucción y la lectura de la siguiente se realiza en paralelo y se finalizan en el pulso del cuarto reloj (Q4). FOSC = 4MHz  TOSC = 250nS  TINST = 1µS  1MIPS FOSC = 20MHz  TOSC = 50nS  TINST = 200nS  5MIPS … MIPS = Millones de instrucciones por segundo http://paginaspersonales.deusto.es/jonathan.garibay/
  • 5. CPU: Unidad Central de Proceso (continuación…)  Cada ciclo Q provee la sincronización para los siguientes eventos:  Q1  decodificación de la instrucción.  Q2  lectura del dato (si lo hay)  Q3  procesa el dato Realiza la lectura de la siguiente instrucción a ejecutar  Q4  escribe el dato PC = PC + 2 ¿Y cuando se produce un reset? ¿Y cuando se produce un salto? http://paginaspersonales.deusto.es/jonathan.garibay/
  • 6. ALU: Unidad Aritmético-Lógica  Realizatodas las operaciones aritméticas y lógicas indicadas en las instrucciones.  Instrucciones con un solo operando  Se trabaja siempre con un registro de la memoria de datos  Instrucciones con dos operandos  El registro de trabajo W es siempre uno de los operandos  El otro operando puede ser un literal o un registro de la memoria de datos  La ALU genera una serie de señales o códigos de condición para indicar casos como acarreo saliente, overflow, resultado cero, etc. http://paginaspersonales.deusto.es/jonathan.garibay/
  • 7. ALU: Unidad Aritmético-Lógica (continuación…) Bus de datos Resultado del multiplicador Multiplicador de 8 bits Registro de trabajo Unidad Aritmético-Lógica http://paginaspersonales.deusto.es/jonathan.garibay/
  • 8. ALU: Unidad Aritmético-Lógica (continuación…) http://paginaspersonales.deusto.es/jonathan.garibay/
  • 9. ALU: Unidad Aritmético-Lógica (continuación…)  Instrucciones de operación orientada a un registro  addwf f,d,a: suma “f” y WREG  addwfc f,d,a: suma “f”, WREG y el bit carry  andwf f,d,a: operación AND entre “f” y WREG  decf f,d,a: decremento de “f”  clrf f,a: registro “f” igual a cero  movwf f,d,a: mueve “f” a WREG  mulwf f,d,a: multiplica “f” con WREG  rlcf f,d,a: rota “f” a la izquierda pasando por carry  rlncf f,d,a: rota “f” a la izquierda sin pasar por carry  …  Instrucciones de operación orientada a un registro con salto  decfsz f,d,a: decrementa “f”, salta si “f” es igual a cero  dcfsnz f,d,a: decrementa “f”, salta si “f” no es igual a cero  ... http://paginaspersonales.deusto.es/jonathan.garibay/
  • 10. ALU: Unidad Aritmético-Lógica (continuación…)  Instrucciones de operación orientada a un bit  bcf f,b,a: bit “b” del registro “f” igual a cero  bsf f,b,a: bit “b” del registro “f” igual a uno  btg f,b,a: cambia el estado del bit “b” del registro “f”  Instrucciones de operación orientada a un bit con salto  btfsc f,b,a: verifica el bit “b” del resguitro “f”, salta si es cero  btfss f,b,a: verifica el bit “b” del resguitro “f”, salta si es uno http://paginaspersonales.deusto.es/jonathan.garibay/
  • 11. ALU: Unidad Aritmético-Lógica (continuación…)  Instrucciones de operación orientada a un literal  addlw k: suma “k” y WREG  andlw k: operación AND entre “k” y WREG  movlw k: mueve “k” a WREG  mullw k: multiplica “k” con WREG  …  Instrucciones de control con bits de estado  bc n: ve a la dirección “n” si hay carry  bn n: ve a la dirección “n” si hay negative  bnc n: ve a la dirección “n” si no hay carry … http://paginaspersonales.deusto.es/jonathan.garibay/