Está en la página 1de 34

Universidad Nacional Jorge Basadre Grohmann

Facultad de Ingeniera
EAP Ingeniera en Informtica y Sistemas

ARQUITECTURA DE
COMPUTADORAS
Ciclo y Conjunto de
Instrucciones
Semestre 2015 - I
Ing. Carlos H. Acero Charaa

Objetivos
Objetivos

Conjunto de instrucciones
Arquitectura
Tipos de funcionalidad
Ejemplo de un conjunto de instrucciones

Ciclo de la instruccin

Ing. Carlos Acero

Arquitectura de Computadoras

Introduccin

Qu es una instruccin?

Ing. Carlos Acero

Arquitectura de Computadoras

Conjunto de Instrucciones
El conjunto o set de instrucciones de una CPU

determina lo que la CPU sabe hacer


determina su funcionalidad.

Es la parte visible del computador.


1

Opcode

Ing. Carlos Acero

Parmetros

Arquitectura de Computadoras

Conjunto de Instrucciones
La arquitectura del set de instrucciones depende
de la Arquitectura Fsica del computador.

En

particular
de
la
arquitectura
almacenamiento temporal o interna

de

Tipos de almacenamiento temporal:


Acumulador
Stack
Registros de uso general

Ing. Carlos Acero

Load Store (register - register)


Register Memory

Arquitectura de Computadoras

Conjunto de Instrucciones

Ejemplo Suma C = A + B
Stack

Ing. Carlos Acero

Acumulador

Registros

Registros

(register-memory)

(load - store)

Arquitectura de Computadoras

Conjunto de Instrucciones

Ejemplo Suma C = A + B
Stack

Acumulador

Registros

Registros

(register-memory)

(load - store)

Push A
Push B
Add
Pop C

Ing. Carlos Acero

Arquitectura de Computadoras

Conjunto de Instrucciones

Ejemplo Suma C = A + B
Stack

Acumulador

Registros

Registros

(register-memory)

(load - store)

Push A Load A
Push B Add B
Add

Store C

Pop C

Ing. Carlos Acero

Arquitectura de Computadoras

Conjunto de Instrucciones

Ejemplo Suma C = A + B
Stack

Acumulador

Registros

Registros

(register-memory)

(load - store)

Push A Load A

Load R1, A

Push B Add B

Add R1, B

Add

Store C, R1

Store C

Pop C

Ing. Carlos Acero

Arquitectura de Computadoras

Conjunto de Instrucciones

Ejemplo Suma C = A + B
Stack

Acumulador

Registros

Registros

(register-memory)

(load - store)

Push A Load A

Load R1, A

Load R1, A

Push B Add B

Add R1, B

Load R2, B

Add

Store C, R1

Add R3, R1, R2

Store C

Pop C

Ing. Carlos Acero

Store C, R3

10

Arquitectura de Computadoras

Conjunto de Instrucciones
del tipo de almacenamiento
Independiente
en todas las CPU se puede encontrar el
siguiente conjunto de instrucciones:

Instrucciones de transferencias de datos


Instrucciones aritmticas
Instrucciones lgicas
Control de flujo
Entrada / Salida

Ing. Carlos Acero

11

Arquitectura de Computadoras

Conjunto de Instrucciones
Instrucciones de transferencia de datos
Trasfiere

datos de una posicin a otra.


Ejemplos:

MOVE

transfiere dato entre registros de la CPU

STORE

registro memoria

LOAD

memoria registro

CLEAR

pone un registro en ceros

SET

pone un registro en unos

PUSH

introduce en el stack

POP

extrae del stack

Ing. Carlos Acero

12

Arquitectura de Computadoras

Conjunto de Instrucciones
Instrucciones aritmticas
Realiza

la operacin en la ALU o FPU


Actualiza cdigos e indicadores de condicin
Puede implicar transferencias de datos,
antes y/o despus

Ing. Carlos Acero

13

Arquitectura de Computadoras

Conjunto de Instrucciones
Instrucciones aritmticas
Ejemplos:

ADD

SUBSTRACT

MULTIPLY multiplica dos operandos

DIVIDE

ABSOLUTEcalcula valor absoluto del operando

NEGATE

cambia el signo del operando

INCREMENT

aumenta en 1 el operando

DECREMENT disminuye en 1 el operando

Ing. Carlos Acero

suma dos operandos


resta dos operandos

divide dos operandos

14

Arquitectura de Computadoras

Conjunto de Instrucciones
Instrucciones lgicas
Realiza

la operacin en la ALU
Actualiza cdigos e indicadores de condicin.
Puede implicar transferencias de datos,
antes y/o despus

Ing. Carlos Acero

15

Arquitectura de Computadoras

Conjunto de Instrucciones
Instrucciones lgicas
Ejemplos.

AND

OR

NOT

no lgico bit a bit

XOR

o exclusivo lgico bit a bit

TEST

evala condiciones

COMPARE comparacin de dos operandos

SHIFT

ROTATE

Ing. Carlos Acero

Y lgico bit a bit


O lgico bit a bit

desplazamiento izquierda o derecha


desplazamiento cclico
16

Arquitectura de Computadoras

Conjunto de Instrucciones
Control de flujo
Modifica

el contador de programa.
En el caso de llamadas y retornos de
subrutinas, gestiona la transferencia y enlace
de parmetros.
Gestiona el almacenamiento de direcciones
de retorno

Ing. Carlos Acero

17

Arquitectura de Computadoras

Conjunto de Instrucciones
Control de flujo
Ejemplos.

JUMP

JUMP CON salto condicional

JUMP SUB salto a subrutina

RETURN

SKIP

SKIP CON incremento condicional de PC en 1

HALT

detiene la ejecucin del programa

WAIT

detiene la ejecucin hasta una condicin

NOP

no ejecuta operacin alguna

Ing. Carlos Acero

salto incondicional

retorno de subrutina
incrementa PC en 1

18

Arquitectura de Computadoras

Conjunto de Instrucciones
Entrada / Salida
Cursa

una orden de control a un mdulo de

E/S
Lee

Ing. Carlos Acero

o escribe a un dispositivo de E/S.

19

Arquitectura de Computadoras

Conjunto de Instrucciones
Entrada / Salida
Ejemplos.

INPUT
transferir I/O memoria o registro
OUTPUT
transferir memoria o registro I/O
START I/O inicializa dispositivo I/O
TEST I/O
transfiere informacin de estado de I/O

Ing. Carlos Acero

20

Arquitectura de Computadoras

Conjunto de Instrucciones
Ej. Set de instrucciones del PIC 16F877a

Ing. Carlos Acero

21

Arquitectura de Computadoras

Conjunto de Instrucciones

Ing. Carlos Acero

22

Arquitectura de Computadoras

Conjunto de Instrucciones
Control de flujo en el PIC
Ejemplos.

JUMP

JUMP CON salto condicional

JUMP SUB salto a subrutina

RETURN

SKIP

SKIP CON incremento condicional de PC en 1

HALT

detiene la ejecucin del programa

WAIT

detiene la ejecucin hasta una condicin

NOP

no ejecuta operacin alguna

Ing. Carlos Acero

salto incondicional

retorno de subrutina
incrementa PC en 1

23

Arquitectura de Computadoras

Conjunto de Instrucciones
Control de flujo en el PIC
Pic16F877a

Ejemplos.

Goto

JUMP

JUMP CON salto condicional

JUMP SUB salto a subrutina

RETURN

SKIP

SKIP CON incremento condicional de PC en 1

HALT

detiene la ejecucin del programa

WAIT

detiene la ejecucin hasta una condicin

NOP

no ejecuta operacin alguna

Ing. Carlos Acero

salto incondicional

Call

retorno de subrutina
incrementa PC en 1

24

Decfsz
Incfsz
Btfsc
Btfss

Sleep
Arquitectura de Computadoras

Conjunto de Instrucciones

Ing. Carlos Acero

25

Arquitectura de Computadoras

Ciclo de Instrucciones

Ing. Carlos Acero

26

Arquitectura de Computadoras

Ciclo de una Instruccin

Cules son las


distintas partes
del ciclo de una
instruccin?

Ing. Carlos Acero

27

Arquitectura de Computadoras

Ciclo de una Instruccin


ch
t
e
F
Fetch
Lee la instruccin de
memoria
Carga la instruccin en IR
(Instruction Register)
Incrementa el PC (Program
Counter)

Ing. Carlos Acero

28

Arquitectura de Computadoras

Ciclo de una Instruccin


De
co

h
c
t
Fe

de

Decode
Interpreta el cdigo de
operacin
Determina si se requieren
operandos (operand
fetch)

Ing. Carlos Acero

29

Arquitectura de Computadoras

Ciclo de una Instruccin


De
co

h
c
t
Fe

Operand Fetch
Resuelve la direccin o lugar
donde se encuentran los
operandos
Almacena los operandos en
un registro interno

Ing. Carlos Acero

30

de

Operand
Fetch

Arquitectura de Computadoras

Ciclo de una Instruccin


c
t
e
F

De
co

de

Execute
Ejecuta toda la
instruccin
Operand
Fetch

Execute
Ing. Carlos Acero

31

Arquitectura de Computadoras

Ciclo de una Instruccin


De
co

ch
t
e
F

de

Writeback
Almacena Resultado

Operand
Fetch

Writeback

Execute
Ing. Carlos Acero

32

Arquitectura de Computadoras

Ciclo de una Instruccin


Resumen

Operand
fetch

Writeback

Decode

Execute

Fetch

Ing. Carlos Acero

33

Arquitectura de Computadoras

Resumen
Conjunto de instrucciones
Instrucciones de transferencias de datos
Instrucciones aritmticas
Instrucciones lgicas
Control de flujo
Entrada / Salida

Ciclo de la instruccin
Fetch
Decode
Operand Fetch
Execute
Writeback
Ing. Carlos Acero

34

Arquitectura de Computadoras

También podría gustarte