UTNianos

Versión completa: [Aporte] Arquitectura Final 10/12/2014 Resuelto y explicado.
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Páginas: 1 2
Acabo de aprobar con un 9 hace 1 hora, y como se lo debo al foro, acá va todo lo que me acuerdo, explicado.

Si hoy no aprobaba, iba a actualizar LA GLORIA, con los finales de este año, pero bueno, ahora tengo que estudiar otra materia para la semana que viene. Voy a subir todo lo que tenga que hice para practicar y no este en el foro.
Basicamente para estudiar, me leí el libro de Quiroga dos veces y el de Angulo una. Solo las unidades que toman en el final, la parte de compuertas y numeros no. Y en Angulo lo de Benchmark y Pentium Pro y esas cosas raras tampoco. Esta es la segunda vez q voy a rendir, así q ya venia cargadito.
Hagan foco en: Segmentación, Paginación, Caché, Memoria Ram, Dispositivos de Entrada Salida, Interrupciones y Excepciones, Registros de proposito general, Registros EFlags, Registros de Segmentos, Registros de Punteros, Modos de Direccionamiento
Para angulo les tiro los capítulos:
4.5
5 todo menos el 5.6
6.2.1 a 6.2.4
7 todo, especialmente incapie en 7.3 7.4. el 7.5 no.
El 8 , 9 y 10 a full, recontra a full.
El 11 es bastante parecido al de quiroga, pero es re imporante.
El 14 a full.
EL 17 una idea de todo
El 19.4.1 y 19.4.2 esos dos a full.

Practica:

A1)
Dec es decrementar 1 el acumulador que nos indique como dato, en este caso CL se refiere a la parte baja, osea, a las ultimas 2 letras en hexa, si fuese CX en este caso seria lo mismo.
Entonces incremento Cx en 1 y queda BX=0009.

A2)
La dirección segmentada se forma como SS : SP (Stack Segment:Stack Pointer), y recordemos que a medida q se van cargando elementos en la pila esta va de FFFF decrementandose.
En la gloria esta:
Lugar vacío de la pila: SS : SP = SSx16 + SP
Último elemento de la pila: SS : SP+1 = SSx16+SP+1
Como pedia la segmentada no hacia falta hacer la cuenta. Si pide la física si tienen q hacer la cuenta.
Queda: 0090 : 4532

A3)
Sub es resta, osea vamos a hacer Bx-Cx.
Lo primero que tenemos que ver es cual es el Nro q representan ambos en entero signado.
Lo importante es el primer bit, si es 0 es positivo, si es 1 es negativo.
En este caso Bx es positivo y Cx tambien. En binario seria... Bx: 0000 1011 0000 1010 CX:0000 0000 0000 1010
Yo hice la cuenta en decimal, así que pasé ambos numeros a decimal, resté y despues el resultado a hexa nuevamente.
Tengan en cuenta q si alguno de los dos tenia un 1 en el primer bit, ese bit no forma parte del número, pq es el q indica el signo.
Bx=2826 Ax=10 2826-10 = 2816 entonces es 0B00 en hexa.

A4)
LOOP es Decrementar CX y saltar si es distinto a cero. Es para hacer un ciclo fijo. Se usa como LOOP <Etiqueta> . Donde salta a etiqueta mientras CX no sea cero.
Con esto en mente, si CX vale 10, para llegar a 0 le faltan 10.
Dejo links que explican esto:
Cita:loop arg
The loop instruction decrements ECX and jumps to the address specified by arg unless decrementing ECX caused its value to become zero. For example:
mov ecx, 5
start_loop:
; the code here would be executed 5 times
loop start_loop
http://en.wikibooks.org/wiki/X86_Assembly/Control_Flow

B1y2) La trampita acá era FORMATO PALABRA, hay q recordar que palabra: 16 bits, doble palabra 32bits, cuadruple 64.
Si sabes eso... facil...
0000 0000 0000 0001 En Hexa 0001
Para punto flotante tenemos 1.0 la coma tenemos q correrla hasta q qde un 1 adelante, en este caso no tenemos q correr nada así q la mantisa es 0+127 y la característica son todos ceros pq el 1 de adelante no cuenta. Entonces qda 0011 1111 1000 0000 0000 0000 0000 0000. En Hexa.. 3F800000


C1)
El número es la posición en la tabla de interrupciones IDT
En el libro de Quiroga entre las Pags 162 y 168 nos explica q los códigos de instrucción es como que estan "mapeados" entonces los primeros X bits representan la operación los X bits siguientes el operando 1 y los otros bits el operando 2.
Entonces leyendo todo eso, te das cuenta q digamos... hay una parte que es fija y otra q cambia del código de instrucción. El 02 del código representa el 2.
Infiriendo el código para INT 3 va a ser CD03

C2)
La respuesta es que el procesador va a ir a la dirección que le indique la tabla que tiene mapeada las interrupciones.
Pq cada interrupción tiene un procedimiento especifico cuya dirección se encuentra en la tabla.

C3)
Lo que tenemos q ver acá es cuantos bytes ocupa la instrucción, en este caso son dos bytes.
Entonces, el puntero se va en la AB55:0103 y vuelve con 2 bytes más pq es lo que ocupa la instrucción anterior.
Seria... 0583:0105
Recuerden q el primer numero es CS y el segundo es el IP. El segmento es el mismo, solo aumenta el IP.
Muy similar al punto A2 pero en vez del puntero a pila, va el puntero de instrucción.
Si pidiese la física, ya saben, agregar cero (o mult 16 en decimal) y sumar.

La teoria está comentada en el mensaje 6 de este tema.
http://www.utnianos.com.ar/foro/tema-apo...#pid405284
Gracias
Hola, adjunto el enunciado con la respectiva resolucion del final.

Saludos!!

[attachment=9988]
Una consulta, hay resueltos así en fotocopiadora? con las respuestas de los finales
Gracias por el enunciado !

Tomaron cosas que no toman casi nunca en la teoria no me anime a quedarme thumbdown
(11-12-2014 15:02).-Fede-. escribió: [ -> ]Una consulta, hay resueltos así en fotocopiadora? con las respuestas de los finales

Creo q hay viejos, estudia del foro, estan casi todos los finales de este año y el otro.

(11-12-2014 16:14)leaan escribió: [ -> ]Gracias por el enunciado !

Tomaron cosas que no toman casi nunca en la teoria no me anime a quedarme thumbdown

A ver...
1 Si captas a que le llama "verbo" era un regalo, si no lo captas no. Verbo es "acción" y las operaciones son Cop OP + DATA entonces ¿Si la acción es el q tiene la data implicita... Ya está...
2 Lo de Little Endian era muy parecido a una pregunta del final del 19 Feb 2014, y yo puse "cero" solo y me pusieron bien.
3 Tenia algunas dudas, pero cuando el cerebro captaba la onda de la pregunta ya está. ¿Quien no sabe las partes del disco e hizo un formateo en su vida?
4 Esta era dificil de captar, pero igual q la anterior, si usas la PC y sos nerd sabes q en opciones avanzadas de windows hay una pestaña que te deja configurar todo esto, manual, automatico, setear los valores por disco... etc... Yo la saq por haber jugado con estas cosas cuando era pequeño.
5 EL REGALO DE NAVIDAD, en la parte de práctica en los enunciados tenes las dos instrucciónes, Gracias Papá Noel.
6 Bit sucio... y te ayudaba diciendote q era "pagina actualizada" ¿si se actualizó, antes de reemplazarla que hay que hacer? Guardarla...
7 Yo puse aborto, así q por esta me saqué 9 =(
8 Existen dos maneras, la groncha y la no groncha. La groncha es 1G/4K (Olvidandote de q 1G no es exactamente 1G y 4K no es exactamente 4k) te da 250K y como sabes q todo en esta materia es multiplo de 2 redondeas a 256K y listo. La no groncha o cientificamente aceptada es 2^30 / 2^12 = 256K
9 Esta era garkita, la puse en lapiz y no la pase en tinta hasta el final del examen. Soy electronico, familiarizado con estas cosas, lo q me da un plus, para mi, la más garka de todas esta pregunta pq no te la esperas. ¿Me preguntan de la cursada? NO LO PUEDO CREER.
Hola, gracias por el aporte.
Cuanto tiempo te dan para el final?
Creo q 2 horas sin apuro. No te arrancan la hoja.
Depende de como venga la mano, si entregan todos...
Gracias! Hoy voy a ver que sale, jeje
Aprobe gente!
Fue bastante diferente y antes de emepzar vino un profesor y dijo q en esta fecha no podiamos ver el examen antes, q primero retiraban las libretas; aca va lo q me acuerdo:
1) te decia el estado de S,Z y V y preguntaba q cual era el numero (de 9 bits con signo) si luego de una operacion algebraica quedaban asi: S=1, Z=1 y V=0. Yo puse 100000000
2) algo de la gestion de memoria, de un bus compartido que se usaba para operacion y E/S
3) algebra de boole: f=a+b expresarla usando producto y complemento: puse ((a-).(b-))- (el - implica q esta negado)
4) dos instrucciones en aseembler de moviemiento de bits a la derecha
5) poner los digitos de un numero en base 6; puse 0,1,2,3,4,5
6) operacion para restaurar un disco a fabrica y poder escribir datos. Puse formateo
7) un ejercicio q habia ciclos y frecuencia y te decia cuanto tiempo tardaba
8) no me acuerdo xD
9) no me acuerdo xD

Practica:
1)te daban un numero 00007ffff y te pedian ponerlo en decimal, si se usaba en con frames de 4kb en q frame estaba (puse en el 7), pasarlo a ieee 754, algo del controlador de cache, q se pusiera la etiqueta y el dato en una total asociativa
2) te daban una instruccion en tipo XXXX:YYYY JZ dir-mem y te decian a donde iba si z=0 (puse a mem-dir), escribir para comparar el registro dx y cx (puse cmp DX,CX) y q valor tendria q tener el DX para que se ejecute el salto (recuerdo q puse 0001 porq algo te decia en el enunciado).

No se si lo q respondi esta bien, pero espero q les sirva.
Si alguien encesita apuntes, tengo cosas y se las puedo acercar a medrano casi cualquier dia.
Saludos!
ZOGARRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR

TE DEBO MI 10!!!!!!!! NOS TAMARON EL MISMO EXAMENNNN Q SUBIO ZOGAR ME CLAVARON UN 9 PEDI REVISION Y ME PUSIERON UN 10 ZOGARR GRACIASSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
9 y pediste revisión? jaja

Te deben haber mirado re torcido...
rendiste en la 237 no?
Jajajajaj repitieron el examen en 2 fechas seguidas, que desastre...
Yo creo q rendi en la 237 y si mal no recuerdo, tema 2 q es lo q describi arriba.
Saludos!
Páginas: 1 2
URLs de referencia