SlideShare una empresa de Scribd logo
1 de 35
INGENIERIA EN SISTEMAS COMPUTAIONALES ARQUITECTURA DE COMPUTADORAS UNIDAD I ‘’LENGUAJE ENSAMBLADOR’’ TITULAR:   ,[object Object], INTEGRANTES: ,[object Object]
MARTIN ANDRES VALLES GUTIERREZ.
JUAN SOTERO DE JESUS.
EDWIN RAFAEL VALDEZ SEAÑEZ.
SERGIO JESUS CHAVEZ VILLALOBOS.1
Agenda La siguiente presentación describirá las principales características, estructura , sintaxis básicas del lenguaje ensamblador para proporcionar una noción teórica de las capacidades del lenguaje. 2
Introduccion El ordenador solo entiende el lenguaje de código binario o código maquina ,solo utiliza 0 y 1 para de codificar cualquier acción . 3
Lenguaje de bajonivel Son lenguajes totalmente dependientes de la maquina . Dentro de este grupo se encuentra el lenguaje ensamblador. 4
Lenguaje Ensamblador Derivado del lenguaje maquina , formado por abreviaturas de letras y números llamadas mnemotécnicos  . 5
¿Qué es un lenguaje ensamblador? ,[object Object]
Los lenguajes ensambladores tienen acceso a todas las características e instrucciones disponibles en la maquina.
En resumen todo lo que puede hacerse en lenguaje maquina puede hacerse en lenguaje ensamblador.6
Importancia El lenguaje ensamblador es importante por que el es considerado de primera generación a partir de el se derivaron todos los demás lenguajes hasta llegar a los de alto nivel. 7
Características ,[object Object]
La computadora no entiende directamente al Lenguaje Ensamblador; es necesario traducirle a Lenguaje de Máquina.
 Se utilizan traductores que convierten el código fuente (en Lenguaje Ensamblador) a código objeto.
El usar los traductores de codigo son con el fin de facilitar la programacion y tener el control del harware.8
Ventajas y desventajas del Lenguaje Ensamblador vs lenguaje de alto nivel Lenguaje de alto nivel. Tiempo de programación 2. Programas fuente grandes 3. Peligro de afectar recursos inesperadamente. 4. Falta de portabilidad   Lenguaje Ensamblador. Velocidad 2. Eficiencia de tamaño. 3. Flexibilidad 9
Velocidad ,[object Object]
Un intérprete es siempre más lento que realizar la misma acción en Lenguaje Ensamblador.
Los compiladores son mucho más rápidos que los intérpretes, pues hacen la traducción una vez y dejan el código objeto.
Mayor parte de las veces, el código generado por un compilador es menos eficiente que el código equivalente que un programador escribiría.10
Tamaño Existen programas donde el uso de las memoria es critico para esos casos es eficiente el lenguaje ensamblador por la mínima cantidad de recursos de los que dispone 11
Flexibilidad Las razones anteriores son cuestión de grado: ,[object Object]
En cambio, en ensamblador es sumamente sencillo, pues tenemos el acceso directo al hardware del monitor.12
Tiempo de programación Requiere más instrucciones para realizar el mismo proceso.  Por otro lado, requiere de más cuidado por parte del programador 13
Programa fuentes grandes Crecen los programas fuentes; simplemente, requerimos más instrucciones primitivas para describir procesos equivalentes. Esto es una desventaja porque dificulta el mantenimiento de los programas, y nuevamente reduce la productividad de los programadores.  14
Peligro de afectar recursos El problema es que todo error que podamos cometer, o todo riesgo que podamos tener, podemos tenerlo también en este Lenguaje. Dicho de otra forma, tener mucho poder es útil pero también es peligroso.  15
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 codificar en una máquina y luego llevar los programas a otros SO. 16
Estructura de un programa model small Stack 100h Data Code {Cuerpo del programa} end. 17
Instrucciones en ensamblador Mov.-mueve el valor de un registro o un numero hacia otro registro ejmplomov Bx,5 , movAX,bx. add.-Sumar el valor de un registro a otro registro ADD BX,5 sub.-Rest el valor de un registro o valor especifico a un registro  sub cx,2 inc incrementa en 1 el valor del registro incbx dec.-Decrementa en 1 el valor del registodecbx 18
Brincos Brincos condicionales  JG=si es mayor JB=SI ES MENOR JE=SI ES IGUAL JGE=si es mayor o igual JBE=si es menor o igual Brinco incondicional Jmp Etiqueta:  Brinca a cualquier etiqueta asignada Formato de etiquetas Nombre de etiquetas: { instrucciones} 19
Registros Los registros del procesador se emplean para controlar instrucciones en ejecución, manejar direccionamiento de memoria y proporcionar capacidad aritmética. 20
Registros de segmento Codifica la dirección de inicio de cada segmento y su dirección en un registro de segmento supone cuatro bits 0 a su derecha.  Registro CS  Registro DS  Registro SS  Registro ES  Registro FS y GS 21
Registro Apuntador Los registros apuntadores están asociados con el registro SS y permiten al procesador accesar datos en el segmento de pila los registros apuntadores son dos. El registro SP  El registro BP 22

Más contenido relacionado

La actualidad más candente

Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basicoGustavo Davila
 
Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regularesKenia Adams
 
REGISTRO DE BANDERAS
REGISTRO DE BANDERASREGISTRO DE BANDERAS
REGISTRO DE BANDERASFabian Rojas
 
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO Guillermo Iván Prisco Pérez
 
Protocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modemProtocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modemMirna L. Torres Garcia
 
Lenguajes autómatas.
Lenguajes autómatas.Lenguajes autómatas.
Lenguajes autómatas.LuiS YmAY
 
Operaciones entre lenguajes
Operaciones entre lenguajesOperaciones entre lenguajes
Operaciones entre lenguajesJean Bernard
 
Unidad 2 ensamblador
Unidad 2   ensambladorUnidad 2   ensamblador
Unidad 2 ensambladoreveTalavera
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Giancarlo Aguilar
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...Hugo Alberto Rivera Diaz
 

La actualidad más candente (20)

Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basico
 
Lenguajes regulares
Lenguajes regularesLenguajes regulares
Lenguajes regulares
 
REGISTRO DE BANDERAS
REGISTRO DE BANDERASREGISTRO DE BANDERAS
REGISTRO DE BANDERAS
 
Jerarquia de chomsky
Jerarquia de chomskyJerarquia de chomsky
Jerarquia de chomsky
 
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
 
Unidad 2 expresiones regulares
Unidad 2 expresiones regularesUnidad 2 expresiones regulares
Unidad 2 expresiones regulares
 
Protocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modemProtocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modem
 
Tema 4: Procesamiento paralelo.
Tema 4: Procesamiento paralelo.Tema 4: Procesamiento paralelo.
Tema 4: Procesamiento paralelo.
 
Noción de archivo real y virtual
Noción de archivo real y virtual Noción de archivo real y virtual
Noción de archivo real y virtual
 
Lenguajes autómatas.
Lenguajes autómatas.Lenguajes autómatas.
Lenguajes autómatas.
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Interrupciones
InterrupcionesInterrupciones
Interrupciones
 
Operaciones entre lenguajes
Operaciones entre lenguajesOperaciones entre lenguajes
Operaciones entre lenguajes
 
UNIDAD 3 MODULARIZACIÓN
UNIDAD 3 MODULARIZACIÓNUNIDAD 3 MODULARIZACIÓN
UNIDAD 3 MODULARIZACIÓN
 
Unidad 2 ensamblador
Unidad 2   ensambladorUnidad 2   ensamblador
Unidad 2 ensamblador
 
Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.Componentes y Librerías - Tópicos avanzados de programación.
Componentes y Librerías - Tópicos avanzados de programación.
 
Unidad1 2 Lenguajes y automatas
Unidad1 2  Lenguajes y automatasUnidad1 2  Lenguajes y automatas
Unidad1 2 Lenguajes y automatas
 
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...Conceptos Unidad 1 Lenguajes Automatas Introducción  a  la Teoría de Lenguaje...
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
 
Cifrado por Sustitución y por Transposición
Cifrado por Sustitución y por TransposiciónCifrado por Sustitución y por Transposición
Cifrado por Sustitución y por Transposición
 
Prueba de Caja Blanca
Prueba de Caja BlancaPrueba de Caja Blanca
Prueba de Caja Blanca
 

Similar a Lenguaje Ensamblador

Lenguaje de ensamblador
Lenguaje de ensambladorLenguaje de ensamblador
Lenguaje de ensambladorWilman Diaz
 
Presentación lenguajedeprogramacion
Presentación lenguajedeprogramacionPresentación lenguajedeprogramacion
Presentación lenguajedeprogramacionmichelledelgado97
 
Compiladores
CompiladoresCompiladores
Compiladoreshenry_shd
 
02- Clase 1 - UD2 - Lenguajes.pdf
02- Clase 1 - UD2 -  Lenguajes.pdf02- Clase 1 - UD2 -  Lenguajes.pdf
02- Clase 1 - UD2 - Lenguajes.pdfNancyHerrera88
 
Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosInfomania pro
 
Trabajo de introduc computa
Trabajo de introduc computaTrabajo de introduc computa
Trabajo de introduc computaSampdp
 
Trabajo de introduc computa
Trabajo de introduc computaTrabajo de introduc computa
Trabajo de introduc computaSampdp
 
Trabajo de introduc computa
Trabajo de introduc computaTrabajo de introduc computa
Trabajo de introduc computaSampdp
 
Trabajo de introduc computa
Trabajo de introduc computaTrabajo de introduc computa
Trabajo de introduc computaSampdp
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretadorFrancisco Leal
 
Assembler apesteguia (1)
Assembler apesteguia (1)Assembler apesteguia (1)
Assembler apesteguia (1)tonytenorio2
 
2. DESARROLLO DE SOFTWARE.pptx
2. DESARROLLO DE SOFTWARE.pptx2. DESARROLLO DE SOFTWARE.pptx
2. DESARROLLO DE SOFTWARE.pptxDieguess
 
lenguaje de Programacion
lenguaje de Programacionlenguaje de Programacion
lenguaje de ProgramacionLauracks
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programaciónanderson03230812
 

Similar a Lenguaje Ensamblador (20)

Lenguaje de ensamblador
Lenguaje de ensambladorLenguaje de ensamblador
Lenguaje de ensamblador
 
LENGUAJE ENSAMBLADOR
LENGUAJE ENSAMBLADORLENGUAJE ENSAMBLADOR
LENGUAJE ENSAMBLADOR
 
Presentación lenguajedeprogramacion
Presentación lenguajedeprogramacionPresentación lenguajedeprogramacion
Presentación lenguajedeprogramacion
 
Lenguajeensamblador
LenguajeensambladorLenguajeensamblador
Lenguajeensamblador
 
Compiladores
CompiladoresCompiladores
Compiladores
 
02- Clase 1 - UD2 - Lenguajes.pdf
02- Clase 1 - UD2 -  Lenguajes.pdf02- Clase 1 - UD2 -  Lenguajes.pdf
02- Clase 1 - UD2 - Lenguajes.pdf
 
Clase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptosClase3 guia1-introduccion-compiladores-conceptos
Clase3 guia1-introduccion-compiladores-conceptos
 
Deber
DeberDeber
Deber
 
Trabajo de introduc computa
Trabajo de introduc computaTrabajo de introduc computa
Trabajo de introduc computa
 
Trabajo de introduc computa
Trabajo de introduc computaTrabajo de introduc computa
Trabajo de introduc computa
 
Trabajo de introduc computa
Trabajo de introduc computaTrabajo de introduc computa
Trabajo de introduc computa
 
Trabajo de introduc computa
Trabajo de introduc computaTrabajo de introduc computa
Trabajo de introduc computa
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
Assembler apesteguia (1)
Assembler apesteguia (1)Assembler apesteguia (1)
Assembler apesteguia (1)
 
Michael guti
Michael gutiMichael guti
Michael guti
 
2. DESARROLLO DE SOFTWARE.pptx
2. DESARROLLO DE SOFTWARE.pptx2. DESARROLLO DE SOFTWARE.pptx
2. DESARROLLO DE SOFTWARE.pptx
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Mipag web
Mipag webMipag web
Mipag web
 
lenguaje de Programacion
lenguaje de Programacionlenguaje de Programacion
lenguaje de Programacion
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 

Último

investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosJhonJairoRodriguezCe
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 

Último (10)

investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 

Lenguaje Ensamblador

  • 1.
  • 5. SERGIO JESUS CHAVEZ VILLALOBOS.1
  • 6. Agenda La siguiente presentación describirá las principales características, estructura , sintaxis básicas del lenguaje ensamblador para proporcionar una noción teórica de las capacidades del lenguaje. 2
  • 7. Introduccion El ordenador solo entiende el lenguaje de código binario o código maquina ,solo utiliza 0 y 1 para de codificar cualquier acción . 3
  • 8. Lenguaje de bajonivel Son lenguajes totalmente dependientes de la maquina . Dentro de este grupo se encuentra el lenguaje ensamblador. 4
  • 9. Lenguaje Ensamblador Derivado del lenguaje maquina , formado por abreviaturas de letras y números llamadas mnemotécnicos . 5
  • 10.
  • 11. Los lenguajes ensambladores tienen acceso a todas las características e instrucciones disponibles en la maquina.
  • 12. En resumen todo lo que puede hacerse en lenguaje maquina puede hacerse en lenguaje ensamblador.6
  • 13. Importancia El lenguaje ensamblador es importante por que el es considerado de primera generación a partir de el se derivaron todos los demás lenguajes hasta llegar a los de alto nivel. 7
  • 14.
  • 15. La computadora no entiende directamente al Lenguaje Ensamblador; es necesario traducirle a Lenguaje de Máquina.
  • 16. Se utilizan traductores que convierten el código fuente (en Lenguaje Ensamblador) a código objeto.
  • 17. El usar los traductores de codigo son con el fin de facilitar la programacion y tener el control del harware.8
  • 18. Ventajas y desventajas del Lenguaje Ensamblador vs lenguaje de alto nivel Lenguaje de alto nivel. Tiempo de programación 2. Programas fuente grandes 3. Peligro de afectar recursos inesperadamente. 4. Falta de portabilidad   Lenguaje Ensamblador. Velocidad 2. Eficiencia de tamaño. 3. Flexibilidad 9
  • 19.
  • 20. Un intérprete es siempre más lento que realizar la misma acción en Lenguaje Ensamblador.
  • 21. Los compiladores son mucho más rápidos que los intérpretes, pues hacen la traducción una vez y dejan el código objeto.
  • 22. Mayor parte de las veces, el código generado por un compilador es menos eficiente que el código equivalente que un programador escribiría.10
  • 23. Tamaño Existen programas donde el uso de las memoria es critico para esos casos es eficiente el lenguaje ensamblador por la mínima cantidad de recursos de los que dispone 11
  • 24.
  • 25. En cambio, en ensamblador es sumamente sencillo, pues tenemos el acceso directo al hardware del monitor.12
  • 26. Tiempo de programación Requiere más instrucciones para realizar el mismo proceso. Por otro lado, requiere de más cuidado por parte del programador 13
  • 27. Programa fuentes grandes Crecen los programas fuentes; simplemente, requerimos más instrucciones primitivas para describir procesos equivalentes. Esto es una desventaja porque dificulta el mantenimiento de los programas, y nuevamente reduce la productividad de los programadores. 14
  • 28. Peligro de afectar recursos El problema es que todo error que podamos cometer, o todo riesgo que podamos tener, podemos tenerlo también en este Lenguaje. Dicho de otra forma, tener mucho poder es útil pero también es peligroso. 15
  • 29. 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 codificar en una máquina y luego llevar los programas a otros SO. 16
  • 30. Estructura de un programa model small Stack 100h Data Code {Cuerpo del programa} end. 17
  • 31. Instrucciones en ensamblador Mov.-mueve el valor de un registro o un numero hacia otro registro ejmplomov Bx,5 , movAX,bx. add.-Sumar el valor de un registro a otro registro ADD BX,5 sub.-Rest el valor de un registro o valor especifico a un registro sub cx,2 inc incrementa en 1 el valor del registro incbx dec.-Decrementa en 1 el valor del registodecbx 18
  • 32. Brincos Brincos condicionales JG=si es mayor JB=SI ES MENOR JE=SI ES IGUAL JGE=si es mayor o igual JBE=si es menor o igual Brinco incondicional Jmp Etiqueta: Brinca a cualquier etiqueta asignada Formato de etiquetas Nombre de etiquetas: { instrucciones} 19
  • 33. Registros Los registros del procesador se emplean para controlar instrucciones en ejecución, manejar direccionamiento de memoria y proporcionar capacidad aritmética. 20
  • 34. Registros de segmento Codifica la dirección de inicio de cada segmento y su dirección en un registro de segmento supone cuatro bits 0 a su derecha. Registro CS Registro DS Registro SS Registro ES Registro FS y GS 21
  • 35. Registro Apuntador Los registros apuntadores están asociados con el registro SS y permiten al procesador accesar datos en el segmento de pila los registros apuntadores son dos. El registro SP El registro BP 22
  • 36. Registros de propósitos generales son los caballos de batalla o las herramientas del sistema. Son los únicos en el sentido de que se puede direccionarlos como una palabra o como una parte de un byte. AX, BX, CX y DX 23
  • 37. Registro índice. Los registros SI y DI están disponibles para direccionamientos indexados y para sumas y restas. Que son la operaciones de punta. SI y DI 24
  • 38. Ejemplo#1Un programa que teniendo pendiente 3 valores nos diga cual es el mayor de ellos, el mayor que lo ponga en Dx 25
  • 39. Ejemplo#1 26 .modelsmall .stack 100h .data .code Mov AX Mov BX Mov BX Cmp AX,BX JG compA Cmp BX,CX Jmp Mover B X:mov DX,CX Jmp Fin fin :end. Compa:cmo AC,CX JG Mover A Jmp x MoverB:mov DX,BX Jmp fin Mover A: mov DX,AX Jmp fin
  • 40. El proceso de ensamblado El lenguaje interactúa directamente con los dispositivos de hardware y dispositivos lógicos como las memorias y el CPU Programa Compilar Lenguaje ensamblador Ensamble CPU 27
  • 41. Programación Hibrida La programación híbrida proporciona un mecanismo por medio del cual podemos aprovechar las ventajas del lenguaje ensamblador y los lenguajes de alto nivel, todo esto con el fin escribir programas más rápidos y eficientes. Bajo Nivel Alto Nivel 28
  • 42. Programa hibrido pascal y ensamblador Uses Crt; Var N1,N2,Res : integer; Begin Writeln(“Introduce un número: “); Readln(N1); Writeln(“Introduce un número: “); Readln(N2); Asm Mov AX,N1; Add AX,N2; MovRes,AX End; Writeln(“El resultado de la suma es: “,Res); Readln; End. 29
  • 43. Aplicaciones El uso del lenguaje ensamblador no es para la gente común y corriente, sino para profesionistas en el área de computación que están obligados a conocer este lenguaje, ya que proporciona una serie de características que no se pueden encontrar en los lenguajes de alto nivel. 30
  • 44. Aplicaciones Se puede acceder a cualquier localidad de la memoria RAM . Se pueden programar virus, debido a que se tiene un acceso total a casi todo el hardware de la computadora vía interrupciones de software Se pueden programar drivers de cualquier dispositivo. Programación de Microcontroloadores Creación de compiladores Se puede acceder directamente a los dispositivos de entrada y/o salida. 31
  • 45. Ramas en las que se aplica Sistemas Embebidos: impresoras, cámaras, autos, juguetes, etc. Industria y Manufactura: adquisición datos y control, eg robots. Transporte y Aeronaútica: barcos, aviones, sondas espaciales, etc. Graficación, Multimedia, Cine y Video Juegos Procesamiento de Señales, Voz e Imágenes Armamento y Defensa 32
  • 46. Conclusiones El lenguaje ensamblador a pesar de ser mas rápido de cualquier otro lenguaje es también el mas complejo por eso es utilizado para complementar los limitantes de los lenguajes de programación de alto nivel. 33
  • 47. Conclusiones Pero existen ramas donde es imprescindible el uso de lenguaje ensamblador como lo es la electrónica donde los recursos de los aparatos son limitados y es necesario utilizar lenguaje ensamblador 34
  • 48. Bibliografía *Avila, M. e. (s.f.). Principia. Recuperado el 20 de septiembre de 2009, de Lenguaje Ensamblador para Intel 808x/80x86: http://homepage.mac.com/eravila/asmix86.html *Monografias. Miriam Yazmín Mendoza CaamalHaumiSabeliPech Peraza (s.f.). Recuperado el 20 de septiembre de 2009, de Monografias Lenguaje ensamblador: http://www.monografias.com/trabajos14/lenguaje-ensamblad *Tanenbaum, A. Organizacion de computadoras un enfoque estructurado.Pentice Hall. *Wikipedia. (s.f.). Recuperado el 20 de septiembre de 2009, de Wikipedia Lenguaje Ensamblador: http://es.wikipedia.org/wiki/Lenguaje_ensamblador   35