Site hosted by Angelfire.com: Build your free website today!

Tec Virtual

Instituto Tecnológico de Villahermosa
Villahermosa, Tabasco, Mex.

Ejercicios Propuestos

Lenguaje Ensamblador
Prof. L.I. José Juan Ulín Ricárdez



 

Ejercicio. C1  Introduccion al hardware de la PC

1.1. Determine la configuración binaria en bits de los siguientes numeros:

a) 6;        b) 14;        c) 22;        d) 28;        e)30
1.2. Sume los siguientes números binarios:
a) 00010101        b) 00111101        c) 00011101        d) 01010111
    00001101            00101010            00000011            00111101
1.3. Halle el complemento a dos de los siguientes números binarios negativos:
a) 00010110        b) 00111101        c) 00111100
1.4. Encuentre el valor positivo(absoluto) de los siguientes números binarios negativos:
a) 11001000        b) 10111101        c) 11111110        d) 11111111
1.5. Determine la representación hexadecimal de los valores siguientes:
a) Código ASCII de la letra Q
b) Código ASCII del número7
c) 01011101 binario
d) 01110111 binario
1.6. Sume los números hexadecimales siguientes:
a)    23A6        b)    51FD        c)    7779        d)    EABE        e)    FBAC
    + 0022             + 0003            + 0887            + 26C4             + 0CBE
1.7. Determine la representación hexadecimal de los números decimales siguientes. Puede verificar el resultado al convertir el valor hexadecimal a binario y al sumar los bits de 1.
a) 19        b) 33        c) 89        d) 255        e) 4095        f) 63398
1.8. Proporcione la configuración ASCII, en bits, de los siguientes caracteres de un byte.
a) P          b) p          c) #        d) 5
1.9. ¿ Cual es la función del procesador ?

1.10. ¿ Cuales son las dos clases principales de memoria en la PC y cuáles, sus principales uso ?

1.11. Muestre como el sistema almacena 012345 hex como un valor en la memoria

1.12. Explique lo siguiente:

a) Segmento        b) Desplazamiento(offset)        c) Límite de dirección
1.13. ¿ Cuales son: ?
a) las tres clases de segmentos        b) su tamaño máximo        c) el límite de la dirección en el que inician
1.14. Señale la función de cada uno de los tres registros de segmentos

1.15. Explique que registros se utilizan para los siguientes propósitos:

a) sumar y restar
b) contar los ciclos
c) multiplicar y dividir
d) segmentos de direccionamiento
e) indicación de un resultado igual a cero
f) desplazamiento de dirección de una instrucción que se va a ejecutar
1.16. Muestre el registro EAX y el tamaño y posición de AH,AL y AX en él

1.17. Codifique las instrucciones en lenguaje ensamblador para mover el número 25 a los registros siguientes

a) CH        b) CL        c) CX        d) ECX



Ejercicio. C2  Requerimientos de software de la PC

2.1. ¿ Cuáles son las 5 funciones principales del DOS ?

2.2. ¿ Cuáles son los 3 componentes principales del DOS y cuál es el propósito de cada uno de ellos ?

2.3. ¿ Qué pasos realiza el sistema en una inicialización (arranque en frío) ?

2.4. (a) ¿ Que área de datos construye el DOS y almacena en frente de un módulo ejecutable, cuando el módulo es cargado para su ejecución ?  (b) ¿ Cuál es el tamaño de esta áres de datos ?

2.5. ¿ El DOS realiza ciertas operaciones cuando carga un programa .EXE para su ejecución. ¿ Qué valores inicializa el DOS (a) en los registros CS e IP,  (b) en los registros SS y SP,  (c) en los registros DS y ES ?

2.6. ¿ Cuál es el objetivo de la pila ?

2.7. ¿ De que forma se define la pila para  (a) un programa .COM   y (b) un programa .EXE ? ( esto es, ¿ quién o qué define la pila ? )

2.8. (a) ¿ Cuál es el tamaño de cada entrada en la pila ?,  (b) ¿ En dónde se encuentra inicialmente la parte superior de la pila y cómo es direccionada ?

2.9. Durante la ejecución de un programa, el CS contiene 5A2B[0], el SS contiene 5B53[0], el IP contiene 52h y el SP 48h. (Los valores se muestran en secuencia normal, no en secuencia invertida de bytes.) Calcule las direcciones de  (a) la instrucción a ejecutarse, y  (b) la parte superior de la pila(localidad actual).

2.10. El DS contiene 5B24[0] y una instrucción que mueve datos de la memoria al AL es A03A01(donde A0 significa "mover"). Calcule la dirección de memoria referenciada.
 


Ejercicio. C3  (en construcción...)