
El lenguaje ensamblador es un tipo de lenguaje de bajo nivel utilizado para escribir programas informáticos, y constituye la representación más directa del código máquina específico para cada arquitectura de computadoras legible por un programador.

Los ensambladores permiten que los programas origen se escriban y se editen en una computadora para generar un código ejecutable en otra computadora. El archivo en lenguaje objeto ejecutable resultante se carga y se ejecuta en el sistema destino.
3. ¿Menciona al menos dos ejemplos de donde se puede aplicar el lenguaje ensamblador?
Ejemplo 1
Código en lenguaje ensamblador para µC Intel 80C51:
ORG 8030H
T05SEG:
SETB TR0
JNB uSEG, T05SEG ; esta subrutina es utilizada
CLR TR0 ; para realizar una cuenta de
CPL uSEG ; 0,5 segundos mediante la
MOV R1,DPL ;interrupción del timer 0.
MOV R2,DPH
CJNE R2,#07H,T05SEG
CJNE R1,#78H,T05SEG
MOV DPTR,#0000H
RET
Ejemplo 2
Código en lenguaje ensamblador para µC 16F84 de Microchip:
ORG 0
Inicio
bsf STATUS,RP0
clrf PORTB
movlw 0xFF
movwf PORTA
bcf STATUS,RP0
Principal
movf PORTA,W
movwf Contador
movf Contador,F
btfsc STATUS,Z
goto PuntoDecimal
sublw d'9'
btfss STATUS,C
END
4. ¿Como se realiza el manejo de memoria?
La reserva de memoria dinámica se hace en tiempo de ejecución después de leer los datos y de conocer el

tamaño exacto del problema. Como consecuencia se adapta mucho mejor a las necesidades en cada caso.
El sitio donde se almacenan los objetos se denominan en ingles heap o free store traducido como montículo o memoria libre, y el sitio preciso donde se encuentre depende del compilador y el tipo de puntero utilizado. La creación y estrucción de los objetos esta
en manos del programador a través de los operadores new y delete.
En C# las variables que se declaran son punteros y se pasan eficientemente con referencia, tampoco es necesario considerar la liberación de la me
moria puesto que framework se encarga de lib
erar todas las referencias que no se estén utilizando y compactar la memoria para mejorar el rendimiento.
5. ¿Que es el direccionamiento en lenguaje ensamblador?
Se les llama modos de direccionamiento a las distintas formas de combinar los operadores según el acceso que se hace a memoria.
Dicho de otra manera, un modo de direccionamiento será una forma de parámetro para las instrucciones. Una instrucción que lleve un parámetro, por lo tanto, usará un modo de direccionamiento, que dependerá de cómo direccionará (accesará) al parámetro; una instrucción de dos parámetros, combinará dos modos de direccionamiento.
6¿Cuales son los tipos de direccionamiento?
Usa solamente registros como operadores
Es el más rápido, pues minimiza los recursos necesarios (toda la información fluye dentro del EU del CPU).
- Modo inmediato
Tiene dos operandos: un registro y una constante que se usa por su valor.
El valor constante no se tiene que buscar en memoria, pues ya se obtuvo al hacer el "fetch" de la instrucción.
Por tanto, es rápido aunque no tanto como el modo registro; requiere ir al BIU por el dato.
- Modo directo
Uno de los operandos involucra una localidad específica
de memoria
El valor constante se tiene que buscar en memoria, en la localidad especificada.
Es más lento que los anteriores, pero es el más rápido para ir a memoria, pues ya "sabe" la localidad, la toma de
la instrucción y no la tiene que calcular.
- Modo indirecto
Se usan los registros SI, DI como apuntadores
El operando indica una localidad de memoria, cuya dirección (sólo la parte desplazamiento) está en SI o DI.
Es más lento que los anteriores, pues tiene que "calcular" la localidad.
- Modo indexado de base
Formato:
[
de leer los datos y de conocer el tamaño exact
o del problema. Como consecuencia se adapta mucho mejor a las necesidades en cada caso.
El sitio donde se almacenan los objetos se denominan en ingles heap o free store traducido como montículo o memoria libre, y el sitio preciso donde se encuentre depende del compilador y el tipo de puntero utilizado. La creación y estrucción de los objetos esta en manos del programador a través de los operadores new y delete.
En C# las variables que se declaran son punteros y se pasan eficientemente con referencia, tampoco es necesario considerar la liberación de la me
moria puesto que framework se encarga de lib
erar todas las referencias que no se estén utilizando y compactar la memoria para mejorar el rendimiento.
La reserva de memoria dinámica se hace en tiempo de ejecución después
BX o BP
+ SI o DI (opcionales)
+ constante (opcional)
]
BX o BP indica una localidad base de la memoria
A partir de BX o BP, se puede tener un desplazamiento variable y uno constante
La diferencia es el segmento sobre el que trabajan por defecto:
BX por defecto en el segmento de datos
BP por defecto en el segmento de pila.
7. ¿Que es el formato de un programa?
Es una manera particular de codificar información para almacenarla en un archivo informático.

Dado que una unidad de disco, o de hecho cualquier memoria sólo puede almacenar bits, la computadora debe tener alguna manera de convertir la informaciónprocesador de texto, habrá a ceros y unos y viceversa. Hay diferentes tipos de formatos para diferentes tipos de información. Sin embargo, dentro de cada tipo de formato, por ejemplo documentos de un
normalmente varios formatos diferentes, a veces en competencia.
No hay comentarios:
Publicar un comentario