Prueba 2015 - Ejercicio 1

Prueba 2015 - Ejercicio 1

de Gonzalo Javiel Mimbacas -
Número de respuestas: 3
Prueba 2015 - Ejercicio 1 


Tengo una duda de la solución, creo que tengo un mareo interesante con las estructuras en 8086

Segun tengo entendido un entero en 8086 es de 16 bits (2 bytes).

En la estructura directorio del ejercicio, lo primero que tenemos es int cantArchivos, entiendo que en la solución para obtener los archivos "se mueve" con SHL 5 veces (para hacer 2^5) . 

Lo que no entiendo es porque lo hace 5 veces en lugar de 4

Muchas gracias,

Gonzalo

En respuesta a Gonzalo Javiel Mimbacas

Re: Prueba 2015 - Ejercicio 1

de Federico Rivero -

Estimado:

Por qué sería 4 veces?

Saludos,

        Federico

En respuesta a Federico Rivero

Re: Prueba 2015 - Ejercicio 1

de Gonzalo Javiel Mimbacas -
¿No estaria a partir de la posición 16 los archivos?, de 0 a 15 estaria el entero y para ubicarme a partir de la posición 16 (2^4)

En respuesta a Gonzalo Javiel Mimbacas

Re: Prueba 2015 - Ejercicio 1

de Martin Alejandro Piperno Herszkowicz -

Hola Gonzalo, ¿cómo estás?...

Por lo que entendí está bien la solución y hace 5 veces shift porque el pretende pararse en la celda del arreglo que le interesa y cada celda del arreglo es de tipo "Archivo" que si miras en la letra dice que tiene "otro campos" que ocupan 30 bytes y un "nombreArchivo" que ocupa 2 bytes por lo cual cada celda del arreglo ocupa 32 bytes y necesita multiplicar por 32 el índice del arreglo para lograr llegar a la posición que desea y como el shift left es lo mismo que multiplicar por 2 al realizar dicha operación 5 veces consigue lo que pretende.

Espero se entienda y sino cualquier cosa decime que parte no me entendiste...

Saludos,

Martín...