mailto: ymeza@ubiobio.cl Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 2 1945 John Von Neumann John von Neumann escribe su borrador sobre la arquitectura de los computadores el cual sirve de base al concepto actual de computador. Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 3 Arquitectura de Von Neumann Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 4 La CPU de von Neumann Arithmetic Logic Circuits AC Control Circuits PC IR AR DR Main Memory C0 C1 C2 C12 Flags ... Devices ALU:
Arithmetic Logic Unit Control Unit Registros del Procesador Bus de control Bus de direcciones Bus de datos Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 5 Ciclo de instruccin PROCESA BEGIN CPU ACTIVA? {DR M(AR)} AR DR(ADR) READ M AC DR AC=0 AR DR(ADR) AR DR(ADR) AR DR(ADR) DR
AC WRITE M READ M READ M AC AC + DR AC AC ^ DR PC DR(ADR) AC SHIFT AC RSHIFT COMP JmZ JMP AND ADD STR LD SI FIN NO SI AC DECODIFICACION FETCH DE OPERANDO AR PC READ M PC PC + 1 IR DR(OPCODE) DECODE OPCODE NO FETCH INSTRUCCION 0 1, 2 3 4 5, 6 7 4 5 6, 7 5, 6 7 4 4 7 5, 6 7 7 7 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 6 Estructura de un computador Arquitectura de Von Neumann Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 7 Simulacin de la memoria DIRECCIN CONTENIDO 01h Valor 1 02h VACO 03h Valor 2
0Fh Valor K MD[02h] MD[0Fh] Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 8 Nuestras Instrucciones Instrucciones de Transferencia de Datos lda #Num lda Dir lda [Dir] str Dir rda Dir wrt AC Num AC MD[Dir] AC MD[[Dir]] MD[Dir] AC MD[Dir] Teclado Monitor AC Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 9 Nuestras Instrucciones Instrucciones Aritmticas y Lgicas
Todas las operaciones asumen que el primer operando est almacenado en el Acumulador add #Num add Dir add [Dir] sub #Num sub Dir sub [Dir] mul #Num mul Dir mul [Dir] div #Num div Dir div [Dir] sqr and Dir or Dir not AC AC + Num AC AC + MD[Dir] AC AC + MD[[Dir]] AC AC - Num AC AC - MD[Dir] AC AC - MD[[Dir]] AC AC * Num AC AC * MD[Dir] AC AC * MD[[Dir]] AC AC / Num AC AC / MD[Dir] AC AC / MD[[Dir]] AC raz(AC) AC AC and Dir AC AC or Dir AC negacin AC Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 10 Nuestras Instrucciones Instrucciones de transferencia de control jmp Dir_p
jmz Dir_p
jml Dir_p PC Dir_p
Si (AC = 0) entonces PC Dir_p
Si (AC < 0) entonces PC Dir_p Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 11 Cmo funciona este programa? La mquina comienza ejecutando la primera instruccin que aparece. 01h lda #15 02h wrt 03h end
Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 12 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 02h IR lda # 15 01h lda #15 02h wrt 03h end
AC 15 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 13 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 03h IR wrt 01h lda #15 02h wrt 03h end
AC 15 15 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 14 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 04h IR end 01h lda #15 02h wrt 03h end
AC 15 15 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 15 Cmo funciona este programa? La mquina comienza ejecutando la primera instruccin que aparece. 01h rda 10h 02h rda 11h 03h lda 10h 04h add 11h 05h wrt 06h end Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 16 Cmo funciona este programa? 01h rda 10h 02h rda 11h 03h lda 10h 04h add 11h 05h wrt 06h end Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos DIRECCIN DATO 01h
10h VALOR LEIDO 11h
99h PC 02h IR rda 10h Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 17 Cmo funciona este programa? 01h rda 10h 02h rda 11h 03h lda 10h 04h add 11h 05h wrt 06h end Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos DIRECCIN DATO 01h
10h 29 11h VALOR LEIDO
99h PC 03h IR rda 11h Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 18 Cmo funciona este programa? 01h rda 10h 02h rda 11h 03h lda 10h 04h add 11h 05h wrt 06h end Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos DIRECCIN DATO 01h
10h 29 11h 6
99h AC 29 PC 04h IR lda 10h Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 19 Cmo funciona este programa? 01h rda 10h 02h rda 11h 03h lda 10h 04h add 11h 05h wrt 06h end Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos DIRECCIN DATO 01h
10h 29 11h 6
99h AC 29 AC 35 PC 05h IR add 11h Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 20 Cmo funciona este programa? 01h rda 10h 02h rda 11h 03h lda 10h 04h add 11h 05h wrt 06h end Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos AC 35 PC 06h IR wrt 35 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 21 Cmo funciona este programa? 01h rda 10h 02h rda 11h 03h lda 10h 04h add 11h 05h wrt 06h end Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos AC 35 PC 07h IR end 35 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 22 Cmo funciona este programa? 01h rda 10h 02h rda 11h 03h lda 10h 04h add 11h 05h wrt 06h end Existe otra alternativa de realizar este programa? Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 23 Cmo funciona este programa? La mquina comienza ejecutando la primera instruccin que aparece. 01h lda #0 02h wrt 03h add #2 04h jmp 02h
Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 24 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
AC 0 PC 02h IR lda #0 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 25 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
AC 0 0 PC 03h IR wrt Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 26 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC MR
AC 0 0 AC 2 PC 04h IR add #2 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 27 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
AC 2 0 PC 02h IR jmp 02h Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 28 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
AC 2 0 PC 03h IR wrt 2 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 29 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
AC 2 0 AC 4 PC 04h IR add #2 2 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 30 Seguimiento de programas 01h rda 80h 02h rda 81h 03h lda 81h 04h jmz 08h 05h lda 80h 06h div 81h 07h jmp 09h 08h lda #0 09h wrt 10h end
Qu hace el siguiente programa? Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 31 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 02h IR rda 80h DIRECCIN DATO 01h
Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 32 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 03h IR rda 81h DIRECCIN DATO 01h
Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 33 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 04h IR lda 81h DIRECCIN DATO 01h
80h 15 81h 5
AC 5 01h rda 80h 02h rda 81h 03h lda 81h 04h jmz 08h 05h lda 80h 06h div 81h 07h jmp 09h 08h lda #0 09h wrt 10h end
Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 34 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 05h IR jmz 08h DIRECCIN DATO 01h
80h 15 81h 5
AC 5 01h rda 80h 02h rda 81h 03h lda 81h 04h jmz 08h 05h lda 80h 06h div 81h 07h jmp 09h 08h lda #0 09h wrt 10h end
Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 35 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 06h IR lda 80h DIRECCIN DATO 01h
80h 15 81h 5
AC 5 01h rda 80h 02h rda 81h 03h lda 81h 04h jmz 08h 05h lda 80h 06h div 81h 07h jmp 09h 08h lda #0 09h wrt 10h end
AC 15 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 36 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 07h IR div 81h DIRECCIN DATO 01h
80h 15 81h 5
AC 15 01h rda 80h 02h rda 81h 03h lda 81h 04h jmz 08h 05h lda 80h 06h div 81h 07h jmp 09h 08h lda #0 09h wrt 10h end
AC 3 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 37 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 08h IR jmp 08h DIRECCIN DATO 01h
80h 15 81h 5
PC 09h 01h rda 80h 02h rda 81h 03h lda 81h 04h jmz 08h 05h lda 80h 06h div 81h 07h jmp 09h 08h lda #0 09h wrt 10h end
AC 3 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 38 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 10h IR wrt 01h rda 80h 02h rda 81h 03h lda 81h 04h jmz 08h 05h lda 80h 06h div 81h 07h jmp 09h 08h lda #0 09h wrt 10h end
AC 3 3 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 39 Cmo funciona este programa? Unidad central de proceso CPU Unidad de control UC Unidad Aritmtica y lgica ALU PC IR AR AC DR
Unidad de Memoria
Unidad de E/S Dispositivos perifricos PC 10h IR wrt 01h rda 80h 02h rda 81h 03h lda 81h 04h jmz 08h 05h lda 80h 06h div 81h 07h jmp 09h 08h lda #0 09h wrt 10h end
AC 3 3 Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 40 Qu pas ? 01h rda 80h 02h rda 81h 03h lda 81h 04h jmz 08h 05h lda 80h 06h div 81h 07h jmp 09h 08h lda #0 09h wrt 10h end
Qu pas con la instruccin lda #0? Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 41 Ahora usted solito Evaluar la funcin:
(3*x + 5) / x si x > 0 f(x) 5*x 2 si x <= 0 00h rda 80h 01h lda 80h 02h jmz 08h 03h jml 08h 04h mul #3 05h add #5 06h div 80h 07h jmp 0Ah 08h mul #5 09h mul 80h 0Ah wrt 0Bh end Marzo 2008 Profesora. Yasna Meza Hidalgo Diapositiva 42 Cmo funciona este programa? 01h rda 90h 02h lda [80h] 03h add #15 04h wrt 05h end
DIRECCIN DATO 01h rda 90h 02h lda [80h] 03h add #15 04h wrt 05h end