Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Nombre de la materia
Lenguaje Ensamblador
Nombre de la Licenciatura
Licenciatura en Ingeniería en Sistemas
Computacionales
Nombre de la Tarea
Evidencia de Aprendizaje
Unidad #
Semana 1
RESPUESTAS SEMANA 1
ENSAMBLADOR
Lenguaje Ensamblador
Objetivo: Conocer los conceptos básicos del Lenguaje Ensamblador: beneficios, dónde se
utiliza, los sistemas numéricos relacionados que permiten ubicar posiciones de memoria
principal en las computadoras y los códigos que hacen posible almacenar datos alfabéticos y
numéricos con gran facilidad en las computadoras.
2
Unidad 1: Conceptos básicos del lenguaje ensamblador
Lenguaje ensamblador
Después del análisis sintáctico y semántico del programa fuente, muchos compiladores generan
un nivel bajo explícito, o una representación intermedia similar al código máquina, que podemos
considerar como un programa para una máquina abstracta. Esta representación intermedia
debe tener dos propiedades importantes: debe ser fácil de producir y fácil de traducir en la
máquina destino.
Códigos intermedios puede ser representado en una variedad de formas y tienen sus propios
beneficios.
Alto nivel IR - Alto nivel de representación de código intermedio está muy cerca de la lengua de
origen. Pueden ser fácilmente generados desde el código fuente y podemos aplicar fácilmente
modificaciones de código para mejorar el rendimiento. Pero para optimización de la máquina
destino, es menos preferido.
Bajo Nivel IR - Este es cerca de la máquina de destino, lo que lo hace adecuado para registro y
asignación de memoria, un conjunto de instrucciones selección, etc. es bueno para
optimizaciones dependientes de la máquina.
Ejemplos:
if x > y goto 53
goto 55
3
Unidad 1: Conceptos básicos del lenguaje ensamblador
Lenguaje ensamblador
Décimal 10 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Binario 2 0, 1
Hexadecimal 16 0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f
4. ¿Cuáles son las operaciones boolenas más importantes, pues los valores se consideran
señales generadas por las computadoras? Invluye su tabla de verdad.
NOT (Y= A)
A Y
0 1
1 0
OR (Y=A+B)
A B Y
0 0 0
0 1 1
1 0 1
1 1 1
4
Unidad 1: Conceptos básicos del lenguaje ensamblador
Lenguaje ensamblador
AND (Y=A*B)
A B Y
0 0 0
0 1 0
1 0 0
1 1 1
6. ¿Qué es el emu8086?
El emu8086 es un emulador del microprocesador 8086 (Intel o AMD compatible) con assembler
integrado. Dado que en un entorno emulado de microprocesador no es posible implementar una
interfaz real de entrada/salida, el emu8086 permite una interface con dispositivos virtuales y
emular una comunicación con el espacio de E/S.
5
Unidad 1: Conceptos básicos del lenguaje ensamblador
Lenguaje ensamblador
7. Incluye la imagen donde se muestre los símbolos del código ASCII en sus tres diferentes
categorías: control, imprimibles y extendidos.
6
Unidad 1: Conceptos básicos del lenguaje ensamblador
Lenguaje ensamblador
8. Completa la oración con las palabras del recuadro, colocando en el espacio lo que
corresponda acorde al concepto descrito.
Lenguaje de alto nivel Muy cercano al lenguaje humano, facilita el trabajo por los
programadores; utiliza un control estructurado de flujo y comprobación de tipos.
9. Describe el proceso que se sigue para traducir los programas escritos en lenguajes
simbólicos a lenguaje máquina antes de ser ejecutados.
Edición. Esta fase consiste en escribir el programa empleando algún lenguaje y un editor.
Como resultado nos dará el código fuente de nuestro programa.
Compilación. En esta fase se traduce el código fuente obtenido en la fase anterior a código
máquina. Si no se produce ningún error se obtiene el código objeto. En caso de errores el
7
Unidad 1: Conceptos básicos del lenguaje ensamblador
Lenguaje ensamblador
Linkado. Esta fase consiste en unir el archivo generado en la fase dos con determinadas
rutinas internas del lenguaje, obteniendo el programa ejecutable. Existen dos tipos de linkados:
Linkado estático: Los binarios de las librerías se añaden a nuestros binarios
compilados generando el archivo ejecutable.
Linkado dinámico: no se añaden las librerías a nuestro binario sino que hará que se
carguen en memoria las librerías que en ese momento se necesiten.
Una vez traducido, compilado y linkado el archivo está listo para su ejecución donde también
podrán surgir problemas y fallos, para los cuales tendríamos que volver a realizar todo el
proceso anteriormente citado, de modo que puedan ser corregidos