Estructura de Computadores
|
|
- Isabel Soto García
- hace 6 años
- Vistas:
Transcripción
1 Estructura de Computadores El computador simple utores: David Guerrero. Isabel Gómez,lberto Molina Usted es libre de copiar, distribuir y comunicar públicamente la obra y de hacer obras derivadas siempre que se cite la fuente y se respeten las condiciones de la licencia ttribution-share alike de Creative Commons. Texto completo de la licencia:
2 Guión El punto de partida: La calculadora utomatización en la ejecución y almacenamiento de programa (CS) lmacenamiento de los datos y ampliación de modos de eccionamiento (CS) Diversificación de instrucciones. Ejecución no secuencial (CS)
3 CS El computador simple presenta muchas deficiencias: imposibilidad de realizar saltos en la ejecución del programa, ausencia de variables de estado que informen del resultado de las operaciones, falta de comunicación con el exterior. Se propone una arquitectura pensada para solventar estas deficiencias: el CS. Se ha procurado que la arquitectura del CS sea similar a la del microcontrolador que veremos en el tema siguiente, aunque muchísimo más simple.
4 CS Modelo de usuario: ISP Se pretende que el juego de instrucciones ensamblador del CS sea básicamente un subconjunto muy reducido del de la arquitectura VR. Esto no implica que el formato del código máquina en ambos sistemas sea similar: El formato de instrucciones del CS es muchísimo más simple.
5 Modificaciones en la arquitectura y el formato de que nos permiten aña instrucciones de salto
6 S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x MR[] W PC R PC W MR PC[] I PC CL PC I D SP SP SP[] C[] W C R C R SP Preset SP Cómo se hace el salto?: en el PC, ya no cambia siempre de forma secuencial, se debe actualizar a la ección del salto. Dónde está la ección del salto?: guardada en el código de la. El sistema debe de permitir guardar este dato en el PC. Necesitamos conectar el PC al bus para establecer un camino desde IR
7 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Ha sido necesario aña un nuevo formato que nos permitirá codificar todos los tipos de instrucciones de salto que explicaremos a continuación S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP S P [] C[] W C R C R SP Preset SP
8 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Salto incondicional. Salta siempre, no se utiliza el campo condición de salto. Los bits del IR se guardan en el PC y eso produce el salto. La próxima que busque el sistema será en la ección del salto S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP S P [] C[] W C R C R SP Preset SP
9 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Salto condicional. Salta si se cumple una condición codificada en la y que será evaluada por la unidad de control. S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP S P [] C[] W C R C R SP Preset SP 9
10 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Salto condicional. La condición para que se produzca un salto viene dada por el resultado de la operación que se realizó durante la ejecución de la anterior. Fué el dato,positivo, desbordamiento? S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP S P [] C[] W C R C R SP Preset SP
11 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Salto condicional. Necesitamos una LU que genere está información. La información se guardará en los flags del de estado (SR). La complejidad de la LU y el SR son añadidos a la nueva arquitectura S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP SP [] C[] W C R C R SP Preset SP
12 Información de lo que significan los códigos de condición nemónico(s) I I 9 I CONDICIÓN de la condición notas Z ZS, EQ será cierta justo tras realizar la resta - si y solo si = C CS, LO será cierta justo tras realizar la resta - si y solo si < asumiendo notación base sin signo V VS será cierta si y solo si el dato recién calculado no es representable en notación complemento a N xor V LT será cierta justo tras realizar la resta - si y solo si < asumiendo notación complemento a - -? - estas condiciones no están definidas y no deben utilizarse El mnemónico de la de salto condicional será expuesto más adelante. Se trata ahora de entender la relación entre los bits del código de condición y el flag generado por la LU y que se guarda en el de estado.
13 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Salto condicional. No se cumple la condición: no se modifica el PC. S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP SP [] C[] W C R C R SP Preset SP
14 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Salto condicional. Se cumple la condición: el PC es modificado. S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP SP [] C[] W C R C R SP Preset SP
15 formato 9 memoria o inmediato C de salto código de operación S S destino (fuente en ST/STS) condición de salto INM R R R R R R R - Y R - Z fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto w w w w w w w w Salto a subrutina. Se trata de alterar el contenido del PC con la ección donde comienza una serie de instrucciones que hay que ejecutar y luego volver a la siguiente a la de salto. El PC se altera, pero luego hay que volver a actualizarlo. demás pueden existir subrutinas anidadas, es decir, dentro de la subrutina llamar a la subrutina. Primero se volvería a la subrutina y luego al programa principal, en este caso necesitamos almacenar dos valores del IR[:] W REG S IR[:] PC. En general n valores. COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data CODMEM x IR[:] W IR STRT STOP C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP SP [] C[] W C R C R SP Preset SP
16 formato 9 memoria o inmediato C de salto código de operación S S destino (fuente en ST/STS) condición de salto INM fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto R R R R R R R - Y R - Z w w w w w w w w Salto a subrutina. Los sucesivos valores del PC se guardan en la memoria de datos del computador, pero no en cualquier sitio. Se guardan en una zona denominada Pila, la justificación de este nombre será expuesta más adelante. La ección para acceder a la pila está guardada en un denominado puntero de pila y que hemos tenido que aña a la nueva arquitectura CS. IR[:] W REG S IR[:] COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data CODMEM x IR[:] W IR STRT STOP C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP SP [] C[] W C R C R SP Preset SP
17 Estructura de la Pila ntes de meter un nuevo dato el SP tiene guardada la ección de la pila donde el dato se guardará. Es como si se hiciera una pila de libros, el primero que quito es el último que he puesto. El primer dato se guarda en una ección determinada y el siguiente, en la ección inmediatamente inferior. La pila crece hacia ecciones decrecientes de la memoria. Supongamos SP=$ Representación abstracta de la zona de la memoria de datos y los valores del SP del CS SP
18 SP=$ SP Estructura de la Pila NTES SP=$ SP Representación abstracta de la zona de la memoria de datos y los valores del SP del CS DESPUÉS DTO Proceso de guardar datos en la pila. Operación de PUSH
19 SP=$ SP Estructura de la Pila NTES DTO SP=$ SP DESPUÉS DTO DTO Representación abstracta de la zona de la memoria de datos y los valores del SP del CS Proceso de guardar datos en la pila. Operación de PUSH 9
20 SP NTES DTO Estructura de la Pila SP=$ DTO SP SP=$ DESPUÉS DTO Representación abstracta de la zona de la memoria de datos y los valores del SP del CS Proceso de extracción de datos de la pila. Operación de PULL. El primero que se lee es el último que se escribió.
21 SP=$ SP Estructura de la Pila NTES DTO SP=$ SP DESPUÉS Representación abstracta de la zona de la memoria de datos y los valores del SP del CS Proceso de extracción de datos de la pila. Operación de PULL. El primero que Lee es el último que se escribió.
22 Estructura de la Pila SP SP=$ SP SP=$ DTO SP SP=$ DTO DTO SP SP=$ DTO SP SP=$ Resumen del proceso de dos operaciones de escritura en pila (PUSH) y otras dos de lectura de pila (PULL). Los datos se leen en orden inverso a como se escribieron.
23 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Retorno de subrutina. Se recuperan lo valores del PC guardados para saber la ección de salto. La ección de salto por lo tanto no se encuentra en el código de la. No está asociado a ningún tipo de formato S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP S P [] C[] W C R C R SP Preset SP Descripción general: Incrementar SP y guardarlo en MR Esto permite el acceso a la ección de la memoria de datos, cuyo contenido es la ección de salto.
24 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Retorno de subrutina. Se recuperan lo valores del PC guardados para saber la ección de salto. La ección de salto por lo tanto no se encuentra en el código de la. No está asociado a ningún tipo de formato S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP SP [] C[] W C R C R SP Preset SP Descripción general: cceso a la pila recuperación del valor Deseado del PC, vuelta a la siguiente a La de salto a subrutina
25 Instrucciones de llamada y retorno de Una subrutina es una secuencia de instrucciones que realizan una cierta tarea a partir de unos datos de entrada, generando unos datos de salida Cuando un programa necesita realizar la tarea, hace una llamada a la subrutina, ésta se ejecuta y cuando termina, el programa se reanuda por donde se había quedado (retorno de subrutina). Una subrutina puede ser llamada todas las veces que el programa lo necesite Una subrutina puede llamar a su vez a otra subrutina: ejecución anidada de subrutinas subrutina Una subrutina puede llamarse a sí misma: subrutinas recursivas
26 Instrucciones de llamada y retorno de subrutinas CODMEM CODMEM $ $ PC-> $ CLL $ $ CLL $ Situación inicial (a). El computador ejecuta instrucciones y llega a CLL $. $ $ La ejecución de la CLL $ hace que: Se guarde en la pila el PC (que contiene $) Se salte a la ección $ $ PC-> $ $ Subrutina $ Subrutina $ $ $ RET $ RET Observe el comportamiento del puntero de pila o SP (b). $FD DTMEM $FD DTMEM $FE SP-> $FE SP-> $FF $FF $ (a) (b)
27 Instrucciones de llamada y retorno de subrutinas Se ejecutan las instrucciones de la subrutina hasta que se procede a ejecutar la última o RET (c) La ejecución de RET hace que se saque el dato que está en la cima de la pila y que se guarde sobre el PC (d) continuación se sigue ejecutando instrucciones. En este caso a partir de la ección $. Observe que $ sigue en la PIL pero ya no es accesible y en la próxima operación de PUSH será sobreescrito. CODMEM CODMEM $ $ $ CLL $ $ PC-> $ $ $ $ Subrutina $ Subrutina $ $ PC-> $ RET $ RET DTMEM DTMEM $FD $FD SP-> $FE $FE $FF $ SP-> $FF $ (c) (d)
28 Instrucciones de llamada y retorno de subrutinas nidamiento de subrutinas... Call rut Dir:.. $FD... CODMEM... Call rut Dir:..... Rut:.. Call rut Dir: ret... Rut:.. ret $FE SP-> $FF DTMEM Rut:.. Call rut Dir: ret... Rut:.. ret $FD SP-> $FE $FF Dir DTMEM
29 Instrucciones de llamada y retorno de subrutinas nidamiento de subrutinas... Dir:.. Call rut Dir:.. CODMEM Call rut... Rut:.. Call rut Dir: ret... Rut:.. ret $FD SP-> $FE $FF Dir DTMEM Rut:.. Call rut Dir: ret... Rut:.. ret SP-> $FD $FE $FF Dir Dir DTMEM 9
30 Instrucciones de llamada y retorno de nidamiento de subrutinas subrutinas CODMEM Call rut Call rut Dir:..... Dir:..... Rut:.. Call rut Dir: ret... Rut:.. ret SP-> $FD $FE $FF Dir Dir DTMEM Rut:.. Call rut Dir: ret... Rut:.. ret $FD SP-> $FE $FF Dir Dir DTMEM
31 Instrucciones de llamada y retorno de nidamiento de subrutinas subrutinas CODMEM Call rut Call rut Dir:..... Dir:..... Rut:.. Call rut Dir: ret... Rut:.. ret SP-> $FD $FE $FF Dir Dir DTMEM Rut:.. Call rut Dir: ret... Rut:.. ret $FD SP-> $FE $FF Dir Dir DTMEM
32 Instrucciones de llamada y retorno de nidamiento de subrutinas Observe que el orden en el que se deben extraer los contenidos del PC de la PIL debe ser en sentido inverso a como éstos se introdujeron en ella. (LIFO) subrutinas... Dir:.. Rut:.. Dir: Call rut Call rut ret... Rut:.. CODMEM ret $FD $FE... Dir SP-> $FF Dir DTMEM
33 Registros visibles de la nueva arquitectura Todos los s visibles son de bits Los de propósito general se etiquetan R, R, R, R, R, R, R y R. Los de propósito específico son los siguientes: PC o contador de programa: Contiene la ección de la próxima que se ejecutará. Se inicializa a cero y se va incrementando a medida que se ejecutan las instrucciones. SR o de estado: Sus bits útiles se etiquetan Z (cero), V (desbordamiento), N (negativo) y C (cero). Indican, respectivamente, si la última aritmética/lógica generó un resultado con todos los bits a cero, un resultado no representable en complemento a, un resultado que es negativo al interpretarlo en complemento a o si provocó carry/borrow. SP o puntero de pila: Sirve para implementar la estructura de pila en memoria. Codifica la ección de la primera posición libre. El puntero de pila se va decrementando a medida que se apilan datos y se incrementa al desapilarlos. Estos incrementos y decrementos se hacen de forma automatizada al realizar llamadas y retornos de subrutina.
34 Registros ocultos IR: de bits que sirve para almacenar la que está siendo ejecutada. MR: Registro de bits que ecciona la memoria de datos. C: Registro de bits para almacenar temporalmente el resultado de la LU
35 Una posible implementación S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [] W PC R PC W MR PC[] I PC CL PC I D SP SP SP [] C[] W C R C R SP Preset SP
36 Una posible implementación Descripción RT de los nuevos componentes W operación OUT= IN SREG[] OUT W SREG SREG SREG SP IN SREG CL W R I operación OUT= IN/OUT= W R OUT PC[] IN/OUT I CL x x x PC PC HI X x PC IN/OUT PC DTO X PC PC PC PC PC PC+ PC HI PC PC PC HI
37 Formatos: Solo hay tres y comparten campos formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto
38 Tabla de instrucciones signación de códigos de operación: Facilita la decodificación its del código de operación NEMÓNICO FORMTO TIPO SINTXIS EFECTO VCNZ ST memoria STYoZ,Rfuente MEM[YoZ] Rfuente ---- LD memoria LD Rdestino,YoZ Rdestino MEM[YoZ] ---- STS memoria STS ección,rfuente MEM[ección] Rfuente ---- LDS memoria LDS Rdestino,ección Rdestino MEM[ección] ---- CLL C salto CLL ección MEM[SP] PC,SP SP-, PC ección ---- RET - salto RET PC MEM[SP+],SP SP Rxx C salto Rxx ección xx: PC ección ---- JMP C salto JMP ección PC ección ---- DD aritmético/lógica DD Rdestino,Rfuente Rdestino Rdestino+Rfuente **** SU aritmético/lógica SU Rdestino,Rfuente Rdestino Rdestino-Rfuente **** CP estado CP Rdestino,Rfuente Rdestino-Rfuente **** MOV movimiento de datos MOV Rdestino,Rfuente Rdestino Rdestino ---- STOP - especial STOP lleva el procesador a espera ---- SUI aritmético/lógica SUI Rdestino,dato Rdestino Rdestino-dato **** CPI estado CPI Rdestino,dato Rdestino-dato **** LDI movimiento de datos LDI Rdestino,dato Rdestino dato ---- (sin tener en cuenta el de estado y el incremento del PC) El caracter '-' denota no modificado, '*' denota modificado de forma definida
39 Códigos de condición de la de bifurcación condicional: Rxx Los bits I I 9 I codifican la condición de salto xx. nemónico(s) I I 9 I CONDICIÓN de la condición notas Z ZS, EQ será cierta justo tras realizar la resta - si y solo si = C CS, LO será cierta justo tras realizar la resta - si y solo si < asumiendo notación base sin signo V VS será cierta si y solo si el dato recién calculado no es representable en notación complemento a N xor V LT será cierta justo tras realizar la resta - si y solo si < asumiendo notación complemento a - -? - estas condiciones no están definidas y no deben utilizarse RZS, REQ, RCS, RLO, RVS, RLT 9
40 Una posible implementación Descripción RT de los nuevos componentes S R T T operación C N Z V + carry(+) OUT nor(out) overflow(+) C N Z V OUT S R T T - borrow(-) OUT nor(out) overflow(-) Otras prohibidas Preset I D R operación OUT= Preset R SP[] out I D SP SP HI x x x SP $FF HI x x SP SP+ HI x SP SP- HI SP SP SP
41 Descomposición de las instrucciones en microoperaciones para algunos casos
42 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Ejemplo de de acceso a memoria para guardar dato en ella. Direccionamiento inecto de ST YoZ,Ri CICLO MEM(YoZ) Rf C REG(IR - ) W C, T MR C W MR, R C C REG(IR - ) W C, T CICLO DTMEM(MR) C WMEM, RC S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [ ] W PC R PC W MR PC[] I PC CL PC I D SP SP S P [ ] C[] W C R C R SP Preset SP
43 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto Ejemplo de de salto Direccionamiento absoluto CLL ección CICLO MEM(SP) PC, SP SP-, PC ección MR SP C IR[:] DTMEM(MR) PC CICLO SP SP- W MR, R SP W C, T,INM W MEM, R C D SP PC C W PC, R C S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [ ] W PC R PC W MR PC[] I PC CL PC I D SP SP S P [ ] C[] W C R C R SP Preset SP
44 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto CICLO C IR[:] Ri DTMEM(ección) W C, T,INM MR C W MR, R C REG(IR - ) DTMEM(MR) W REG, R MEM Ejemplo de de transferencia de dato desde memoria Direccionamiento absoluto LDS Ri,ección S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [ ] W PC R PC W MR PC[] I PC CL PC I D SP SP S P [ ] C[] W C R C R SP Preset SP
45 formato 9 memoria o inmediato C de salto código de operación destino (fuente en ST/STS) condición de salto fuente ( base en ST/LD) dato inmediato / ección del dato ección de salto CICLO Rd Rd+Rf C REG(IR - )+ REG(IR - ) SREG INFO ESTDO W C, S W SR REG(IR - ) C W REG, R c Ejemplo de de aritmética sobre pila de s Direccionamiento ecto de DD Rd,Rf S S R R R R R R R - Y R - Z w w w w w w w w IR[:] W REG S COMNDOS L UNIDD DE DTOS IR[:] UNIDD DE CONTROL DEL CS IR[] data IR[:] W IR STRT STOP INM IR[:] CODMEM x C,N,Z,V OUT SREG[] W SR S (OUT=+) R (OUT=-) T (OUT=) T (OUT=) W MEM R MEM DTMEM x M R [ ] W PC R PC W MR PC[] I PC CL PC I D SP SP S P [ ] C[] W C R C R SP Preset SP
46 Programación
47 Carta SM S XS PC IR MEMCOD(PC) PC PC + STOP IR[:] Microoperaciones DD Microoperaciones SUI Microoperaciones CPI Microoperaciones LDI Microoperaciones STS Microoperaciones LD Microoperaciones RET Microoperaciones Rxx Microoperaciones SU Microoperaciones CP Microoperaciones MOV Microoperaciones LDS Microoperaciones ST Microoperaciones CLL Microoperaciones JMP
48 Lenguaje ensamblador CS El lenguaje ensamblador consta de: Instrucciones ejecutables: Son las desarrolladas para el CS. Su sintaxis es la del mnemónico que se ha ido presentando. Directivas de ensamblado o pseudoinstrucciones: Son instrucciones que ayudan a escribir el programa y a documentarlo, pero que no causan código ejecutable. Conjunto de normas (léxicas, semánticas y sintácticas) que lo hacen operativo.
49 Directivas del ensamblador CS Las principales normas y ectivas de ensamblado del CS son: No distingue mayúsculas de minúsculas Comentario hasta final de línea ; : ; Esto es un comentario: elimino ST (R),R Numerales: Formas de dar valores numéricos. Son: decimal con/sin signo (-, ); binario de bits precedidos de b (b); hexadecimal de uno o dos dígitos precedidos de x (x, xf). Etiquetas: Cadena alfanumérica que comienza por letra: p.ej. eti. Pueden definirse con EQU o mediante identificador de línea de : guarda: ST ; asociará a guarda el número de correspondiente a ST.EQU <etiqueta>=<numeral>. socia un valor a una etiqueta:.equ n= ;asocia el a la etiqueta n 9
50 Ejemplos de uso Escriba una subrutina para el cálculo de la multiplicación mediante el algoritmo de sumas sucesivas. MULT: LDI R, CPI R, REQ RETORN UCLE: DD R,R SUI R, REQ RETORN JMP UCLE RETORN: RET
51 Ejemplos de uso Escriba una subrutina que devuelva el mayor de dos números escritos en complemento a. MX: RMENOR: CP R,R RLT RMENOR MOV R,R RET MOV R,R RET
52 Entrada/Salida El CS no ha permitido solucionar unas de las deficiencias del CS planteadas al principio de este tema: la incapacidad de comunicación con el exterior. Es decir, no posee capacidad de entrada salida. continuación se expone un procedimiento que permitiría dotarlo de dicha capacidad.
53 Desde el punto de vista del programador la memoria es vista como un conjunto de bytes almacenados en ecciones concretas. Parte de ese rango de ecciones puede reservarse para que el procesador pueda acceder al exterior (entrada/salida) $ Entrada/Salida $ Datos Datos $.. $F Entrada/Salida $FF $FF Datos Sin E/S Con E/S
54 Entrada/Salida Reservaremos un subrango del espacio de eccionamiento (ej: $-$F) para entrada/salida. Para ese subrango no se accede a la memoria de datos sino a los dispositivos de entrada/salida. E/S R MEM W MEM W R R W R MR E/S W R W R MR E/S W SISTEM DE MEMORI DE DTOS D - - D - - E/S R MEM E/S W MEM DT DT_DD DT_DD[-] $ = E/S W MR W MR EN DEC DT_DD - : : : R R : R DT_DD - EN DEC : : : W W : W
55 Entrada/Salida Los cuatro bits más significativos de DT_DD indican si la ección pertenece al rango de entrada/salida. Para dicho rango, los bits restantes de DT_DD se utilizarán para seleccionar la posición de E/S concreta. E/S R MEM W MEM W R R W R MR E/S W R W R MR E/S W SISTEM DE MEMORI DE DTOS D - - D - - E/S R MEM E/S W MEM DT DT_DD DT_DD[-] $ = E/S MR W MR EN DEC DT_DD - : : : R R : R DT_DD - EN DEC : : : W W : W
56 Las posiciones de E/S puede ser de lectura/escritura, de sólo lectura o de solo escritura Un dispositivo de E/S puede agrupar varias posiciones de E/S. Entrada/Salida E/S R MEM DISPOSITIVO ES # W MEM W R W MR E/S W MR E/S SISTEM DE MEMORI DE DTOS D - - D - - DT DT_DD DT_DD[-] $ = E/S W MR E/S W MR E/S W MR E/S W MR W MR DISPOSITIVO ES #N
57 Entrada/Salida Dispositivo de salida (display de segmentos) a f b g US DE DIRECCIONES Decodificador de ecciones G OC LTCH e d C D E F G DP c LDI R,$FF /*Código seg del número */ STS $,R /*Muestra el número en la ección del puerto de E/S*/ US DE DTOS Display -seg
58 Entrada/Salida Dispositivo de entrada (pulsadores) R LDS R, $ /*lmacena el estado de los pulsadores en la ección del puerto de E/S */ US DE DIRECCIONES Decodificador de ecciones v v OC G LTCH v US DE DTOS
Ejercicios del tema 4. El procesador
jercicios del tema 4. l procesador jercicio 1. Considere un procesador de 32 bits con una frecuencia de reloj de 500 MHz con la estructura del mostrado en el jercicio 3. La memoria se direcciona por bytes
Tema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía
Tema 3 SUBRUTINAS ÍNDICE Definición e instrucciones básicas Soporte para el tratamiento de subrutinas (ejecución de la subrutina y gestión del bloque de activación) Interrupciones vs llamadas a procedimiento
Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones
Introducción a la Computación Capítulo 10 Repertorio de instrucciones: Características y Funciones Que es un set de instrucciones? La colección completa de instrucciones que interpreta una CPU Código máquina
8.4. El software en los μprocesadores
8.4. El software en los μprocesadores Ejemplo de comandos de la CPU: Tarea: Sumar dos números A y B. Suponer los datos A y B almacenados en las posiciones 1000 2 y 1010 2 respectivamente. El resultado
Guía de programación ATMega328pa
Guía de programación ATMega328pa Autor: Alberto J. Molina Última modificación: 6/05/13 Usted es libre de copiar, distribuir y comunicar públicamente la obra y de hacer obras derivadas siempre que se cite
Ensamblador. Introducción. Dpto. Física y Arquitectura de Computadores. Universidad Miguel Hernandez
Dpto. Física y Arquitectura de Computadores Universidad Miguel Hernandez Es el lenguaje de más bajo nivel que admite una máquina. El ensamblador hace que el código binario(máquina sea transparente al usuario)
Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo
TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para
Arquitectura de Computadores II Clase #3
Clase #3 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Veremos Registros Repertorio de instrucciones Modos de direccionamiento El stack Formatos de datos Control
El Diseño de un Lenguaje Máquina
Arquitectura de Ordenadores Juego de Instrucciones del Procesador Intel Pentium Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática El Diseño de un Lenguaje
Funcionamiento de la Pila (o stack)
Funcionamiento de la Pila (o stack) Todo μp cuenta con una memoria de almacenamiento temporal denominada Pila Es una estructura de datos de tipo secuencial (LIFO) Existen dos operaciones básicas posibles:
Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
Construyendo Programas más Complejos
Arquitectura de Ordenadores Construcciones de Alto Nivel en Ensamblador Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Construyendo Programas más
Arquitectura (Procesador familia 80 x 86 )
Arquitectura (Procesador familia 80 x 86 ) Diseño de operación Basada en la arquitectura Von Newman Memoria CPU asignadas direcciones I / O BUS: Es un canal de comunicaciones Bus de direcciones: Contiene
Introducción a la arquitectura de computadores
Introducción a la arquitectura de computadores Departamento de Arquitectura de Computadores Arquitectura de computadores Se refiere a los atributos visibles por el programador que trabaja en lenguaje máquina
3 - Arquitectura interna de un up
cei@upm.es 3 - Arquitectura interna un up Componentes básicos Lenguaje ensamblador y código máquina Ciclo básico ejecución una instrucción Algunos ejemplos Universidad Politécnica Madrid Componentes básicos
Estructura y Tecnología de Computadores. Módulo C. Arquitectura del procesador. Tema 4. Modos de direccionamiento y tipos de datos
1 Estructura y Tecnología de Computadores Módulo C. Arquitectura del procesador Tema. Modos de direccionamiento y tipos de datos José Manuel Mendías Cuadros Dpto.. Arquitectura de Computadores y Automática
ENSAMBLADOR DE ARCHIVO TASM MASM NASM GAS. Características de un Ensamblador de Archivo
ENSAMBLADOR DE ARCHIVO TASM MASM NASM GAS Características de un Ensamblador de Archivo Traduce de Leng Ensamblador a Lenguaje máquina Permite definición de etiquetas Reserva memoria para variables octales
Ciclos de máquina. Otro ejemplo: decremento de un registro par (donde rp = HL, DE, BC, SP) DCX rp
Ciclos de máquina Otro ejemplo: decremento de un registro par (donde rp = HL, DE, BC, SP) DCX rp Acceso a periféricos: función del pin IO/M Este μp cuenta con dos instrucciones específicas para I/O, llamadas
Relación de Problemas I
Relación de Problemas I 352) $1'5e6 52/'È1 $5$1'$ 1. Realizar el cálculo del tiempo que transcurre durante la ejecución del bloque de instrucciones sombreado, en función del contenido de los registros
Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C
Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales
INDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU)
INDICE Capitulo 1. Qué es un computador? 1.1. Introducción 1 1.2. El computador como dispositivo electrónico 2 1.3. Cómo se procesa la información? 3 1.4.Diagrama de bloques de un computador 1.4.1. Información
Definición de Memoria
Arquitectura de Ordenadores Representación de Datos en Memoria Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Definición de Memoria DRM-1 La memoria
Conceptos de Arquitectura de Computadoras Curso 2015
PRACTICA 1 Assembly, Instrucciones, Programas, Subrutinas y Simulador MSX88 Objetivos: que el alumno Domine las instrucciones básicas del lenguaje assembly del MSX88. Utilice los diferentes modos de direccionamiento.
LECCIÓN 14: DISEÑO DE COMPUTADORES MEDIANTE MICROPROGRAMACION
ESTRUCTURA DE COMPUTADORES Pag. 14.1 LECCIÓN 14: DISEÑO DE COMPUTADORES MEDIANTE MICROPROGRAMACION 1. Introducción Vamos a aplicar las ideas de microprogramación al caso de un minicomputador similar al
Tema 5: La pila, las macros y los procedimientos
Tema 5: La pila, las macros y los procedimientos S La pila S Las macros S Definición de procedimientos S Tipos de procedimientos: NEAR y FAR S Paso de parámetros a un procedimiento S Mediante registros
1 La figura 1 muestra la estructura de la CPU de un computador con palabras y direcciones de 32 bits, cuya
ESTUCTU DE COMPUTDOES Tema de Procesador (Enunciados de problemas) POBLEMS 1 La figura 1 muestra la estructura de la CPU de un computador con palabras y direcciones de 32 bits, cuya unidad de c ontrol
Arquitectura intel 8086. Preámbulo de OSO para alumnos formados en el procesador MIPS. Asignatura Sistemas Operativos Murcia abril de 2005
Arquitectura intel 8086 Preámbulo de OSO para alumnos formados en el procesador MIPS Asignatura Sistemas Operativos Murcia abril de 2005 página 1. Introducción 2 2.- Direccionamiento y Registros de Segmento
Tema 2: Lenguaje máquina. La interfaz entre el hardware y el software
Tema 2: Lenguaje máquina La interfaz entre el hardware y el software 1 Índice Introducción. Formatos de Instrucción. Modos de Direccionamiento. Ortogonalidad y Regularidad. Frecuencia de Utilización de
Clasificación del procesador según el número de referencias a memoria.
Estructura de Computadores Tema 1. El sistema computador Estructura general de un computador. Arquitectura de Von Neumann. Unidades generales: procesador, memoria, entrada/salida, unidad de control. Niveles
Programación en java. Estructuras algorítmicas
Programación en java Estructuras algorítmicas Estructuras algoritmicas 1. Conceptos basicos 1. Dato 2. Tipos de datos 3. Operadores 2. dsd Conceptos Basicos DATO: se considera una representación simbólica
Instrucciones de Control de Flujo y Usos de la Pila
1 Instrucciones de Control de Flujo y Usos de la Pila Objetivos Generales Facultad: Estudios Tecnologicos. Escuela: Electrónica Asignatura: Microprocesadores Analizar la forma en que se ejecutan algunas
SISTEMAS OPERATIVOS Arquitectura de computadores
SISTEMAS OPERATIVOS Arquitectura de computadores Erwin Meza Vega emezav@unicauca.edu.co Esta presentación tiene por objetivo mostrar los conceptos generales de la arquitectura de los computadores, necesarios
Programación de Sistemas. Unidad 1. Programación de Sistemas y Arquitectura de una Computadora
Programación de Sistemas Unidad 1. Programación de Sistemas y Arquitectura de una Computadora Programación de Sistemas Arquitectura de una Computadora Componentes de un Sistema de Cómputo Un sistema está
Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Comparaciones en lenguaje ensamblador
Comparaciones en lenguaje ensamblador Objetivo: Entender cómo se realizan las comparaciones de datos en lenguaje ensamblador En lenguaje ensamblador no existe la instrucción IF como se trabaja en otros
FUNDAMENTOS DE INFORMÁTICA
FUNDAMENTOS DE INFORMÁTICA Tema 1 Introducción a la Programación en Visual Basic Departamento de Ingeniería de Sistemas y Automática Universidad de Vigo undamentos de Informática. Departamento de Ingeniería
Exterior del algoritmo. Entorno. Usuario. Procesador. Escribir. v1 v2 v3. Leer. <acción> {; <acción>}
Bloque II. 2. Objetos y acciones elementales Bloque II. 2. Objetos y acciones elementales Objetivos: Familiarizarse con conceptos de entorno, objeto y tipo Entender qué significa que un objeto sea de un
TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS
TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS Una vez que ya sabes crear tus propios programas, vamos a analizar los fundamentos del lenguaje de programación C. Este capítulo incluye además los siguientes temas:
Tema 4. Lenguaje máquina y lenguaje ensamblador
Tema 4. Lenguaje máquina y lenguaje ensamblador Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Transparencia: 2 / 47 Índice Introducción Juego de instrucciones Estructura
Objetivos. Objetivos. Arquitectura de Computadores. R.Mitnik
Objetivos Objetivos Arquitecturas von Neumann Otras Unidad Central de Procesamiento (CPU) Responsabilidades Requisitos Partes de una CPU ALU Control & Decode Registros Electrónica y buses 2 Índice Capítulo
Laboratorio de Arquitectura de Redes. Entrada y salida estándar
Laboratorio de Arquitectura de Redes Entrada y salida estándar Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato: scanf() El buffer de teclado Entrada
Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo
Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten
PROGRAMA de Organización de Computadoras
PROGRAMA de Organización de Computadoras Carrera/s: Tecnicatura Universitaria en Programación Informática / Licenciatura en Informática Asignatura: Organización de Computadoras Núcleo al que pertenece:
MEMORIA EJERCICIO 1 EJERCICIO 2
MEMORIA EJERCICIO 1 Determinar el mapa de memoria de un procesador con 16 señales de bus de direcciones, una señal de asentimiento de bus de direcciones AS, una señal de lectura R, otra de escritura W
INDICE Control de dispositivos específicos Diseño asistido por computadora Simulación Cálculos científicos
INDICE Parte I. La computadora digital: organización, operaciones, periféricos, lenguajes y sistemas operativos 1 Capitulo 1. La computadora digital 1.1. Introducción 3 1.2. Aplicaciones de las computadoras
Estructura de Computadores Tema 1. Introducción a los computadores
Estructura de Computadores Tema 1. Introducción a los computadores Departamento de Informática Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas UNIVERSIDAD CARLOS III DE MADRID Contenido
Estructura del Computador
Estructura del Computador 1 definiciones preliminares Estructura: es la forma en que los componentes están interrelacionados Función: la operación de cada componente individual como parte de la estructura.
INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA
APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto
Programación de Sistemas Depuradores (Debugger) MIS. Lizbeth Hdz. Glz.
Programación de Sistemas Depuradores (Debugger) MIS. Lizbeth Hdz. Glz. TIPOS DE ERRORES Sintácticos. Los errores de sintaxis, o sintácticos, ocurren cuando el programador escribe código que no va de acuerdo
FUNCIONAMIENTO DEL ORDENADOR
FUNCIONAMIENTO DEL ORDENADOR COMPUTACIÓN E INFORMÁTICA Datos de entrada Dispositivos de Entrada ORDENADOR PROGRAMA Datos de salida Dispositivos de Salida LOS ORDENADORES FUNCIONAN CON PROGRAMAS Los ordenadores
Convenciones. Introducción. Unidades principales en la implementación. El procesador: camino de datos y control. Tipos de elementos:
Unidades principales en la implementación Data El procesador: camino de datos y control IEC UTM Moisés E. Ramírez G. 1 Register # PC Address Instruction Instruction Registers Register # ALU memory Register
El nivel ISA (II)! Conjunto de Instrucciones
El nivel ISA (II) Conjunto de Instrucciones EC-2721 Arquitectura del Computador I Que es un Conjunto de Instrucciones? Colección completa de instrucciones comprendida por un procesador Lenguaje de máquina
Informática Ingeniería en Electrónica y Automática Industrial
Informática Ingeniería en Electrónica y Automática Industrial Entrada y salida estándar V1.3 Autores Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato:
Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa.
Constantes y variables Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa. pi = 3.1416 Variable: Es un espacio en la memoria de la computadora que
SISTEMAS INFORMÁTICOS PROGRAMACION I - Contenidos Analíticos Ing. Alejandro Guzmán M. TEMA 2. Diseño de Algoritmos
TEMA 2 Diseño de Algoritmos 7 2. DISEÑO DE ALGORITMOS 2.1. Concepto de Algoritmo En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus
Práctica 4 - Arquitectura CPU
Práctica 4 - Arquitectura CPU Organización del Computador 1 1er. Cuatrimestre 2006 Programación en Assembler Ejercicio 1 Dados los siguientes valores de la memoria y del registro R0 de la arquitectura
INDICE Capitulo 1. Álgebra de variables lógicas Capitulo 2. Funciones lógicas
INDICE Prefacio XV Capitulo 1. Álgebra de variables lógicas 1 1.1. Variables y funciones 1 1.2. Variables lógicas 2 1.3. Valores de una variable lógica 2 1.4. Funciones de una variable lógica 3 1.5. Funciones
Unidad I: Organización del Computador. Ing. Marglorie Colina
Unidad I: Organización del Computador Ing. Marglorie Colina Arquitectura del Computador Atributos de un sistema que son visibles a un programador (Conjunto de Instrucciones, Cantidad de bits para representar
Tema: Microprocesadores
Universidad Nacional de Ingeniería Arquitectura de Maquinas I Unidad I: Introducción a los Microprocesadores y Microcontroladores. Tema: Microprocesadores Arq. de Computadora I Ing. Carlos Ortega H. 1
Elementos de un programa en C
Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución
INDICE 1. Operación del Computador 2. Sistemas Numéricos 3. Álgebra de Boole y Circuitos Lógicos
INDICE Prólogo XI 1. Operación del Computador 1 1.1. Calculadoras y Computadores 2 1.2. Computadores digitales electrónicos 5 1.3. Aplicación de los computadores a la solución de problemas 7 1.4. Aplicaciones
Plataformas de soporte computacional: arquitecturas avanzadas,
Plataformas de soporte computacional: arquitecturas avanzadas, sesión Diego R. Llanos, Belén Palop Departamento de Informática Universidad de Valladolid {diego,b.palop}@infor.uva.es Índice. Arquitectura
LENGUAJE. Tema 2 Elementos de un programa
LENGUAJE Tema 2 Elementos de un programa ELEMENTOS DE UN PROGRAMA Comentarios. Identificadores. Constantes. Variables. Operadores. Sentencias o instrucciones. COMENTARIOS Los comentarios en C pueden ocupar
Estructuras en LabVIEW.
Estructuras en LabVIEW. Sumario: 1. Ejecución según el flujo de datos. 2. Estructuras básicas disponibles en LabVIEW. a) Estructura Sequence. b) Estructura Case. c) Estructura For Loop. d) Estructura While
Organización de Computadoras. Clase 2
Organización de Computadoras Clase 2 Temas de Clase Representación de datos Números con signo Operaciones aritméticas Banderas de condición Representación de datos alfanuméricos Notas de Clase 2 2 Representación
Paso de parámetros y gestión del marco de pila
Paso de parámetros y gestión del marco de pila Estructura de Computadores 1. Introducción En clases previas se ha presentado el modelo de programación del 88110 y se ha explicado cómo se ubican las distintas
TEMA III: OPERACIONES CON LOS DATOS
CUESTIONES A TRATAR: Cual es la función de la unidad operativa? Es necesaria? Qué tipos de circuitos implementan la unidad operativa? Unidad operativa frente a ALU Qué es una operación de múltiple precisión?
CICLOS DEL PROCESADOR
UNIDAD DE CONTROL CICLOS DEL PROCESADOR Qué es un ciclo de búsqueda? Para qué sirve estudiar los ciclos de instrucción de una CPU? Para comprender el funcionamiento de la ejecución de instrucciones del
Tema 2 Conceptos básicos de programación. Fundamentos de Informática
Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis
Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1
Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos
Contenido. Conjunto de Instrucciones. Formato de la Instrucción. Instrucciones de 1 byte. Formato de la Instrucción 28/09/2011
1 ontenido 2 UNIDAD 5 EL LENGUAJE DE ENSAMBLADOR DEL Z80 onjunto de instrucciones Tipos de instrucciones Modos de direccionamiento El ensamblador del Z80 El simulador AVOET Implementación de un sistema
Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Fundamentos de Programación Visual Basic
Pág. N. 1 Fundamentos de Programación Visual Basic Familia: Editorial: Tecnología de información y computación Macro Autor: Ricardo Walter Marcelo Villalobos ISBN: 978-612-304-236-3 N. de páginas: 280
Práctica 4. Organización del Computador 1 12 de septiembre de Algunas consideraciones preliminares:
Práctica 4 Organización del Computador 1 12 de septiembre de 2005 Algunas consideraciones preliminares: Donde aparece xxxxxxxx quiere decir que el valor correcto ya está en esa dirección de memoria Todos
La resolución de un problema
CAP. 2. ALGORITMOS Y PROGRAMAS 2.1. Solución de problemas por computadora La resolución de problemas por computadora, es importante para que las personas o usuarios aprendan a programar de manera general,
Estructura de Microprocesadores. Profesor Ing. Johan Carvajal Godínez
Estructura de Microprocesadores PIC 18F4550 Administración de la memoria Profesor Ing. Johan Carvajal Godínez Contenidos Organización de la memoria del MCU Administración de la memoria de programa (Flash)
Lección 2 Introducción al lenguaje C
Lección Introducción al lenguaje C Decimal Binario Hexadecimal A B C D E F Octal Equivalencia entre decimal, binario, hexadecimal y octal. Código ASCII (American Standard Code for Information Interchange)
Arquitectura de Computadores. Apellidos, Nombre:
No se considerarán como válidas las respuestas en las que no se justifiquen los cálculos realizados No se permite el uso de ningún tipo de documentación, ni de calculadora Sólo existe una única opción
Anexo A: Programación a bajo nivel de un computador
Anexo A: Programación a bajo nivel de un computador v 3.0. Objetivo de la Práctica Ayudar a comprender el funcionamiento y la estructura de un computador Von Neuman mediante el estudio y la programación
Ficha de Aprendizaje N 13
Ficha de Aprendizaje N 13 Curso: Lógica y lenguaje de programación Tema: Fundamentos de programación Duración: 2 horas pedagógicas Logros de aprendizaje Identifica los diferentes tipos de operadores que
Unidad II: Análisis semántico
Unidad II: Análisis semántico Se compone de un conjunto de rutinas independientes, llamadas por los analizadores morfológico y sintáctico. El análisis semántico utiliza como entrada el árbol sintáctico
ESTRUCTURA BÁSICA DE UN ORDENADOR
ESTRUCTURA BÁSICA DE UN ORDENADOR QUÉ ES UN ORDENADOR? Un ordenador es una máquina... QUÉ ES UN ORDENADOR? Un ordenador es una máquina... QUÉ ES UN ORDENADOR? Un ordenador es una máquina... Qué son los
DIAGRAMAS DE FLUJO ELEMENTOS E INSTRUCCIONES A USAR EN UN DIAGRAMA DE FLUJO
DIAGRAMAS DE LUJO Un Diagrama de lujo es la representación gráfica de los pasos a seguir para lograr un objetivo, que habitualmente es la solución de un problema. Por Logical se entiende, en algunos libros,
https://dac.escet.urjc.es/docencia/etc-sistemas/teoria-cuat1/tema2.pdf
1.3 Sistemas numéricos 1.3.1. Introducción Un sistema de representación numérica es un lenguaje que consiste en: Un conjunto ordenado de símbolos (dígitos o cifras) y otro de reglas bien definidas para
TEMA 1: Concepto de ordenador
TEMA 1: Concepto de ordenador 1.1 Introducción Los ordenadores necesitan para su funcionamiento programas. Sin un programa un ordenador es completamente inútil. Para escribir estos programas necesitamos
La arquitectura CISCA
La arquitectura CISCA Miquel Albert Orenga Gerard Enrique Manonellas PID_00181526 CC-BY-SA PID_00181526 La arquitectura CISCA Los textos e imágenes publicados en esta obra están sujetos excepto que se
Fundamentos de programación JAVA
Pág. N. 1 Fundamentos de programación JAVA Familia: Editorial: Autor: Computación e informática Macro Ricardo Walter Marcelo Villalobos ISBN: 978-612-304-238-7 N. de páginas: 296 Edición: 2. a 2014 Medida:
Entorno de Ejecución del Procesador Intel Pentium
Arquitectura de Ordenadores Arquitectura del Procesador Intel Pentium Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Entorno de Ejecución del Procesador
Técnicas de Programación
Técnicas de Programación 2.1.- Introducción: unos conceptos previos y primeros conceptos de la API Introducción La resolución de un problema con medios informáticos implica generalmente la siguiente secuencia
Tema 3.- Predicados y sentencias condicionales
UNIVERSIDAD DE CÓRDOBA ESCUELA POLITÉCNICA SUPERIOR DE CÓRDOBA DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO PROGRAMACIÓN DECLARATIVA INGENIERÍA INFORMÁTICA ESPECIALIDAD DE COMPUTACIÓN CUARTO CURSO PRIMER
28/09/2012. Interfaz con Dispositivos de Salida. Interfaz con Dispositivos de Entrada. Port Mapped. Memory mapped. Interfaz con Dispositivos I/O
Interfaz con Dispositivos I/O Interfaz con Dispositivos de Salida y Salida Unidad 4, Segunda Parte Port Mapped Memory mapped 1 2 Ejecución de la Instrucción OUT Ejecución de la instrucción OUT Dirección
Fundamentos de Programación 2017-I
Fundamentos de Programación 2017-I Fundamentos para la construcción de código a partir del algoritmo Objetivo: El alumno construirá programas utilizando el lenguaje de programación C a través de un análisis
Diseño del procesador MIPS R2000
Diseño del procesador MIPS R2000 Aula Virtual IS09 Sergio Barrachina Mir Área de Arquitectura y Tecnología de Computadores Dpt. de Ingeniería y Ciencia de los Computadores Universidad Jaume I Índice 1.
DISEÑO DE UN COMPUTADOR SIMPLE
Contenido: DISEÑO DE UN COMPUTADOR SIMPLE DISEÑO DE UN COMPUTADOR SIMPLE El modo de operación de los computadores: programa almacenado y ejecución automática; memorias de datos y de programas; ciclos de
1.2.- EL MICROPROCESADOR.
1.2.- EL MICROPROCESADOR. El microprocesador es un circuito integrado que contiene algunos o todos los elementos necesarios para conformar una (o más) unidad central de procesamiento UCP, también conocido
Constantes. Las constantes no cambian durante la ejecucion de un programa en C++, en C++ existen 4 tipos de constantes:
Constantes Las constantes se pueden declarar con la palabra reservada const y se le asigna un valor en el momento de la declaracion, este valor no se puede modificar durante el programa y cualquier intento
Unidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas
Unidad I Introducción a la programación de Sistemas M.C. Juan Carlos Olivares Rojas Agenda 1.1 Qué es y que estudia la programación de sistemas? 1.2 Herramientas desarrolladas con la teoría de programación
Tema 5.1: Presentación de datos en pantalla
Tema 5.1: Presentación de datos en pantalla El registro de flags del i8086 Instrucciones de transferencia Instrucciones de transferencia de control Instrucciones aritméticas: comparación Representación
El lenguaje C. 1. Identificadores, constantes y variables
Principios de Programación El lenguaje C 1. Identificadores, constantes y variables 1.1. Conceptos de memoria Los nombres de variable como x, y, suma corresponden a localizaciones o posiciones en la memoria
Programación MODULAR: Subalgoritmos - funciones y procedimientos
Programación MODULAR: Subalgoritmos - funciones y procedimientos Uno de los métodos fundamentales para resolver un problema es dividirlo en problemas más pequeños, llamados subproblemas. Estos problemas