SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
UNIVERSIDAD NACIONAL DEL CALLAO
FACULTAD DE IINGENIERÍA ELÉCTRICA Y
ELECTRÓNICA
“LENGUAJE DE PROGRAMACIÓN ASSEMBLER”
Integrantes:
DÍAZ GUERRA ALFREDO EDWIN
1813120151
PINEDA PAREDES ANDY EDGARDO
1813120561
FERNANDEZ CORNEJO SEBASTIAN
1813110108
MARQUINA INOCENTE CARLOS
1623125271
LOAIZA NAVARRO MARCIO CLAUDIO
1723115089
Docente:
ING. JUAN ANTONIO APESTEGUIA INFANTES
Lima, Perú Diciembre, 2020.
INTRODUCCIÓN
En el presente trabajo veremos cómo
se inició este lenguaje, que
características y bibliotecas maneja,
con ello se analizará la importancia,
ventajas y desventajas del mismo. Por
último se mencionaran algunas de sus
aplicaciones y ejemplos.
Los lenguajes ensambladores fueron primero desarrollados en los años
1950, cuando fueron referidos como lenguajes de programación de segunda
generación. Los lenguajes ensambladores eliminaron mucha de la
propensión a errores y del consumo de tiempo de la programación de los
lenguajes de primera generación, que se necesitaba con los primeros
computadores, liberando a los programadores del tedio tal como recordar
códigos numéricos y cálculo de direcciones. Una vez fueron ampliamente
usados para todo tipo de programación.
LENGUAJEMAQUINA ASSEMBLER
HISTORIA
Históricamente, un gran número de programas han sido escritos enteramente en lenguaje
ensamblador. Los sistemas operativos fueron casi exclusivamente escritos en lenguaje
ensamblador hasta la aceptación amplia del lenguaje de programación C en los años 1970
y principios de los 1980. También, muchas aplicaciones comerciales fueron escritas en
lenguaje ensamblador, incluyendo una gran cantidad del software escrito por grandes
corporaciones para mainframes de IBM. Los lenguajes COBOL y FORTRAN
eventualmente desplazaron mucho de este trabajo, aunque un número de organizaciones
grandes conservaran las infraestructuras de aplicaciones en lenguaje ensamblador hasta
bien entrados los años 1990.
OBOL FORTRAN
aunque el lenguaje ensamblador
siempre manejado y generado
compiladores, todavía se usa
es casi
por los
para la
manipulación directa del hardware, acceso a
instrucciones especializadas del procesador, o
para
crítico.
resolver
Los
problemas de desempeño
usos
controladores/manejadores
típicos son
(drivers) de
Sin embargo, por los años 1980 (1990 en los
microcomputadores), su uso había sido en
gran parte suplantado por los lenguajes de
alto nivel, en la búsqueda de una mejorada
productividad en programación. Hoy en día,
aunque el lenguaje ensamblador es casi
siempre manejado y generado por por los
compiladores, todavía se usa para la
manipulación directa del hardware, acceso a
instrucciones especializadas del procesador o
para resolver problemas de desempeño
crítico. Los usos típicos son controladores/
manejadores (drivers) de dispositivo, sistemas
embebidos de bajo nivel y sistemas de tiempo
real.
El lenguaje assembler es un lenguaje de
programación de bajo nivel. Consiste en un
conjunto de mnemónicos que representan
instrucciones básicas para los
computadores, microprocesadores, micro
controladores y otros circuitos integrados
programables. En informática, un
mnemónico es una palabra que sustituye a
un código de operación (lenguaje de
máquina), con lo cual resulta más fácil la
programación, es de aquí de donde se aplica
el concepto de lenguaje ensamblador.
MARCO TEÓRICO
El lenguaje assembler es un lenguaje de
programación de bajo nivel. Consiste en un
conjunto de mnemónicos que representan
instrucciones básicas para los
computadores, microprocesadores, micro
controladores y otros circuitos integrados
programables. En informática, un
mnemónico es una palabra que sustituye a
un código de operación (lenguaje de
máquina), con lo cual resulta más fácil la
programación, es de aquí de donde se aplica
el concepto de lenguaje ensamblador.
CARACTERISTICAS
❖ Los programas hechos en lenguaje
ensamblador, al ser programado directamente
sobre Hardware, son generalmente más rápidos
y consumen menos recursos del sistema
(memoria RAM y ROM). Al programar
cuidadosamente en lenguaje ensamblador se
pueden crear programas que se ejecutan más
rápidamente y ocupan menos espacio que con
lenguajes de alto nivel.
❖ El código escrito en lenguaje ensamblador
posee una cierta dificultad de ser entendido
directamente por un ser humano ya que su
estructura se acerca más bien al lenguaje
máquina, es decir, lenguaje de bajo nivel.
❖ Con el lenguaje ensamblador se tiene un control
muy preciso de las tareas realizadas por un
Microprocesador por lo que se pueden crear
segmentos de código difíciles de programar en
un lenguaje de alto nivel.
IMPORTANCIA
La importancia del lenguaje
ensamblador radica principalmente que
se trabaja directamente con el
microprocesador; por lo cual se debe de
conocer el funcionamiento interno de
este, tiene la ventaja de que en él se
puede realizar cualquier tipo de
programas que en los lenguajes de alto
nivel no lo pueden realizar. Otro punto
sería que los programas en
ensamblador ocupan menos espacio en
memoria.
VENTAJAS Y DESVENTAJAS
VENTAJAS DESVENTAJAS
Velocidad Tiempo de programación
Tamaño Programas de fuentes
flexibilidad Peligro de afectar
Falta de portabilidad
• Implica un proceso de computo adicional al que
el programador quiere realizar
• Un interprete es siempre mas lento que realizar
la misma acción en Lenguaje Ensamblador.
• Los compiladores son muchos mas rápidos que
los interpretes, pues hacen la traducción de una
vez y dejan el código objeto.
• Mayor parte de las veces, el código generado por
un compilador es un menos eficiente que el
código equivalente que un programador
escribiría.
VELOCIDAD
Existen programas donde el
uso de las memorias para esos
casos es eficiente el lenguaje
ensamblador por la mínima
cantidad de recursos de los
que dispone.
TAMAÑO
En el lenguaje Ensamblador es
sumamente sencillo, pues
tenemos el acceso directo
al hardware del monitor.
FLEXIBILIDAD
En el lenguaje Ensamblador es
sumamente sencillo, pues tenemos
el acceso directo al hardware del
monitor.
FLEXIBILIDAD
Al ser de bajo nivel el
Lenguaje Ensamblador
requiere más instrucciones
para realizar el mismo
proceso, en comparación con
un lenguaje de alto nivel.
TIEMPO DE
PROGRAMACION
FALTA DE
PORTABILIDAD
Como ya se mencionó, existe un
lenguaje ensamblador para cada
máquina; por ello, evidentemente
no es una selección apropiada de
lenguaje cuando deseamos
en una maquina y luego llevar los
a otros SO
Estructura De Un Programa En Assembler
Un programa en el lenguaje ensamblador consiste de una secuencia de proposiciones, una en cada línea del código fuente.
La sintaxis de una proposición es la siguiente:
[etiqueta] [instrucción|directiva [operandos]] [;comentario]
Donde etiqueta, instrucción|directiva, operandos, comentario son los campos de la proposición.
Palabras Reservadas
Inicio del Assembler
Model
Stack
Variables del programa
Las variables de un programa se declaran en el segmento de datos, por lo que la sección de declaración de variables empieza con la
directiva dataseg. Esta directiva le indica a Turbo Assembler que almacene las variables en el segmento de datos del programa. Las
variables pueden estar inicializadas o no. Los valores de las variables inicializadas se almacenan en el código del programa y se cargan
en las variables al ejecutar el programa.
Para declarar variables podemos utilizar las directivas db, dw, dd o dq. La directiva db define una variable de un byte, la directiva dw
define una variable de tipo palabra (dos bytes), la directiva dd define una variable de tipo palabra doble (cuatro bytes) y la directiva
dq define una variable de tipo palabra cuádruple (ocho bytes). La sintaxis de estas directivas son:
nomVar db exp
nomVar dw exp
nomVar dd exp
nomVar dq exp
Registros
En total maneja 14 registros distribuidos de la siguiente
manera:
Registro de proposito general
AX (16 bits )
BX (16 bits)
CX(16bits)
DX(16 bits)
Registro de indice
SI
DI
BP
SP
Registro de segmento
CS
DS
ES
SS
Registro apuntador de instrucciones
IP
Registro de bandera
OF (overflow, desbordamiento)
DF (dirección)
IF (interrupción)
TF (trampa)
SF (signo)
ZF (cero)
PF (paridad)
CF (acarreo)
Modos de Direccionamiento de Datos
Direccionamiento por Registro
Direccionamiento Inmediato
Direccionamiento Directo
Direccionamiento indirecto por registro
Calculo de direcciones de memoria
El ASSEMBLER tiene un bus de direcciones de 20bita. Por tanto un solo registro no tienela capacidad de representar 20bits ya que los
registros son de 16 bits.
Cada dirección de memoria se divide en 2 partes. El segmento y eldesplazamiento. La notación en Hex sería algo así SSSS:DDDD
La manera de calcular una dirección real de memoria es correr el registro desegmento 4bits a la izquierda y luego sumarle el
desplazamiento.
Interrupciones
Es un mecanismo de transferencia de control, básicamente ocasiona que la CPUdetenga su ejecución del programa actual y transfiera
el control a una rutina de servicio.
Al terminar de ejecutar la interrupción, el CPU continua con los procesos que seestaban ejecutando antes de la interrupción.
Básicamente existen 2 tipos de interrupciones:
–De hardware
–De software
•Las interrupciones de hardware son asincronas, es decir, pueden ocurrir encualquier momento y no están bajo el control del
programa.
•Las interrupciones de Software, pueden invocarse a voluntad y son controladaspor el programa en forma sincronica (es decir, se
conoce todo lo relacionado consu ejecucion ya que el programa controla el momento y la manera en que soninvocadas)
Int 21h
Int 16h
Variantes permisibles de la instrucción mov
es una instrucción en el lenguaje ensamblador de la mayoría de procesadores, cuyo propósito es la transferencia de
datos entre registros de procesador o registro y memoria. Adicionalmente mov también permite el uso de datos
absolutos, como por ejemplo mover el número 10 a un registro del procesador.
1. Mov registro, registro
2. Mov registro, memoria
3. Mov memoria, registro
4. Mov memoria, valor inmediato
5. Mov registro, valor inmediato
6. Mov memoria, acumulador
7. Mov acumulador, memoria
8. Mov Registro de segmento, memoria
9. Mov registro, registro de segmento
10. Mov registro de segmento, memoria
11. Mov memoria, registro de segmento
Instrucción Xlat
Xlat es una instrucción que se utiliza para trabajar con tablas (o arreglos). Se utilizan los registros AL y BX.
La instrucción xlat reemplaza el valor de AL por un nuevo valor tomado de la tabla y el registro BX contiene la dirección del primer
elemento de la tabla.
Instrucción Loop
Loop es una instrucción cuya función es realizar un bucle.
Trabaja en conjunto con el registro CX, donde “cx” contiene el numero de repeticiones que se debe realizar.
Rutinas, Saltos
Las rutinas son secuencias o bloques de código que pueden reutilizarse. Estas rutinas son invocadas por la instrucción
CALL.
Existen dos tipos de instrucciones de salto o alteración del flujo de ejecución.
La instrucción jmp altera el flujo de ejecución enviando el control en forma incondicional a la dirección indicada.
Las instrucciones de salto condicional basan su bifurcación en el estatus que tengan ciertas banderas del registro correspondiente.
EJEMPLO DE PROGRAMA EN
LENGUAJE ASSEMBLER
El lenguaje ensamblador es ideal para
escribir programas embebidos, debido a
que utilizan muy poca memoria. El uso
más común sin duda es la programación
de microcontroladores, para diseñar
sistemas embebidos, el cual es un circuito
integrado programable, capaz de ejecutar
las órdenes grabadas en su memoria.
APLICACIONES COMERCIALES DEL
LENGUAJE ASSEMBLER
❖Aplicaciones en la ingeniería del software:
• CUANDO HAY IMPLICADOS GRAFICOS
Si un programa esta dibujando una imagen en la pantalla,
tiene que trabajar muy rápido, o la espera seria intolerable.
• CUANDO ES NECESARIO TOMAR MUCHAS DECISIONES
Esto es a menudo en programas de juegos complejos, tales
como las damas o el ajedrez. El programa tiene que intentar
y comprobar muchas posibilidades y decidir un movimiento
que sea razonable.
Sistemas Embebidos
impresoras,armas,autos,armas,juguetes,etc.
Tiempo Real: en la industria y manufactura, adquisición de
datos, control de robots.
Transporte: barcos, aviones, sondas espaciales,etc.
Entretenimiento:
graficación, multimedia,
cine y videojuegos.
DSP(Procesamiento de
señal digital):
Procesamiento de señales,
voz e imágenes.
CONCLUSIONES:
➢ Permite al programador indicarle al computador exactamente
cómo llevar a cabo una tarea específica usando la menor
cantidad de instrucciones.
➢ Obtener acceso a funciones de bajo nivel del procesador para
realizar tareas que no son soportadas por los lenguajes de alto
nivel.
➢ Escribir manejadores de dispositivos para comunicarse
directamente con hardware especial tales como tarjetas de red.
➢ Trabajar en ambientes con recursos limitados puede requerir el
uso del lenguaje ensamblador pues el código ejecutable puede
ser menor que el generado por el compilador.
➢ Los lenguajes ensamblador tienen sus aplicaciones muy
reducidas, se centran básicamente en aplicaciones de tiempo
real, control de procesos y de dispositivos electrónicos.

Más contenido relacionado

La actualidad más candente

Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacionJesusRivero7
 
Diseño de Algoritmos
 Diseño de Algoritmos Diseño de Algoritmos
Diseño de AlgoritmosTaniaCalle
 
lenguaje de Programacion
lenguaje de Programacionlenguaje de Programacion
lenguaje de ProgramacionLauracks
 
Actividades ac 2 computacion mtra elisa navarro lectura
Actividades ac 2 computacion mtra elisa navarro lecturaActividades ac 2 computacion mtra elisa navarro lectura
Actividades ac 2 computacion mtra elisa navarro lecturaacdurcor
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacionnecrosteel
 
Lenguaje ensamblador
Lenguaje ensamblador   Lenguaje ensamblador
Lenguaje ensamblador duvalin02
 
Lenguaje de ensamblador
Lenguaje de ensambladorLenguaje de ensamblador
Lenguaje de ensambladorWilman Diaz
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensambladoriagardea
 
Universidad de panam1.lenguaje de programación
Universidad de panam1.lenguaje de programaciónUniversidad de panam1.lenguaje de programación
Universidad de panam1.lenguaje de programaciónKatherine Gonzales
 
Tareasol
TareasolTareasol
Tareasolpalasis
 
Nivel de lenguaje ensamblador
Nivel de lenguaje ensamblador Nivel de lenguaje ensamblador
Nivel de lenguaje ensamblador evelynm10
 
Logica terminosbasicos presentacion
Logica terminosbasicos presentacionLogica terminosbasicos presentacion
Logica terminosbasicos presentacionmemorales_IUE
 
Presentacion_Lenguajes_Programacion
Presentacion_Lenguajes_ProgramacionPresentacion_Lenguajes_Programacion
Presentacion_Lenguajes_Programacionymendal
 
Clase 1 de introduccion a la programacion
Clase 1 de introduccion a la programacionClase 1 de introduccion a la programacion
Clase 1 de introduccion a la programacionreynaldocastillo
 
Powerpoint jimpulgar
Powerpoint jimpulgarPowerpoint jimpulgar
Powerpoint jimpulgarjimsaso
 

La actualidad más candente (20)

Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Diseño de Algoritmos
 Diseño de Algoritmos Diseño de Algoritmos
Diseño de Algoritmos
 
lenguaje de Programacion
lenguaje de Programacionlenguaje de Programacion
lenguaje de Programacion
 
LENGUAJE ENSAMBLADOR
LENGUAJE ENSAMBLADORLENGUAJE ENSAMBLADOR
LENGUAJE ENSAMBLADOR
 
Actividades ac 2 computacion mtra elisa navarro lectura
Actividades ac 2 computacion mtra elisa navarro lecturaActividades ac 2 computacion mtra elisa navarro lectura
Actividades ac 2 computacion mtra elisa navarro lectura
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Apuntes c
Apuntes cApuntes c
Apuntes c
 
Lenguaje ensamblador
Lenguaje ensamblador   Lenguaje ensamblador
Lenguaje ensamblador
 
Lenguaje de ensamblador
Lenguaje de ensambladorLenguaje de ensamblador
Lenguaje de ensamblador
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Universidad de panam1.lenguaje de programación
Universidad de panam1.lenguaje de programaciónUniversidad de panam1.lenguaje de programación
Universidad de panam1.lenguaje de programación
 
Tareasol
TareasolTareasol
Tareasol
 
Leccion1 2
Leccion1 2Leccion1 2
Leccion1 2
 
Lenguajeensamblador
LenguajeensambladorLenguajeensamblador
Lenguajeensamblador
 
Nivel de lenguaje ensamblador
Nivel de lenguaje ensamblador Nivel de lenguaje ensamblador
Nivel de lenguaje ensamblador
 
Logica terminosbasicos presentacion
Logica terminosbasicos presentacionLogica terminosbasicos presentacion
Logica terminosbasicos presentacion
 
Presentacion_Lenguajes_Programacion
Presentacion_Lenguajes_ProgramacionPresentacion_Lenguajes_Programacion
Presentacion_Lenguajes_Programacion
 
Clase 1 de introduccion a la programacion
Clase 1 de introduccion a la programacionClase 1 de introduccion a la programacion
Clase 1 de introduccion a la programacion
 
Powerpoint jimpulgar
Powerpoint jimpulgarPowerpoint jimpulgar
Powerpoint jimpulgar
 
Ensayo
EnsayoEnsayo
Ensayo
 

Similar a Assembler apesteguia (1)

Electronica industrial MOD 3 programacion aplicada.pdf
Electronica industrial MOD 3 programacion aplicada.pdfElectronica industrial MOD 3 programacion aplicada.pdf
Electronica industrial MOD 3 programacion aplicada.pdfWalterCuellarFierro
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretadorFrancisco Leal
 
2. DESARROLLO DE SOFTWARE.pptx
2. DESARROLLO DE SOFTWARE.pptx2. DESARROLLO DE SOFTWARE.pptx
2. DESARROLLO DE SOFTWARE.pptxDieguess
 
Clasificacion de los
Clasificacion de losClasificacion de los
Clasificacion de losJose Mendez
 
Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosInfomania pro
 
Historia de la programacion
Historia de la programacionHistoria de la programacion
Historia de la programacionTensor
 
Diapositivas lenguaje ensamblador
Diapositivas lenguaje ensambladorDiapositivas lenguaje ensamblador
Diapositivas lenguaje ensambladorDANIELCUEVASUAREZ
 
Lenguaje Ensamblador00
Lenguaje Ensamblador00Lenguaje Ensamblador00
Lenguaje Ensamblador00Car_00_01
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensambladorCar_00_01
 
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...Sarai Rodriguez
 
Mi Lenguaje de Programacion
Mi Lenguaje de ProgramacionMi Lenguaje de Programacion
Mi Lenguaje de Programacionmel_15
 
Conceptos de programacion oriente
Conceptos de programacion orienteConceptos de programacion oriente
Conceptos de programacion orienteshariweya
 
lenguaje ensamblador.ppt
lenguaje ensamblador.pptlenguaje ensamblador.ppt
lenguaje ensamblador.pptCesarSaucedo17
 
LENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONLENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONKathGon1
 
Oriente conceptos de programacion
Oriente conceptos de programacionOriente conceptos de programacion
Oriente conceptos de programacionshariweya
 

Similar a Assembler apesteguia (1) (20)

Electronica industrial MOD 3 programacion aplicada.pdf
Electronica industrial MOD 3 programacion aplicada.pdfElectronica industrial MOD 3 programacion aplicada.pdf
Electronica industrial MOD 3 programacion aplicada.pdf
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
2. DESARROLLO DE SOFTWARE.pptx
2. DESARROLLO DE SOFTWARE.pptx2. DESARROLLO DE SOFTWARE.pptx
2. DESARROLLO DE SOFTWARE.pptx
 
Clasificacion de los
Clasificacion de losClasificacion de los
Clasificacion de los
 
Mipag web
Mipag webMipag web
Mipag web
 
Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptos
 
Historia de la programacion
Historia de la programacionHistoria de la programacion
Historia de la programacion
 
Diapositivas lenguaje ensamblador
Diapositivas lenguaje ensambladorDiapositivas lenguaje ensamblador
Diapositivas lenguaje ensamblador
 
Software
SoftwareSoftware
Software
 
Clasificacion de los lenguajes abel
Clasificacion de los lenguajes abelClasificacion de los lenguajes abel
Clasificacion de los lenguajes abel
 
Lenguaje Ensamblador00
Lenguaje Ensamblador00Lenguaje Ensamblador00
Lenguaje Ensamblador00
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
GRUPO 4 Elementos a traves de los lenguajes de programacion, lenguaje de maqu...
 
Mi Lenguaje de Programacion
Mi Lenguaje de ProgramacionMi Lenguaje de Programacion
Mi Lenguaje de Programacion
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Conceptos de programacion oriente
Conceptos de programacion orienteConceptos de programacion oriente
Conceptos de programacion oriente
 
lenguaje ensamblador.ppt
lenguaje ensamblador.pptlenguaje ensamblador.ppt
lenguaje ensamblador.ppt
 
Michael guti
Michael gutiMichael guti
Michael guti
 
LENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONLENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACION
 
Oriente conceptos de programacion
Oriente conceptos de programacionOriente conceptos de programacion
Oriente conceptos de programacion
 

Más de tonytenorio2

Grupo 6 turbopascal apesteguia (1)
Grupo 6 turbopascal apesteguia (1)Grupo 6 turbopascal apesteguia (1)
Grupo 6 turbopascal apesteguia (1)tonytenorio2
 
Lenguaje de programacion ( basic) apesteguia
Lenguaje de programacion ( basic) apesteguiaLenguaje de programacion ( basic) apesteguia
Lenguaje de programacion ( basic) apesteguiatonytenorio2
 
Fortran apesteguia (1)
Fortran apesteguia (1)Fortran apesteguia (1)
Fortran apesteguia (1)tonytenorio2
 
Visual basic apesteguia
Visual basic apesteguiaVisual basic apesteguia
Visual basic apesteguiatonytenorio2
 

Más de tonytenorio2 (7)

Grupo 6 turbopascal apesteguia (1)
Grupo 6 turbopascal apesteguia (1)Grupo 6 turbopascal apesteguia (1)
Grupo 6 turbopascal apesteguia (1)
 
Lenguaje de programacion ( basic) apesteguia
Lenguaje de programacion ( basic) apesteguiaLenguaje de programacion ( basic) apesteguia
Lenguaje de programacion ( basic) apesteguia
 
Fortran apesteguia (1)
Fortran apesteguia (1)Fortran apesteguia (1)
Fortran apesteguia (1)
 
Visual basic apesteguia
Visual basic apesteguiaVisual basic apesteguia
Visual basic apesteguia
 
Php apesteguia
Php apesteguiaPhp apesteguia
Php apesteguia
 
Java apesteguia
Java apesteguiaJava apesteguia
Java apesteguia
 
Delphi apesteguia
Delphi apesteguiaDelphi apesteguia
Delphi apesteguia
 

Último

TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASfranzEmersonMAMANIOC
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasSegundo Silva Maguiña
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfyoseka196
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIAMayraOchoa35
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxEverardoRuiz8
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaSHERELYNSAMANTHAPALO1
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSaulSantiago25
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdfEdwinAlexanderSnchez2
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdffredyflores58
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPJosLuisFrancoCaldern
 
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfPresentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfMIGUELANGELCONDORIMA4
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptxGARCIARAMIREZCESAR
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023ANDECE
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
Fijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEFijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEANDECE
 

Último (20)

TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la Ingenierías
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdf
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
 
Unidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptxUnidad 3 Administracion de inventarios.pptx
Unidad 3 Administracion de inventarios.pptx
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresa
 
Seleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusiblesSeleccion de Fusibles en media tension fusibles
Seleccion de Fusibles en media tension fusibles
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf183045401-Terminal-Terrestre-de-Trujillo.pdf
183045401-Terminal-Terrestre-de-Trujillo.pdf
 
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdfECONOMIA APLICADA SEMANA 555555555555555555.pdf
ECONOMIA APLICADA SEMANA 555555555555555555.pdf
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIPSEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
SEGURIDAD EN CONSTRUCCION PPT PARA EL CIP
 
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdfPresentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
Presentación N° 1 INTRODUCCIÓN Y CONCEPTOS DE GESTIÓN AMBIENTAL.pdf
 
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
4.6 DEFINICION DEL PROBLEMA DE ASIGNACION.pptx
 
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
Centro Integral del Transporte de Metro de Madrid (CIT). Premio COAM 2023
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
Fijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEFijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSE
 

Assembler apesteguia (1)

  • 1. UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE IINGENIERÍA ELÉCTRICA Y ELECTRÓNICA “LENGUAJE DE PROGRAMACIÓN ASSEMBLER” Integrantes: DÍAZ GUERRA ALFREDO EDWIN 1813120151 PINEDA PAREDES ANDY EDGARDO 1813120561 FERNANDEZ CORNEJO SEBASTIAN 1813110108 MARQUINA INOCENTE CARLOS 1623125271 LOAIZA NAVARRO MARCIO CLAUDIO 1723115089 Docente: ING. JUAN ANTONIO APESTEGUIA INFANTES Lima, Perú Diciembre, 2020.
  • 2. INTRODUCCIÓN En el presente trabajo veremos cómo se inició este lenguaje, que características y bibliotecas maneja, con ello se analizará la importancia, ventajas y desventajas del mismo. Por último se mencionaran algunas de sus aplicaciones y ejemplos.
  • 3. Los lenguajes ensambladores fueron primero desarrollados en los años 1950, cuando fueron referidos como lenguajes de programación de segunda generación. Los lenguajes ensambladores eliminaron mucha de la propensión a errores y del consumo de tiempo de la programación de los lenguajes de primera generación, que se necesitaba con los primeros computadores, liberando a los programadores del tedio tal como recordar códigos numéricos y cálculo de direcciones. Una vez fueron ampliamente usados para todo tipo de programación. LENGUAJEMAQUINA ASSEMBLER HISTORIA
  • 4. Históricamente, un gran número de programas han sido escritos enteramente en lenguaje ensamblador. Los sistemas operativos fueron casi exclusivamente escritos en lenguaje ensamblador hasta la aceptación amplia del lenguaje de programación C en los años 1970 y principios de los 1980. También, muchas aplicaciones comerciales fueron escritas en lenguaje ensamblador, incluyendo una gran cantidad del software escrito por grandes corporaciones para mainframes de IBM. Los lenguajes COBOL y FORTRAN eventualmente desplazaron mucho de este trabajo, aunque un número de organizaciones grandes conservaran las infraestructuras de aplicaciones en lenguaje ensamblador hasta bien entrados los años 1990. OBOL FORTRAN
  • 5. aunque el lenguaje ensamblador siempre manejado y generado compiladores, todavía se usa es casi por los para la manipulación directa del hardware, acceso a instrucciones especializadas del procesador, o para crítico. resolver Los problemas de desempeño usos controladores/manejadores típicos son (drivers) de Sin embargo, por los años 1980 (1990 en los microcomputadores), su uso había sido en gran parte suplantado por los lenguajes de alto nivel, en la búsqueda de una mejorada productividad en programación. Hoy en día, aunque el lenguaje ensamblador es casi siempre manejado y generado por por los compiladores, todavía se usa para la manipulación directa del hardware, acceso a instrucciones especializadas del procesador o para resolver problemas de desempeño crítico. Los usos típicos son controladores/ manejadores (drivers) de dispositivo, sistemas embebidos de bajo nivel y sistemas de tiempo real.
  • 6. El lenguaje assembler es un lenguaje de programación de bajo nivel. Consiste en un conjunto de mnemónicos que representan instrucciones básicas para los computadores, microprocesadores, micro controladores y otros circuitos integrados programables. En informática, un mnemónico es una palabra que sustituye a un código de operación (lenguaje de máquina), con lo cual resulta más fácil la programación, es de aquí de donde se aplica el concepto de lenguaje ensamblador. MARCO TEÓRICO El lenguaje assembler es un lenguaje de programación de bajo nivel. Consiste en un conjunto de mnemónicos que representan instrucciones básicas para los computadores, microprocesadores, micro controladores y otros circuitos integrados programables. En informática, un mnemónico es una palabra que sustituye a un código de operación (lenguaje de máquina), con lo cual resulta más fácil la programación, es de aquí de donde se aplica el concepto de lenguaje ensamblador.
  • 7. CARACTERISTICAS ❖ Los programas hechos en lenguaje ensamblador, al ser programado directamente sobre Hardware, son generalmente más rápidos y consumen menos recursos del sistema (memoria RAM y ROM). Al programar cuidadosamente en lenguaje ensamblador se pueden crear programas que se ejecutan más rápidamente y ocupan menos espacio que con lenguajes de alto nivel. ❖ El código escrito en lenguaje ensamblador posee una cierta dificultad de ser entendido directamente por un ser humano ya que su estructura se acerca más bien al lenguaje máquina, es decir, lenguaje de bajo nivel. ❖ Con el lenguaje ensamblador se tiene un control muy preciso de las tareas realizadas por un Microprocesador por lo que se pueden crear segmentos de código difíciles de programar en un lenguaje de alto nivel.
  • 8. IMPORTANCIA La importancia del lenguaje ensamblador radica principalmente que se trabaja directamente con el microprocesador; por lo cual se debe de conocer el funcionamiento interno de este, tiene la ventaja de que en él se puede realizar cualquier tipo de programas que en los lenguajes de alto nivel no lo pueden realizar. Otro punto sería que los programas en ensamblador ocupan menos espacio en memoria.
  • 9. VENTAJAS Y DESVENTAJAS VENTAJAS DESVENTAJAS Velocidad Tiempo de programación Tamaño Programas de fuentes flexibilidad Peligro de afectar Falta de portabilidad
  • 10. • Implica un proceso de computo adicional al que el programador quiere realizar • Un interprete es siempre mas lento que realizar la misma acción en Lenguaje Ensamblador. • Los compiladores son muchos mas rápidos que los interpretes, pues hacen la traducción de una vez y dejan el código objeto. • Mayor parte de las veces, el código generado por un compilador es un menos eficiente que el código equivalente que un programador escribiría. VELOCIDAD
  • 11. Existen programas donde el uso de las memorias para esos casos es eficiente el lenguaje ensamblador por la mínima cantidad de recursos de los que dispone. TAMAÑO
  • 12. En el lenguaje Ensamblador es sumamente sencillo, pues tenemos el acceso directo al hardware del monitor. FLEXIBILIDAD En el lenguaje Ensamblador es sumamente sencillo, pues tenemos el acceso directo al hardware del monitor. FLEXIBILIDAD Al ser de bajo nivel el Lenguaje Ensamblador requiere más instrucciones para realizar el mismo proceso, en comparación con un lenguaje de alto nivel. TIEMPO DE PROGRAMACION
  • 13. FALTA DE PORTABILIDAD Como ya se mencionó, existe un lenguaje ensamblador para cada máquina; por ello, evidentemente no es una selección apropiada de lenguaje cuando deseamos en una maquina y luego llevar los a otros SO
  • 14. Estructura De Un Programa En Assembler Un programa en el lenguaje ensamblador consiste de una secuencia de proposiciones, una en cada línea del código fuente. La sintaxis de una proposición es la siguiente: [etiqueta] [instrucción|directiva [operandos]] [;comentario] Donde etiqueta, instrucción|directiva, operandos, comentario son los campos de la proposición.
  • 16. Inicio del Assembler Model Stack Variables del programa Las variables de un programa se declaran en el segmento de datos, por lo que la sección de declaración de variables empieza con la directiva dataseg. Esta directiva le indica a Turbo Assembler que almacene las variables en el segmento de datos del programa. Las variables pueden estar inicializadas o no. Los valores de las variables inicializadas se almacenan en el código del programa y se cargan en las variables al ejecutar el programa. Para declarar variables podemos utilizar las directivas db, dw, dd o dq. La directiva db define una variable de un byte, la directiva dw define una variable de tipo palabra (dos bytes), la directiva dd define una variable de tipo palabra doble (cuatro bytes) y la directiva dq define una variable de tipo palabra cuádruple (ocho bytes). La sintaxis de estas directivas son: nomVar db exp nomVar dw exp nomVar dd exp nomVar dq exp
  • 17. Registros En total maneja 14 registros distribuidos de la siguiente manera: Registro de proposito general AX (16 bits ) BX (16 bits) CX(16bits) DX(16 bits) Registro de indice SI DI BP SP Registro de segmento CS DS ES SS Registro apuntador de instrucciones IP Registro de bandera OF (overflow, desbordamiento) DF (dirección) IF (interrupción) TF (trampa) SF (signo) ZF (cero) PF (paridad) CF (acarreo)
  • 18. Modos de Direccionamiento de Datos Direccionamiento por Registro Direccionamiento Inmediato Direccionamiento Directo Direccionamiento indirecto por registro Calculo de direcciones de memoria El ASSEMBLER tiene un bus de direcciones de 20bita. Por tanto un solo registro no tienela capacidad de representar 20bits ya que los registros son de 16 bits. Cada dirección de memoria se divide en 2 partes. El segmento y eldesplazamiento. La notación en Hex sería algo así SSSS:DDDD La manera de calcular una dirección real de memoria es correr el registro desegmento 4bits a la izquierda y luego sumarle el desplazamiento.
  • 19. Interrupciones Es un mecanismo de transferencia de control, básicamente ocasiona que la CPUdetenga su ejecución del programa actual y transfiera el control a una rutina de servicio. Al terminar de ejecutar la interrupción, el CPU continua con los procesos que seestaban ejecutando antes de la interrupción. Básicamente existen 2 tipos de interrupciones: –De hardware –De software •Las interrupciones de hardware son asincronas, es decir, pueden ocurrir encualquier momento y no están bajo el control del programa. •Las interrupciones de Software, pueden invocarse a voluntad y son controladaspor el programa en forma sincronica (es decir, se conoce todo lo relacionado consu ejecucion ya que el programa controla el momento y la manera en que soninvocadas) Int 21h Int 16h
  • 20. Variantes permisibles de la instrucción mov es una instrucción en el lenguaje ensamblador de la mayoría de procesadores, cuyo propósito es la transferencia de datos entre registros de procesador o registro y memoria. Adicionalmente mov también permite el uso de datos absolutos, como por ejemplo mover el número 10 a un registro del procesador. 1. Mov registro, registro 2. Mov registro, memoria 3. Mov memoria, registro 4. Mov memoria, valor inmediato 5. Mov registro, valor inmediato 6. Mov memoria, acumulador 7. Mov acumulador, memoria 8. Mov Registro de segmento, memoria 9. Mov registro, registro de segmento 10. Mov registro de segmento, memoria 11. Mov memoria, registro de segmento
  • 21. Instrucción Xlat Xlat es una instrucción que se utiliza para trabajar con tablas (o arreglos). Se utilizan los registros AL y BX. La instrucción xlat reemplaza el valor de AL por un nuevo valor tomado de la tabla y el registro BX contiene la dirección del primer elemento de la tabla.
  • 22. Instrucción Loop Loop es una instrucción cuya función es realizar un bucle. Trabaja en conjunto con el registro CX, donde “cx” contiene el numero de repeticiones que se debe realizar. Rutinas, Saltos Las rutinas son secuencias o bloques de código que pueden reutilizarse. Estas rutinas son invocadas por la instrucción CALL. Existen dos tipos de instrucciones de salto o alteración del flujo de ejecución. La instrucción jmp altera el flujo de ejecución enviando el control en forma incondicional a la dirección indicada. Las instrucciones de salto condicional basan su bifurcación en el estatus que tengan ciertas banderas del registro correspondiente.
  • 23. EJEMPLO DE PROGRAMA EN LENGUAJE ASSEMBLER
  • 24. El lenguaje ensamblador es ideal para escribir programas embebidos, debido a que utilizan muy poca memoria. El uso más común sin duda es la programación de microcontroladores, para diseñar sistemas embebidos, el cual es un circuito integrado programable, capaz de ejecutar las órdenes grabadas en su memoria. APLICACIONES COMERCIALES DEL LENGUAJE ASSEMBLER
  • 25. ❖Aplicaciones en la ingeniería del software: • CUANDO HAY IMPLICADOS GRAFICOS Si un programa esta dibujando una imagen en la pantalla, tiene que trabajar muy rápido, o la espera seria intolerable. • CUANDO ES NECESARIO TOMAR MUCHAS DECISIONES Esto es a menudo en programas de juegos complejos, tales como las damas o el ajedrez. El programa tiene que intentar y comprobar muchas posibilidades y decidir un movimiento que sea razonable.
  • 26. Sistemas Embebidos impresoras,armas,autos,armas,juguetes,etc. Tiempo Real: en la industria y manufactura, adquisición de datos, control de robots. Transporte: barcos, aviones, sondas espaciales,etc.
  • 27. Entretenimiento: graficación, multimedia, cine y videojuegos. DSP(Procesamiento de señal digital): Procesamiento de señales, voz e imágenes.
  • 28. CONCLUSIONES: ➢ Permite al programador indicarle al computador exactamente cómo llevar a cabo una tarea específica usando la menor cantidad de instrucciones. ➢ Obtener acceso a funciones de bajo nivel del procesador para realizar tareas que no son soportadas por los lenguajes de alto nivel. ➢ Escribir manejadores de dispositivos para comunicarse directamente con hardware especial tales como tarjetas de red. ➢ Trabajar en ambientes con recursos limitados puede requerir el uso del lenguaje ensamblador pues el código ejecutable puede ser menor que el generado por el compilador. ➢ Los lenguajes ensamblador tienen sus aplicaciones muy reducidas, se centran básicamente en aplicaciones de tiempo real, control de procesos y de dispositivos electrónicos.