Soluciones de los ejercicios sobre Algorítmez
|
|
- Marina Zúñiga Ortega
- hace 5 años
- Vistas:
Transcripción
1 Soluciones de los ejercicios sobre Algorítmez Siguiente: Soluciones de los ejercicios sobre Algorítmez (Periferia) Padre: Materiales didácticos Inicial: Fundamentos de ordenadores 1 a. entero: N = -( ) real: Normalmente (siempre que 0<C<255), N = ±1,M 2 C-127, pero aquí el campo C (de ocho bits) es C = 0, y M 0, y en este caso especial es N = ±0,M Por tanto: M = ,M = 0, = N = -( ) = -( ) b. [d] [d+1] [d+2] [d+3] c. Instrucciones de Algorítmez: [d] tipo 1; CO = H 0: SHR [d+1] (CR) = 9 [d+2] tipo 1; CO = H 8: IN [d+3] (CRX) = 8; (CR) = 0 Los dos primeros bytes son la instrucción SHR.9, y los dos siguientes, IN.0,[.8] 1
2 2 Definiendo estas máscaras: MSKEI EQU H 0100 MSKDI EQU H FEFF MSKCLRC EQU H F7 MSKCLRV EQU H FB EI y DI pueden realizarse así (utilizando R0 y una palabra, TMP, para almacenamiento temporal): EI ST.E, /TMP DI ST.E, /TMP LD.0, /TMP LD.0, /TMP OR.0, #MSKEI AND.0, #MSKDI ST.0, /TMP ST.0, /TMP LD.E, /TMP LD.E, /TMP Para CLRC y CLRV es similar, pero operamos sólo sobre el byte menos significativo (LD.E es una instrucción privilegiada): CLRC ST.B.E, /TMP CLRV ST.B.E, /TMP LD.B.0, /TMP LD.B.0, /TMP AND.0, #MSKCLRC AND.0, #MSKCLRV ST.B.0, /TMP ST.B.0, /TMP LD.B.E, /TMP LD.B.E, /TMP Para POP y PUSH, tenemos en cuenta que Algorítmez tiene el modo autoincremento (pero no autodecremento), y que PP = R14 puede actuar como otro cualquiera de los RPG: POP.5 : LD.5, [.14++] PUSH.5 : SUB.14, #2 ST.5, /0[.14] 3 a. b. Traducción: Resultado de la ejecución: LD.B.10,[.15++] 8B 12 -> R10 (8 bits menos signif.); FA (CP) + 1 -> CP DATA.B 12 0C Traducción: Resultado de la ejecución: LD.10,[.15++] 8A 12 -> R10 (16 bits); FA (CP) + 2 -> CP 2
3 DATA 12 0C 00 c. Traducción: Resultado de la ejecución: LD.10,[[.15++]] AA (MP[12]) -> R10 (16 bits); FA (CP) + 2 -> CP DATA 12 0C 00 Las instrucciones LD.B.10,#12, LD.10,#12 y LD.10,/12 se traducen exactamente igual que cada una de las tres parejas, y dan el mismo resultado. 4 Instrucción dir. bin. hex. comentarios LD.B.0,[.7++] [d] B autoincremento [d+1] RX=R7; R=R0; DE = (R7) LD.B.0,#2 [d] B autoincremento con RX=R15=CP [d+1] F0 RX=R15; R=R0; dir. op. = (CP) = d+2 [d+2] en un byte LD.B.0,/-10[.7] [d] B indexado [d+1] RX=R7; R=R0; DE = (R7)-10 [d+2] F6-10 en un byte LD.B.0,[[.7++]] [d] AB autoincremento indirecto [d+1] RX=R7; R=R0; DE = ((R7)) LD.B.0,/1000 [d] AB directo = autoincr. indirecto con RX=CP [d+1] F0 RX=R15; R=R0 [d+2] E8 H E8; extremista menor [d+3] H 03; D 1000 = H 3E8) Con relación a la tercera instrucción, cabe señalar que sería equivalente a LD.B.0,/65526[.7], ya que (R7)-10 = (R7) (módulo 2 16 = ). Sin embargo, ésta última no se podría codificar (sólo hay un byte para CD). 3
4 5 Soluciones de los ejercicios sobre Algorítmez ORG 1000 BR PRINC ; esta instruccion ocupa tres bytes DOS EQU 2 DATO DATA 2 PRINC LD.5, #DATO ; carga en R5... D 1003 (dirección de "DATO") [1009] LD.4, /DATO ; carga en R4... (1003) = [1013] LD.3, DATO ; carga en R3... (1003) = [1016] LD.2, #DOS ; carga en R [1020] LD.1, /DOS ; carga en R1... (2) (idéntica a LD.1, /2) [1024] Observaciones: Si un símbolo corresponde a la etiqueta de una EQU, el ensamblador le asigna el valor definido en esa EQU. En cualquier otro caso, le asigna el valor que corresponda a la dirección de esa etiqueta. En este caso, DOS tiene el valor «2», DATO «1003», y PRINC «1005». En la instrucción [1013], en ensamblador habrá puesto D -13 = H -D en el campo CD, de modo que cuando se ejecute, DE = (-13) = a. dir. contenido BR #-125 d C7 d+1 F0 d+2 83 d+3 FF ; D -125 = H FF83, en 16 bits con complemento a 2 b. Tras leer el segundo byte, (R15) = (CP) = d+2, y esto se introduce en CP. Por tanto interpreta el contenido de d+2 como el primer byte de una instrucción: Primer byte: H 83 = B : tipo 2, modo autoincremento, CO = ADDC.B Segundo byte: H FF: RX = 15; R = R15; esto hace que el modo sea inmediato, por lo que leería el operando, de un byte (por ser ADDC.B), que sería el contenido de d+4 y lo sumaría a los ocho bits menos significativos de R15 = CP, bifurcando así a una dirección que depende del contenido de d+4 y del valor del indicador C. 4
5 c. Si RX se incrementa antes de hacerse efectiva la bifurcación, es decir, antes de introducir su valor en CP, resulta que lo que se introduce en CP es d+4. Por tanto bifurca a la instrucción que está a partir de d+4, y el efecto es que BR #-125 es equivalente a NOP. (No obstante, obsérvese que este modo de calcular la dirección efectiva con direccionamiento inmediato no es correcto: basta analizar lo que ocurriría con LD.0, #-125). 7 a. Tablas y diccionarios: Tablas de símbolos Tablas de símbolos externos Tablas de símbolos de acceso Diccionarios de reubicación PRUEBA BINHEX REGHEX Símbolo Valor Símbolo Valor Símbolo Valor DP 0 MASC 15 RH_ENT 0 ENT 4 BH_ENT 0 BUCLE 5 SUM48 19 MEM 31 RH_ENT 14 BH_ENT 7 BH_ENT 0 RH_ENT 0 10, 14 7 b. Diccionario de reubicación resultante después del montaje: 10, 14, 24 c. Dirección (dec.) Contenido (hex.) Comentarios 1012 E6 Tipo 3, CO = 6, MD = autoincremento indirecto 1013 F0 RX = R15, para obtener el modo directo 1014 F9 (CD) = H 03F Explicación de CD: Al ensamblar PRUEBA, el ensamblador pone 0 en las direcciones 14 y 15, y RH_ENT = 14 en la tabla de símbolos externos. El montador pone 17 (comienzo de REGHEX) + 0 5
6 (valor de RH_ENT en la tabla de símbolos de acceso de REGHEX). El cargador reubicador le suma la constante de reubicación, 1.000, resultando así (CD) = D = H 03F9. 8 a. Rutina XOR: MODULE MXOR EXPORT XOR XOR LD.0, /0[.1] NOT.0 AND.0, /0[.2] ST.0, AUX ; (AUX) = NOT((R1)) AND ((R2)) LD.0, /0[.2] NOT.0 AND.0, /0[.1] OR.0, AUX ; (R0) = resultado final AUX RES 1 END b. Rutina CIFRA: MODULE CIFRAR FROM MXOR IMPORT XOR EXPORT CIFRA CIFRA PUSH.4 ; atención!: analizar bien el estado de la pila LD.4, /6[.14] ; (R4) = numero de palabras a codificar BZ FIN ; podria ser inicialmente 0 ; salvaguarda el contenido de los registros PUSH.1 ; que va a utilizar (R0 a R3) PUSH.2 PUSH.3 LD.1, /12[.14] ; (R1) = puntero a la palabra que guarda la clave LD.2, /18[.14] ; (R2) = puntero a la zona de datos originales LD.3, /16[.14] ; (R3) = puntero a la zona de datos codificados REPITE CALL XOR ST.0, [.3++] ADD.2, #2 ; avance del puntero R2 SUB.4, #1 ; comprueba si es fin de datos BNZ REPITE POP.3 ; recuperacion del contenido de los registros POP.2 ; utilizados (R0 a R3) POP.1 POP.0 FIN POP.4 ; recupera el registro R4 END 6
7 9 a. Para qué sirve la instrucción «ADD.14,#4»? Qué ocurre si se omite? Para recuperar el espacio ocupado en la pila por los parámetros que el programa le pasa al subprograma. Si se omite no pasa nada (sólo se pierden cuatro bytes de la pila) salvo si el programa ha sido llamado, a su vez, por otro programa. En tal caso fallaría el retorno a este último programa. b. Traducción a ensamblador de la función: /* Código C */ ; Código ensamblador /* */ ; int media(int a, int b) { MEDIA LD.0,/4[.14] return ((a+b)/2); ADD.0,/2[.14] SHR.0 } c. De X a CCC hay 22 bytes, por lo que la dirección de CCC es 32023, y la de SSS, 32027: Variables: tras CCC CALL /MEDIA tras SSS ADD.14,#4 X M?? Direcciones de MP: D D D Registro PP: a. Por qué la instrucción «LD.0, #M» tiene direccionamiento inmediato? Qué ocurriría si tuviese direccionamiento directo («LD.0, /M»)? Porque en el programa original en C no se pasa el valor de la variable m, sino su dirección. El 7
8 subprograma tiene que entregar el resultado en la palabra de dirección M, mediante direccionamiento indirecto. Si fuese «LD.0, /M», el resultado quedaría almacenado en la palabra cuya dirección es el contenido de M (probablemente, la palabra de dirección 0). b. Ahora salvaguardamos R0 para devolvérselo al programa como estaba: /* Código C */ ; Código ensamblador /* */ ; void media(int a, int b, int *pnt_m) { *pnt_m = ((a + b)/2); LD.0, /8[.14] ADD.0, /6[.14] SHR.0 ST.0, [/4[.14]] POP.0 } c. De X a CCC hay 28 bytes: Variables: tras CCC CALL /MEDIA tras SSS ADD.14,#6 X M? 10 Direcciones de MP: D (dir. ret.) D (dir. de M) D (X) 12 D (9) 9 Registro PP: /* Código C */ ; Código ensamblador /* */ ; main(int argc, char *argv[]) { int x2, x3; X2 RES 1 X3 RES 1 cuadcub(7, &x2, &x3); LD.0, #7 LD.0, #X2 LD.0, #X3 CALL /CUADCUB ADD.14, #6 8
9 } void cuadcub(int x, int *p2, int *p3) { CUADCUB PUSH.1 PUSH.2 LD.0, /12[.14] LD.1, /12[.14] CALL /MUL *p2 = x*x; ST.2, [/10[.14]] LD.0, [/10[.14]] CALL /MUL *p3 = (*p2)*x; ST.2, [/8[.14]] POP.2 POP.1 POP.0 } 12 a. Traducción: /* Código C */ ; Código ensamblador /* */ ; typedef struct snodo { ; Esto es una declaración, int valor; ; no genera ningún codigo struct snodo *sgte; } tnodo; ; Se crean y se inicializan ; los punteros: tnodo *cabz = NULL; CABZ DATA 0 tnodo *cola = NULL; COLA DATA 0 main(int argc, char *argv[]) { int i; I RES 1 MAIN LD.0, #0 for(i = 0; i < 100; i++) ST.0, I BUCLE CMP.0, #100 BNN SAL cola = encola(cola, i); LD.0, COLA LD.0, I CALL /ENCOLA ADD.14, #4 ST.0, COLA LD.0, I ADD.0, #1 9
10 } tnodo *encola(tnodo *pnodo,int dato) { tnodo *pnuevo; Soluciones de los ejercicios sobre Algorítmez SAL ST BR HALT.0, I BUCLE ; utiliza R0 para la variable ; local pnuevo ENCOLA PUSH.1 pnuevo = (tnodo*)malloc(4); LD.0, #4 CALL /MALLOC ADD.14, #2 if (pnodo==null) cabz = pnuevo; LD.1, /6[.14] BZ PRIMERO else pnodo->sgte = pnuevo; ADD.1, #2 ST.0, /0[.1] pnuevo->valor = dato; SIG LD.1, /4[.14] ST.1, /0[.0] pnuevo->sgte = NULL; LD.1, #0 ST.1, /2[.0] return pnuevo; POP.1 PRIMERO ST.0, CABZ BR SIG } b. Codificación de MALLOC: MALLOC ST.0, TEMP ADD.13, TEMP ST.13, TEMP CMP.14, TEMP BN ERROR SUB.0, TEMP NEG.0 ERROR CALL DESB_MEM TEMP RES 1 c. Si el programa es el codificado anteriormente (contando MAIN y ENCOLA, pero no MALLOC), ocupa 107 bytes, por lo que si se carga a partir de la dirección el último byte estará en la dirección Dir. (dec.) Contenido (hex.) 1106 (último byte del código) (primer dato) (D 1111 = H 457)
11 Dir. (dec.) Contenido (hex.) B F (segundo dato) (D 1115 = H 45B) (tercer dato) (D 1119 = H 45F) Siguiente: Soluciones de los ejercicios sobre Algorítmez (Periferia) Padre: Materiales didácticos Inicial: Fundamentos de ordenadores 11
Ejercicios sobre Algorítmez (UCP)
Siguiente: Ejercicios sobre Algorítmez (Periferia) Padre: Materiales didácticos Inicial: Fundamentos de ordenadores 1 Dada la sucesión de bits: 1000 0000 0100 1000 0100 1001 0100 0000 a. Calcule el valor
Más detallesExamen de Fundamentos de Ordenadores 15 de septiembre de 2009
Examen de Fundamentos de Ordenadores 15 de septiembre de 2009 Duración: una hora y treinta minutos. No está permitido consultar libros ni apuntes ni usar calculadora u otros dispositivos electrónicos.
Más detallesPrimera pregunta (1 punto) Segunda pregunta (1 punto) Tercera pregunta (2 puntos) PRIMERA PARTE (SIN LIBROS) Duración: 45 minutos
Duración: 45 minutos PRIMERA PARTE (SIN LIBROS) Responda en la hoja de respuestas que se adjunta Primera pregunta (1 punto) Cuáles son las dos razones principales por las que Algorítmez, pese a tener sólo
Más detallesSoluciones de los ejercicios sobre microarquitectura
Soluciones de los ejercicios sobre microarquitectura Padre: Materiales didácticos Inicial: Fundamentos de ordenadores 1 a. Campo de control Número de bits Microórdenes Código de cada microorden UAL 2 pac
Más detallesExamen de Fundamentos de Ordenadores. 9 de junio de 2005 PRIMERA PARTE (SIN LIBROS)
Duración: cuarenta y cinco minutos Puntuación: un punto cada pregunta Examen de Fundamentos de Ordenadores 9 de junio de 2005 PRIMERA PARTE (SIN LIBROS) Responda en la hoja de respuestas que se adjunta
Más detallesSebastián García Galán
Universidad de Jaén E.U.P. Linares Dpto. Telecomunicaciones Área de Ingeniería Telemática Sebastián García Galán Sgalan@ujaen.es TEMA 3: 3.1 SÍMPLEZ. MODELO ESTRUCTURAL MODELO FUNCIONAL PROBLEMAS 3.2 PROGRAMACIÓN
Más detallesPrimer ejercicio (3 puntos)
Examen de Fundamentos de Ordenadores 19 de junio de 2009 Duración: dos horas y treinta minutos. No está permitido consultar libros ni apuntes ni usar calculadora u otros dispositivos electrónicos. esponda
Más detallesSoluciones de los ejercicios sobre representación y procesamiento
Soluciones de los ejercicios sobre representación y procesamiento Siguiente: Soluciones de los ejercicios sobre instrucciones y direccionamiento Padre: Materiales didácticos Inicial: Fundamentos de ordenadores
Más detallesEstructura de Computadores. Problemas de Instrucciones y Direccionamientos
Estructura de Computadores. Problemas de Instrucciones y Direccionamientos Departamento de Arquitectura y Tecnología de Sistemas Informáticos Octubre 2009 1. Sea un computador con palabras y direcciones
Más detallesSoluciones de los ejercicios sobre instrucciones y direccionamiento
Soluciones de los ejercicios sobre instrucciones y direccionamiento Siguiente: Soluciones de los ejercicios sobre periféricos y ADM Padre: Materiales didácticos Inicial: Fundamentos de ordenadores 1 Con
Más detallesFUNDAMENTOS DE COMPUTADORES I
OBJETIVO DE LAS PRÁCTICAS. FUNDAMENTOS DE COMPUTADORES I El objetivo de las prácticas de la asignatura Fundamentos de Computadores I consiste en completar el aprendizaje de los modelos estructurales, funcionales
Más detallesInstrucciones de máquina y tipos de software
(obsoletos) Instrucciones de máquina y tipos de software Software del sistema: Implementa sobre la máquina convencional («desnuda») una «máquina virtual»: la máquina operativa Software de aplicaciones:
Más detallesEstructura de Computadores. Problemas de Instrucciones y Direccionamientos
Estructura de Computadores. Problemas de Instrucciones y Direccionamientos Departamento de Arquitectura y Tecnología de Sistemas Informáticos Septiembre 2009 1. Sea un computador con palabras y direcciones
Más detallesExamen de Fundamentos de Ordenadores. 14 de septiembre de 2005 PRIMERA PARTE (SIN LIBROS)
Duración: treinta minutos Puntuación: dos puntos cada pregunta Examen de Fundamentos de Ordenadores 14 de septiembre de 2005 PRIMERA PARTE (SIN LIBROS) Responda en la hoja de respuestas que se adjunta
Más detallesModos de Direccionamiento
Arquitectura de Ordenadores Modos de Direccionamiento del Intel Pentium Abelardo Pardo abel@it.uc3m.es Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Modos de Direccionamiento ADM-1
Más detallesBloques del programa de la asignatura
Bloques del programa de la asignatura lases Enfoque Temas 1 1 oncreto Símplez y Símplez+i4 (niveles de máquina convencional y micromáquina) 11 16 General Representación y procesamiento Instrucciones y
Más detallesRepaso Registros internos Z80 1/37
Repaso Registros internos Z80 1/37 Repaso Formato instrucciones Formato con 4 direcciones Acumulador: A A op oper2 PC: Program Counter dirección de la próxima instrucción Instrucciones de operación Código
Más detallesEnsamblador martes, 9 de septiembre de :11
Ensamblador martes, 9 de septiembre de 2014 18:11 Estructura de computadores página 1 Estructura de computadores página 2 Estructura de computadores página 3 12:06 Estructura de computadores página 4 Estructura
Más detallesMemoria Estática Punteros, Vectores y Matrices
Memoria Estática Punteros, Vectores y Matrices Organización del Computador II 1 o Cuatrimestre 2017 28 de Marzo Organización del Computador II Memoria Estática / Punteros / Vectores / Matrices 1 / 29 Repaso
Más detallesMemoria Estática Punteros, Vectores y Matrices
Memoria Estática Punteros, Vectores y Matrices Organización del Computador II 2 o Cuatrimestre 2017 29 de Agosto Organización del Computador II Memoria Estática / Punteros / Vectores / Matrices 1 / 31
Más detallesGrado en Ingeniería Informática - Ingeniería del Software Estructura de Computadores - Prueba 2 - Junio de 2011
Apellidos, Nombre: Grado en Ingeniería Informática - Ingeniería del Software Estructura de Computadores - Prueba 2 - Junio de 2011 Problema 1. Realice un programa que calcule la cantidad de números negativos
Más detallesFunciones y Datos en Intel 8086
y Datos en Intel 8086 Departamento de Arquitectura 1 1 Instituto de Computación Facultad de Ingeniería Universidad de la República Arquitectura de Computadoras, 2016 Temas 1 2 Tipos atómicos Tipos estructurados
Más detallesUnidad Nº II Capacidad de la unidad central. de procesamiento. Instituto Universitario Politécnico. Santiago Mariño
Instituto Universitario Politécnico Santiago Mariño Unidad Nº II Capacidad de la unidad central de procesamiento Organización de instrucción de máquina Cada instrucción requiere la información que necesita
Más detallesTema 2. Diseño del repertorio de instrucciones
Enunciados de problemas Tema 2. Diseño del repertorio de instrucciones Arquitectura de Computadores Curso 2009-2010 Tema 2: Hoja: 2 / 10 Tema 2: Hoja: 3 / 10 Base teórica Al diseñar un computador, uno
Más detallesModos de Direccionamiento+ Diseño de ISA. Organización del Computador 1 Verano 2016
Modos de Direccionamiento+ Diseño de ISA Organización del Computador 1 Verano 2016 Repaso Vimos que una instrucción se compone de OpCode Fuente/s CodOp Fuente/s Destino/s Destino/s Qué pueden ser estas
Más detalles8.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
Más detallesOrganización de computadoras. Clase 2. Universidad Nacional de Quilmes. Lic. Martínez Federico
Organización de computadoras Clase 2 Universidad Nacional de Quilmes Lic. Martínez Federico La clase pasada. Compuertas lógicas: La clase pasada. Compuertas lógicas: Qué? La clase pasada. Compuertas lógicas:
Más detallesLA CESIUS. Dónde estamos?
JOSÉ ÁNGEL ACOSTA RODRÍGUEZ INFORMÁTICA CURSO 2009/0 LA ESTRUCTURA Y PROGRAMACIÓN Dónde estamos Estructura de J. von Neumann Historia K. Zuse, ingeniero (GE, 90/95) 94 Plankalkül er comp. controlada por
Más detallesLA CESIUS. Dónde estamos?
LA CESIUS ESTRUCTURA Y PROGRAMACIÓN Dónde estamos? Estructura de J. von Neumann Historia 1941 - Plankalkül K. Zuse, ingeniero (GE, 1910/95) 1943 - ENIAC 1er comp. controlada por programa (Z3 1941) 1952
Más detallesPaso 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
Más detallesBus de direcciones. Bus de datos
1) INTRODUCCIÓN A LA MÁQUINA SENCILLA La máquina sencilla (MS) es un computador concebido para fines exclusivamente didácticos. MS sólo dispone de dos bloques: Unidad Central de Proceso y memoria principal.
Más detallesRegistros de direcciones de 32 bits A0 a A7 (A7 puntero de pila SP)
ARQUITECTURA Y PROGRAMACIÓN DEL MC68000 MC68000 Bus datos (16) Bus direcciones (24) Registro de datos (8) de 32 bits Registros direcciones (8) de 32 bits Operandos Regular Gran ortogonalidad D0..D15 A1..A23,
Más detalles* Operador de Indirección ( o de referencia ) ( o de desreferencia )
PUNTEROS INTRODUCCION Una de las características más poderosas del C, es el puntero o apuntador. Los punteros permiten simular las llamadas por referencia y crear y manipular estructuras de datos dinámicas,
Más detallesConceptos 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.
Más detallesPRÁCTICA 2: Programas básicos. Tipos de direccionamiento.
SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 2: Programas básicos. Tipos de direccionamiento. Tipos de direccionamiento Ejemplos y ejercicios - 1 - 1. Objetivos - Introducir
Más detallesUniversidad Autónoma del Estado de México 2016, Año del 60 Aniversario de la Universidad Autónoma del Estado de México
Universidad Autónoma del Estado de México 2016, Año del 60 Aniversario de la Universidad Autónoma del Estado de México Unidad Académica Profesional Tianguistenco Ingeniería de Software Estructura de Datos
Más detallesPunteros. Programación en C 1
Punteros Programación en C 1 Índice Variables y direcciones de memoria. Punteros definición, declaración e inicialización. Punteros declaración, asignación y dereferencia. Puntero nulo, tipo void. Aritmética
Más detallesEjercicios sobre periféricos y ADM
Siguiente: Ejercicios sobre Algorítmez (UCP) Padre: Materiales didácticos Inicial: Fundamentos de ordenadores 1 Un formato típico para disquetes de 3,5 pulgadas tiene dos superficies, ochenta cilindros,
Más detallesTema ADQUISICIÓN Y TRATAMIENTO DE DATOS. Departamento de Ciencias de la Computación e IA. Subprogramas en C
Tema ADQUISICIÓN Y TRATAMIENTO DE DATOS Departamento de Ciencias de la Computación e IA Subprogramas en C Objetivo Una vez que tengamos un programa que resuelva un problema concreto, ser capaces de usarlo
Más detallesSímplez: modelo estructural
Símplez: modelo estructural bus A 9 bus C 15 UCP 2 UC AC UAL MP CTEC teclado CPAN pantalla bus D 12 c 2009 DIT-ETSIT-UPM Símplez transp. 1 Símplez: memoria principal Capacidad, organización y funcionamiento:
Más detallesObjetivos. El alumno conocerá y aplicará el concepto de apuntador para la realización de programas de manejo eficiente de memoria.
Objetivos El alumno conocerá y aplicará el concepto de apuntador para la realización de programas de manejo eficiente de memoria. Al final de esta práctica el alumno podrá: 1. Acceder a localidades de
Más detalles62/8&,21(6$/(;$0(1'( /$%25$725,2'((6758&785$6'(/26&20387$'25(6 &8562)(%5(52
62/8&,21(6$/(;$0(1'( /$%25$725,2'((6758&785$6'(/26&20387$'25(6 &8562)(%5(52 3DUWHGH(QVDPEODGRU 4º) Escribir un programa en ensamblador que pida un número de una cifra por teclado y saque como resultado
Más detallesPROBLEMAS DE ESTRUCTURA DE LOS COMPUTADORES LENGUAJE MÁQUINA Y ENSAMBLADOR
PROBLEMAS DE ESTRUCTURA DE LOS COMPUTADORES EJERCICIO 1: Se tiene la siguiente instrucción del i80x86: MOV AL, Numero: S Se sabe que el contador de programa IP vale 6. S La instrucción ocupa 3 bytes. S
Más detallesUniversidad Euskal Herriko del País Vasco Unibertsitatea Arquitectura de Computadores I Sistema de memoria 1
Arquitectura I Sistema de memoria 1 1. En un espacio de direcciones de 64 Kbytes deben colocarse los s de memoria que se indican. Suponer que el direccionamiento de la memoria se hace al byte. Dibujar
Más detallesAlgoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C Sesión 2
Algoritmos y Estructuras de Datos Ingeniería en Informática, Curso 2º SEMINARIO DE C Sesión 2 Contenidos: 1. Punteros 2. Arrays 3. Estructuras (registros) y uniones 4. Funciones Ejercicios Algoritmos y
Más detalles(3) Unidad 3. Interfaz del ensamblador con el lenguaje C SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM
Unidad 3 Interfaz del ensamblador con el lenguaje C SISTEMAS BASADOS EN MICROPROCESADORES Grado en Ingeniería Informática EPS - UAM Índice 3. Interfaz del ensamblador con el lenguaje C. 3.1. Características
Más detallesTema 2. El lenguaje JAVA
Tema 2. El lenguaje JAVA Nomenclatura habitual Variables Tipos de variables Tipos primitivos Referencias Arrays Operadores Operadores de Java Precedencia de operadores Sentencias de control Sentencias
Más detallesArquitectura de Conjunto de Instrucciones (ISA) Integer Java Virtual Machine (IJVM) para Mic-1
Universidad Simón Bolívar Departamento de Electrónica y Circuitos EC2721 Arquitectura del Computador I Prof. Osberth De Castro Clase 03 Arquitectura de Conjunto de Instrucciones (ISA) Integer Java Virtual
Más detallesModos de direccionamiento
Modos de direccionamiento Modos de direccionamiento El CPU HCS08 incluye 16 modos de direccionamiento: Inherente Inmediato Directo Extendido Indexado, sin offset Indexado, offset de 8 bits Indexado, offset
Más detallesEl operador contenido ( ) permite acceder al contenido de
3. Memoria Dinámica y Punteros Objetivos: Distinguir los conceptos de memoria estática y memoria dinámica Comprender el concepto de puntero como herramienta de programación Conocer cómo se definen y cómo
Más detallesGuía de ejercicios # 8 Flags y Saltos
Guía de ejercicios # 8 Flags y Saltos Organización de Computadoras 2018 UNQ Los objetivos de esta práctica son: Comprender qué son y para qué se utilizan los Flags. Conocer qué operaciones modifican los
Más detallesEXAMEN ORDINARIO DE ORGANIZACIÓN DE COMPUTADORES
11 de febrero de 2010 16h. Escuela Técnica Superior de Ingeniería Informática Camino del Cementerio s/n. 47011 Valladolid EXAMEN ORDINARIO DE ORGANIZACIÓN DE COMPUTADORES NOTA: Los alumnos con las prácticas
Más detallesLISTAS ENLAZADAS FUNDAMENTOS TEORICOS
LISTAS ENLAZADAS FUNDAMENTOS TEORICOS Una lista enlazada es una colección o secuencia de elementos dispuestos uno detrás de otro, en la que cada elemento se conecta al siguiente elemento por un «enlace»
Más detallesCodificador Decodificador ISBN EAN13 (GTK2.0,GdkPixbuf,GDK & GCC)
(GTK2.0,GdkPixbuf,GDK & GCC) Jose Alberto Benítez Andrades 2ºIngeniería Informática, DNI:71454586A Índice INTRODUCCIÓN 1.DESCRIPCIÓN DEL MÉTODO: CODIFICACIÓN DECODIFICACIÓN 2.ALGORITMOS DE RESOLUCIÓN 3.PROGRAMACIÓN
Más detallesRELACIÓN DE PROBLEMAS DE LÓGICA PROGRAMADA (TEMA 4)
RELACIÓN DE PROBLEMAS DE LÓGICA PROGRAMADA (TEMA 4) 1) Se ha escrito el programa adjunto en lenguaje ensamblador del microprocesador 8085. Sabiendo que se encuentra almacenado a partir de la posición 2000H
Más detallesTema 3 (III) Fundamentos de la programación en ensamblador
Tema 3 (III) Fundamentos de la programación en ensamblador Grupo ARCOS Estructura de Computadores Grado en Ingeniería Informática Universidad Carlos III de Madrid Contenido } Fundamentos básicos de la
Más detallesTema 4. La Unidad de Control
Enunciados de problemas Tema 4. Arquitectura de Computadores Curso 2009-2010 Tema 4: Hoja: 2 / 22 Tema 4: Hoja: 3 / 22 Base teórica es el órgano de gobierno del computador. Es el elemento encargado de
Más detallesEstructuras y Uniones
1 Estructuras y Uniones Estructuras. Las estructuras ( struct ) son agrupaciones de una o más variables de tipos posiblemente diferentes, agrupadas bajo un mismo nombre. Esto permite un manejo más cómodo
Más detallesPráctica 3 - Arquitectura del CPU
Práctica 3 - Arquitectura del CPU Organización del Computador 1 Primer cuatrimestre de 2012 Ejercicio 1 A partir de cada uno de los siguientes vuelcos parciales de memoria y estados del procesador, realizar
Más detallesApellidos Nombre DNI
A continuación se muestra el listado de un programa cuyo objetivo es encontrar una palabra dentro de una cadena de caracteres de la sección de datos y copiar dicha palabra en otra zona de la sección de
Más detallesCapítulo 05. Introducción al ensamblador del TMS320C6713
2012 Capítulo 05. Introducción al ensamblador del TMS320C6713 MI. Mario Alfredo Ibarra Carrillo Facultad de Ingeniería; Telecomunicaciones 30/08/2012 Ver_01_06_01 Variable Una variable, en un DSP, es
Más detallesRepaso Lenguaje C Área de Servicios Programación (Ing. Elect. y Prof. Tec.), Programación I (TUG y TUR) y Electrónica programable (TUE)
Repaso Lenguaje C OBJETOS Variables Constantes Variable: objeto del ambiente cuyo contenido puede cambiar. Constante: objeto cuyo contenido no puede cambiar. Variables: - un nombre que la identifica. Deben
Más detallesLos números naturales y enteros en el 80X86 y en LAN
Los números naturales y enteros en el 80X86 y en LAN 1. Los números naturales en el 80X86/TASM Representación Sistema de representación En el 80X86 (y en la mayoría de los procesadores), los números naturales
Más detallesCS2: Unidad de datos (UD)
S2: Unidad de datos (UD) ambios respecto al S1: Ancho datos: 12 bits Ancho direcciones: bits Rotación del registro A con carry LS, DS, IS TP, TIR, TSP W4, W, R 4 SP[] MAR[] IR 7-0 IR[12] IR 11- P[] DB
Más detallesContenido. 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
Más detallesCONJUNTO DE INSTRUCCIONES µp8086
CONJUNTO DE INSTRUCCIONES µp8086 Se llama INSTRUCCIÓN a las palabras reservadas ó MNEMÓNICOS en ensamblador, los cuales se traducen a lenguaje máquina para su posterior ejecución por parte de la CPU. Existen
Más detallesEjercicios sobre instrucciones y direccionamiento
Ejercicios sobre instrucciones y direccionamiento Siguiente: Ejercicios sobre periféricos y ADM Padre: Materiales didácticos Inicial: Fundamentos de ordenadores 1 Suponga que se modifica la estructura
Más detallesEjercicios del Tema 3. Fundamentos de la programación en ensamblador
Ejercicios del Tema 3. Fundamentos de la programación en ensamblador Ejercicio 1. Dada la siguiente expresión de un lenguaje de alto nivel int a = 6; int b = 7; int c = 3; int d; d = (a+b) * (a+b); Indique
Más detallesRESEÑA DE LENGUAJE C
RESEÑA DE LENGUAJE C VARIABLES La función main. Es el punto de entrada al programa. void main(void) Aquí escribo mi programa Tipos de datos. Char. El char es una variable de 1 byte. Almacena números enteros.
Más detalles2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 1 - INTRODUCCIÓN JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ
ARQUITECTURAS DE COMPUTADORES 2º CURSO INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN TEMA 1 - INTRODUCCIÓN JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ Tema 1.MaNoTaS 1 Definiciones (I) Descripción Un
Más detallesEl repertorio de instrucciones
El repertorio de instrucciones Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución y caracterización
Más detallesOperadores aritméticos. / División operando enteros o reales si operandos son entero resultado es entero. Resto de caso resultado real
7.1 Operadores aritméticos Operadores aritméticos operadores Operación + Suma operandos pueden ser enteros o reales - Resta operandos pueden ser enteros o reales * Multiplicación operando enteros o reales
Más detallesProgramación I Funciones
1 Funciones Iván Cantador 2 Funciones: definición, sintaxis, ejemplos (I) Una funciónes un bloque de sentencias identificado con un nombre que se ejecutan de manera secuencial ofreciendo una funcionalidad
Más detallesTema 4. Fundamentos del ensamblador
Tema 4. Fundamentos del ensamblador Laboratorio de Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Transparencia: 2 / 30 Índice Filosofía de programación Organigramas
Más detallesDada la CPU con la estructura interna que se muestra en la figura,
Estructura de Computadores Tema 5. La unidad de control Estructura interna de la CPU. Estrategias de diseño de unidades de control. Unidad de control cableada. Máquina de Wilkes. Microprogramación. Horizontalidad
Más detallesTema 1. Fundamentos del lenguaje ensamblador
Tema 1. Fundamentos del lenguaje ensamblador Laboratorio de Estructura y Organización de Computadores Grados en Ingeniería Informática e Ingeniería de Computadores Curso 2012-2013 Índice Estructura del
Más detallesPRÁCTICA # 2. 0 Direcciones 1 Dirección 2 Direcciones 3 Direcciones
UNIVERSIDAD CENTRAL DE VENEZUELA FACULTAD DE CIENCIAS ESCUELA DE COMPUTACIÓN UNIDAD DOCENTE DE REDES, ARQUITECTURA Y SISTEMAS ORGANIZACIÓN Y ESTRUCTURA DEL COMPUTADOR I PRÁCTICA # 2 1. Escriba programas
Más detallesLecció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)
Más detallesConstruyendo 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
Más detallesProgramació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á
Más detallesExamen de teoría (5 puntos)
Examen de Estructura de Computadores. Septiembre de 25 Bien: Mal: No contestadas: Examen de teoría (5 puntos) El examen constará de dos partes: El examen tendrá una duración total de 2 horas. La nota final
Más detallesEstructura de Computadores: Tema 1. Introducción. Índice. Arquitectura del i8086
Estructura de Computadores: Tema 1 El procesador Introducción Estudiaremos la arquitectura del procesador i8086 (CPU, registros,...), su gestion de la memoria y su conjunto de instrucciones. Programaremos
Más detallesSe guardan en archivos con extencion c y los cabezales con extension h
Se guardan en archivos con extencion c y los cabezales con extension h Tipos de Variables: Tipo Tamaño(bytes) Limite inferior Limite superior char 1 -- -- unsigned char 1 0 255 short int 2-32768 +32767
Más detallesProgramación avanzada en Ensamblador. Tareas que realiza el programa ensamblador
Programación avanzada en Ensamblador Cesáreo Fernández Martínez Álvaro Sánchez Miralles Tareas que realiza el programa ensamblador Traduce el fuente.a66 a código máquina.obj mov Rx, Ry mov reg, #dato Código
Más detallesTexto estructurado (ST)
17 Texto estructurado (ST) El texto estructurado se compone de una serie de instrucciones que se pueden ejecutar, como sucede con los lenguajes superiores, de forma condicionada ("IF..THEN..ELSE") o en
Más detallesEnsamblador. 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ás detalles1 Introducción a los algoritmos y a la programación de computadoras... 1
Contenido - IX Contenido 1 Introducción a los algoritmos y a la programación de computadoras... 1 1.1 Introducción... 2 1.2 Concepto de algoritmo... 2 1.2.1 Definición de algoritmo y problema... 2 1.2.2
Más detallesTema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN
Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN - Introducción - Sintaxis - Semántica básica - Tipos de datos - Expresiones y enunciados - Procedimientos y ambientes - Tipos abstractos de datos y módulos
Más detallesArquitectura y mapa de memoria del 80C167. Cesáreo Fernández Martínez Álvaro Sánchez Miralles
Arquitectura y mapa de memoria del 80C167 Cesáreo Fernández Martínez Álvaro Sánchez Miralles Introducción Microcontrolador (Embedded Processor) de 16 bits ALU y Registros de 16 bits Diseñado para tareas
Más detallesFUNDAMENTOS DE MICROPROCESADORES SOLUCIONES A LOS PROBLEMAS DE LA UNIDAD-3.- EL PROCESADOR I: EL LENGUAJE MAQUINA
3.1. Un programa escrito para MIPS invoca a la subrutina func, a la que transfiere tres argumentos a, b y c. La subrutina tiene dos variables locales m y n. Mostrar la posición del puntero de pila y los
Más detallesPila / Convención C / Interacción C-ASM. Ejercicios. Pila. Organización del Computador II. 21 de marzo de 2017
Organización del Computador II 21 de marzo de 2017 / / Hoy vamos a ver / / Para ponernos de acuerdo... Está en memoria. RSP y RBP la definen. Crece númericamente para atrás. / / Cómo la usamos? PUSH y
Más detallesOperaciones lógicas y repetición
Organización de computadoras Universidad Nacional de Quilmes http:// Repaso Algebra de Boole Memoria principal datos direcciones Unidad Aritmético- Logica (ALU) Unidad de Control de programa (UC) CPU 1
Más detallesUnidad de Entrada-Salida Software de sistemas Parámetros característicos Ejemplo
Estructura de Computadores INTRODUCCIÓN Índice Objetivos Bibliografía recomendada Introducción Esquema básico del computador Von Neumann. Componentes La Memoria Principal La Unidad Central de Proceso (CPU)
Más detalles3. Instrucciones: lenguaje de la máquina
3. Instrucciones: lenguaje de la máquina Fundamentos de Computadores Ingeniería de Telecomunicación Raúl Durán Díaz Departamento de Automática Escuela Politécnica Superior Curso académico 2009 2010 Raúl
Más detalles