SlideShare una empresa de Scribd logo
1 de 12
 es un idioma artificial diseñado para expresar
computaciones que pueden ser llevadas a cabo por
máquinas como las computadoras. Pueden usarse para
crear programas que controlen el comportamiento físico y
lógico de una máquina, para expresar algoritmos con
precisión, o como modo de comunicación humana.[1] Está
formado por un conjunto de símbolos y reglas sintácticas y
semánticas que definen su estructura y el significado de
sus elementos y expresiones. Al proceso por el cual se
escribe, se prueba, se depura, se compila y se mantiene
el código fuente de un programa informático se le llama
programación.
 A principios de la década de 1950, y con el fin
de facilitar la labor de los programadores, se
desarrollaron códigos nemotécnicos para las
operaciones y direcciones simbólicas. La
palabra nemotécnico se refiere a una ayuda
para la memorización. Uno de los primeros
pasos para mejorar el proceso de preparación
de programas fue sustituir los códigos de
operaciones numéricos del lenguaje de
máquina por símbolos alfabéticos, que son los
códigos nemotécnicos.
 Si la computadora era capaz de traducir
símbolos convenientes en operaciones básicas,
¿por qué no hacer también que realizara otras
funciones rutinarias de codificación, como la
asignación de direcciones de almacenamiento
a los datos? La técnica de direccionamiento
simbólico permite expresar una dirección no en
términos de su localización numérica absoluta,
sino en términos de símbolos convenientes
para el programador.
 Durante las primeras etapas del direccionamiento simbólico, el
programador asigna un nombre simbólico y una dirección real a
un dato. Por ejemplo, el programador podría asignar el valor
total de mercancía adquirida durante un mes por un cliente de
una tienda de departamentos a la dirección 0063, y darle el
nombre simbólico TOTAL. Se podría asignar el valor de la
mercancía devuelta sin usar durante el mes a la dirección 2047
y dársele el nombre simbólico CRÉDITO. Así, durante el resto
del programa, el programador se referirá a los nombres
simbólicos, más que a las direcciones, cuando fuera preciso
procesar estos datos. Por ejemplo, se podría escribir la
instrucción "S CRÉDITO TOTAL" para restar el valor de las
mercancías devueltas del importa total de compras para
obtener el importe de la factura mensual del cliente. A
continuación, el programa ensamblador traduciría la instrucción
simbólica a esta cadena de bits.
 Se dejó a la computadora la tarea de asignar y recordar
las direcciones de las instrucciones. Lo único que tenía
que hacer el programador era indicar a la computadora la
dirección de la primera instrucción, y el programa
ensamblador se encargaba de almacenar, de manera
automática, todas las demás en forma secuencial a partir
de ese punto. Así, si se agregaba más tarde otra
instrucción al programa, no era necesario modificar las
direcciones de todas las instrucciones que seguían al
punto de inserción (como tendría que hacerse en el caso
de programas escritos en lenguaje de máquina). En vez
de ello, el procesador ajustaba automáticamente las
localidades de memoria la próxima vez que se ejecutaba
el programa.
 En la actualidad, los programadores no
asignan números de dirección reales a los
datos simbólicos, simplemente especifican
dónde quieren que se coloque la primera
localidad del programa, y el programa
ensamblador se encarga de lo demás:
asigna localidades tanto para las
instrucciones como para los datos.
 En la actualidad, los programadores no
asignan números de dirección reales a los
datos simbólicos, simplemente especifican
dónde quieren que se coloque la primera
localidad del programa, y el programa
ensamblador se encarga de lo demás:
asigna localidades tanto para las
instrucciones como para los datos.
 Los lenguajes ensambladores tienen ventajas sobre los
lenguajes de máquina. Ahorran tiempo y requieren menos
atención a detalles. Se incurren en menos errores y los
que se cometen son más fáciles de localizar. Además, los
programas en lenguaje ensamblador son más fáciles de
modificar que los programas en lenguaje de máquina.
Pero existen limitaciones. La codificación en lenguaje
ensamblador es todavía un proceso lento. Una desventaja
importante de estos lenguajes es que tienen una
orientación a la máquina. Es decir, están diseñados para
la marca y modelo específico de procesador que se utiliza,
y es probable que, para una máquina diferente, se tengan
que volver a codificar los programas
 El código escrito en lenguaje Assembly 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.
 El lenguaje Assembly es difícilmente portable, es decir, un código escrito para
un microprocesador, suele necesitar ser modificado, muchas veces en su
totalidad para poder ser usado en otra máquina distinta, aun con el mismo
microprocesador.
 Los programas hechos en lenguaje Assembly son generalmente más rápidos y
consumen menos recursos del sistema (memoria RAM y ROM). Al programar
cuidadosamente en lenguaje Assembly se pueden crear programas que se
ejecutan más rápidamente y ocupan menos espacio que con lenguajes de alto
nivel.
 Con el lenguaje Assembly 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.
 También se puede controlar el tiempo en que tarda una rutina en ejecutarse, e
impedir que se interrumpa durante su ejecución.
 . El código máquina, o lenguaje de máquina, está formado por instrucciones sencillas, que -dependiendo de la
estructura del procesador- pueden especificar:
 Registros específicos para operaciones aritméticas, direccionamiento o control de funciones.
 Posiciones de memoria específicas (offset).
 Modos de direccionamiento usados para interpretar operandos.
 Las operaciones más complejas se realizan combinando estas instrucciones sencillas, que pueden ser
ejecutadas secuencialmente o mediante instrucciones de control de flujo.
 Las operaciones disponibles en la mayoría de los conjuntos de instrucciones incluye:
 mover
› llenar un registro con un valor constante
› mover datos de una posición de memoria a un registro o viceversa
› escribir y leer datos de dispositivos
 computar
› sumar, restar, multiplicar o dividir los valores de dos registros, colocando el resultado en uno de ellos o en otro registro
› realizar operaciones binarias, incluyendo operaciones lógicas (AND/OR/XOR/NOT)
› comparar valores entre registros (mayor, menor, igual)
 afectar el flujo del programa
› saltar a otra posición en el programa y ejecutar instrucciones allí
› saltar si se cumplen ciertas condiciones (IF)
› saltar a otra posición, pero guardar el punto de salida para retornar (CALL, llamada a subrutinas)
 Algunas computadoras incluyen instrucciones complejas dentro de sus capacidades. Una sola instrucción
compleja hace lo mismo que en otras computadoras puede requerir una larga serie de instrucciones, por
ejemplo:
 salvar varios registros en la pila de una sola vez
 mover grandes bloques de memoria
 operaciones aritméticas complejas o de punto flotante (seno, coseno, raíz cuadrada)
 Mientras que una computadora reconoce la instrucción de máquina IA-32
FIN

Más contenido relacionado

La actualidad más candente

Programación de computadores
Programación de computadoresProgramación de computadores
Programación de computadores
947369
 
Programa informático
Programa informáticoPrograma informático
Programa informático
tomorrowland
 
Introducccion programacion
Introducccion programacionIntroducccion programacion
Introducccion programacion
AnaisMar22
 
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
joel210696
 
Fundamentos de Programación: Definiciones y terminologia basica de programación
Fundamentos de Programación: Definiciones y terminologia basica de programaciónFundamentos de Programación: Definiciones y terminologia basica de programación
Fundamentos de Programación: Definiciones y terminologia basica de programación
Roberto Hernandez
 

La actualidad más candente (20)

Conceptos Basicos Programacion
Conceptos Basicos ProgramacionConceptos Basicos Programacion
Conceptos Basicos Programacion
 
Programación de computadores
Programación de computadoresProgramación de computadores
Programación de computadores
 
Concepto de programacion
Concepto de programacionConcepto de programacion
Concepto de programacion
 
Nana
NanaNana
Nana
 
Programa informático
Programa informáticoPrograma informático
Programa informático
 
Lenguajes de desarrollo (programación)
Lenguajes de desarrollo (programación)Lenguajes de desarrollo (programación)
Lenguajes de desarrollo (programación)
 
Introducción a la Programación :: Unidad 01 :: Parte 01
Introducción a la Programación :: Unidad 01 :: Parte 01Introducción a la Programación :: Unidad 01 :: Parte 01
Introducción a la Programación :: Unidad 01 :: Parte 01
 
Principios basicos de la programacion (pc)
Principios basicos de la programacion (pc)   Principios basicos de la programacion (pc)
Principios basicos de la programacion (pc)
 
Introduccion a la programación
Introduccion a la programaciónIntroduccion a la programación
Introduccion a la programación
 
Introducción a la programación de computadores
Introducción  a la programación de computadoresIntroducción  a la programación de computadores
Introducción a la programación de computadores
 
LENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACIONLENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACION
 
Danelly
DanellyDanelly
Danelly
 
Introducccion programacion
Introducccion programacionIntroducccion programacion
Introducccion programacion
 
Lenguajes de programación: Paradigmas de Programación
Lenguajes de programación: Paradigmas de ProgramaciónLenguajes de programación: Paradigmas de Programación
Lenguajes de programación: Paradigmas de Programación
 
C:\Documents And Settings\Alumnos\Escritorio\Programaion1
C:\Documents And Settings\Alumnos\Escritorio\Programaion1C:\Documents And Settings\Alumnos\Escritorio\Programaion1
C:\Documents And Settings\Alumnos\Escritorio\Programaion1
 
Generacionlenguajes
GeneracionlenguajesGeneracionlenguajes
Generacionlenguajes
 
Fundamentos de Programación
Fundamentos de ProgramaciónFundamentos de Programación
Fundamentos de Programación
 
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
 
Lenguaje de programación
Lenguaje de programación Lenguaje de programación
Lenguaje de programación
 
Fundamentos de Programación: Definiciones y terminologia basica de programación
Fundamentos de Programación: Definiciones y terminologia basica de programaciónFundamentos de Programación: Definiciones y terminologia basica de programación
Fundamentos de Programación: Definiciones y terminologia basica de programación
 

Similar a Trabajo lenguajes de programacion

Visual basic terminado[1]
Visual basic terminado[1]Visual basic terminado[1]
Visual basic terminado[1]
Jalil Segura
 
Visual basic terminado[1]
Visual basic terminado[1]Visual basic terminado[1]
Visual basic terminado[1]
Jalil Segura
 
Clasificacion de los
Clasificacion de losClasificacion de los
Clasificacion de los
Jose Mendez
 
Lenguaje de programacion sgs.ppt
Lenguaje de programacion sgs.pptLenguaje de programacion sgs.ppt
Lenguaje de programacion sgs.ppt
Sergio Sorelas
 
Introduccion a los lenguajes de programacion
Introduccion a los lenguajes de programacionIntroduccion a los lenguajes de programacion
Introduccion a los lenguajes de programacion
lupitagarcia07
 
Lenguaje Ensamblador00
Lenguaje Ensamblador00Lenguaje Ensamblador00
Lenguaje Ensamblador00
Car_00_01
 

Similar a Trabajo lenguajes de programacion (20)

CONSULTA
CONSULTACONSULTA
CONSULTA
 
Consulta
ConsultaConsulta
Consulta
 
Powerpoint jimpulgar
Powerpoint jimpulgarPowerpoint jimpulgar
Powerpoint jimpulgar
 
Visual basic terminado[1]
Visual basic terminado[1]Visual basic terminado[1]
Visual basic terminado[1]
 
Visual basic terminado[1]
Visual basic terminado[1]Visual basic terminado[1]
Visual basic terminado[1]
 
26 agosto
26 agosto26 agosto
26 agosto
 
Clasificacion de los lenguajes abel
Clasificacion de los lenguajes abelClasificacion de los lenguajes abel
Clasificacion de los lenguajes abel
 
Software
SoftwareSoftware
Software
 
Compilador e interpretador
Compilador e interpretadorCompilador e interpretador
Compilador e interpretador
 
Clasificacion de los
Clasificacion de losClasificacion de los
Clasificacion de los
 
Lenguaje de programacion sgs.ppt
Lenguaje de programacion sgs.pptLenguaje de programacion sgs.ppt
Lenguaje de programacion sgs.ppt
 
Mipag web
Mipag webMipag web
Mipag web
 
Diapositivas Sobre Hadware y Software Sistema Operativo 1
Diapositivas Sobre Hadware y Software Sistema Operativo 1Diapositivas Sobre Hadware y Software Sistema Operativo 1
Diapositivas Sobre Hadware y Software Sistema Operativo 1
 
Introduccion a los lenguajes de programacion
Introduccion a los lenguajes de programacionIntroduccion a los lenguajes de programacion
Introduccion a los lenguajes de programacion
 
Evolución de la programación
Evolución de la programaciónEvolución de la programación
Evolución de la programación
 
Assembler apesteguia (1)
Assembler apesteguia (1)Assembler apesteguia (1)
Assembler apesteguia (1)
 
Programación Y Simulación De Robot SCARA, documento
Programación Y Simulación De Robot SCARA, documentoProgramación Y Simulación De Robot SCARA, documento
Programación Y Simulación De Robot SCARA, documento
 
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 Ensamblador00
Lenguaje Ensamblador00Lenguaje Ensamblador00
Lenguaje Ensamblador00
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 

Último

Tema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptxTema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptx
Noe Castillo
 

Último (20)

Comunidades Virtuales de Aprendizaje Caracteristicas.pptx
Comunidades Virtuales de Aprendizaje Caracteristicas.pptxComunidades Virtuales de Aprendizaje Caracteristicas.pptx
Comunidades Virtuales de Aprendizaje Caracteristicas.pptx
 
TERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docx
TERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docxTERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docx
TERCER GRADO PROGRAMACION ANUAL CCSS 3° - 2024.docx
 
IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...
IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...
IMPLICACIONES BIOÉTICAS ANTE EL TRANSHUMANISMO A PARTIR DEL PENSAMIENTO FILOS...
 
11.NEOLIBERALISMO: que es, ventajas, desventajas, consecuenciaspptx
11.NEOLIBERALISMO: que es, ventajas, desventajas, consecuenciaspptx11.NEOLIBERALISMO: que es, ventajas, desventajas, consecuenciaspptx
11.NEOLIBERALISMO: que es, ventajas, desventajas, consecuenciaspptx
 
Lec. 08 Esc. Sab. Luz desde el santuario
Lec. 08 Esc. Sab. Luz desde el santuarioLec. 08 Esc. Sab. Luz desde el santuario
Lec. 08 Esc. Sab. Luz desde el santuario
 
📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...
📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...
📝 Semana 09 - Tema 01: Tarea - Aplicación del resumen como estrategia de fuen...
 
ACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLA
ACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLAACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLA
ACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLA
 
ACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLA
ACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLAACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLA
ACERTIJO SOPA DE LETRAS OLÍMPICA. Por JAVIER SOLIS NOYOLA
 
Power Point: Luz desde el santuario.pptx
Power Point: Luz desde el santuario.pptxPower Point: Luz desde el santuario.pptx
Power Point: Luz desde el santuario.pptx
 
Diagnostico del corregimiento de Junin del municipio de Barbacoas
Diagnostico del corregimiento de Junin del municipio de BarbacoasDiagnostico del corregimiento de Junin del municipio de Barbacoas
Diagnostico del corregimiento de Junin del municipio de Barbacoas
 
Tema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptxTema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptx
 
LA GEOMETRÍA Y LOS SISTEMAS ANGULARES, APRENDER LEYENDO LA BIBLIA
LA GEOMETRÍA Y LOS SISTEMAS ANGULARES, APRENDER LEYENDO LA BIBLIALA GEOMETRÍA Y LOS SISTEMAS ANGULARES, APRENDER LEYENDO LA BIBLIA
LA GEOMETRÍA Y LOS SISTEMAS ANGULARES, APRENDER LEYENDO LA BIBLIA
 
2. Entornos Virtuales de Aprendizaje.pptx
2. Entornos Virtuales de Aprendizaje.pptx2. Entornos Virtuales de Aprendizaje.pptx
2. Entornos Virtuales de Aprendizaje.pptx
 
Cerebelo Anatomía y fisiología Clase presencial
Cerebelo Anatomía y fisiología Clase presencialCerebelo Anatomía y fisiología Clase presencial
Cerebelo Anatomía y fisiología Clase presencial
 
5º PARTE 3 SOY LECTOR -MD EDUCATIVO_240418_155445 (1).pdf
5º PARTE 3 SOY LECTOR -MD EDUCATIVO_240418_155445 (1).pdf5º PARTE 3 SOY LECTOR -MD EDUCATIVO_240418_155445 (1).pdf
5º PARTE 3 SOY LECTOR -MD EDUCATIVO_240418_155445 (1).pdf
 
Revista Faro Normalista 6, 18 de mayo 2024
Revista Faro Normalista 6, 18 de mayo 2024Revista Faro Normalista 6, 18 de mayo 2024
Revista Faro Normalista 6, 18 de mayo 2024
 
Resumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos Escolares
Resumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos EscolaresResumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos Escolares
Resumen Acuerdo 05 04 24.pdf por el que se rigen los Consejos Técnicos Escolares
 
TRABAJO CON TRES O MAS FRACCIONES PARA NIÑOS
TRABAJO CON TRES O MAS FRACCIONES PARA NIÑOSTRABAJO CON TRES O MAS FRACCIONES PARA NIÑOS
TRABAJO CON TRES O MAS FRACCIONES PARA NIÑOS
 
ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)
ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)
ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)
 
BIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATR
BIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATRBIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATR
BIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATR
 

Trabajo lenguajes de programacion

  • 1.
  • 2.  es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana.[1] Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación.
  • 3.  A principios de la década de 1950, y con el fin de facilitar la labor de los programadores, se desarrollaron códigos nemotécnicos para las operaciones y direcciones simbólicas. La palabra nemotécnico se refiere a una ayuda para la memorización. Uno de los primeros pasos para mejorar el proceso de preparación de programas fue sustituir los códigos de operaciones numéricos del lenguaje de máquina por símbolos alfabéticos, que son los códigos nemotécnicos.
  • 4.  Si la computadora era capaz de traducir símbolos convenientes en operaciones básicas, ¿por qué no hacer también que realizara otras funciones rutinarias de codificación, como la asignación de direcciones de almacenamiento a los datos? La técnica de direccionamiento simbólico permite expresar una dirección no en términos de su localización numérica absoluta, sino en términos de símbolos convenientes para el programador.
  • 5.  Durante las primeras etapas del direccionamiento simbólico, el programador asigna un nombre simbólico y una dirección real a un dato. Por ejemplo, el programador podría asignar el valor total de mercancía adquirida durante un mes por un cliente de una tienda de departamentos a la dirección 0063, y darle el nombre simbólico TOTAL. Se podría asignar el valor de la mercancía devuelta sin usar durante el mes a la dirección 2047 y dársele el nombre simbólico CRÉDITO. Así, durante el resto del programa, el programador se referirá a los nombres simbólicos, más que a las direcciones, cuando fuera preciso procesar estos datos. Por ejemplo, se podría escribir la instrucción "S CRÉDITO TOTAL" para restar el valor de las mercancías devueltas del importa total de compras para obtener el importe de la factura mensual del cliente. A continuación, el programa ensamblador traduciría la instrucción simbólica a esta cadena de bits.
  • 6.  Se dejó a la computadora la tarea de asignar y recordar las direcciones de las instrucciones. Lo único que tenía que hacer el programador era indicar a la computadora la dirección de la primera instrucción, y el programa ensamblador se encargaba de almacenar, de manera automática, todas las demás en forma secuencial a partir de ese punto. Así, si se agregaba más tarde otra instrucción al programa, no era necesario modificar las direcciones de todas las instrucciones que seguían al punto de inserción (como tendría que hacerse en el caso de programas escritos en lenguaje de máquina). En vez de ello, el procesador ajustaba automáticamente las localidades de memoria la próxima vez que se ejecutaba el programa.
  • 7.  En la actualidad, los programadores no asignan números de dirección reales a los datos simbólicos, simplemente especifican dónde quieren que se coloque la primera localidad del programa, y el programa ensamblador se encarga de lo demás: asigna localidades tanto para las instrucciones como para los datos.
  • 8.  En la actualidad, los programadores no asignan números de dirección reales a los datos simbólicos, simplemente especifican dónde quieren que se coloque la primera localidad del programa, y el programa ensamblador se encarga de lo demás: asigna localidades tanto para las instrucciones como para los datos.
  • 9.  Los lenguajes ensambladores tienen ventajas sobre los lenguajes de máquina. Ahorran tiempo y requieren menos atención a detalles. Se incurren en menos errores y los que se cometen son más fáciles de localizar. Además, los programas en lenguaje ensamblador son más fáciles de modificar que los programas en lenguaje de máquina. Pero existen limitaciones. La codificación en lenguaje ensamblador es todavía un proceso lento. Una desventaja importante de estos lenguajes es que tienen una orientación a la máquina. Es decir, están diseñados para la marca y modelo específico de procesador que se utiliza, y es probable que, para una máquina diferente, se tengan que volver a codificar los programas
  • 10.  El código escrito en lenguaje Assembly 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.  El lenguaje Assembly es difícilmente portable, es decir, un código escrito para un microprocesador, suele necesitar ser modificado, muchas veces en su totalidad para poder ser usado en otra máquina distinta, aun con el mismo microprocesador.  Los programas hechos en lenguaje Assembly son generalmente más rápidos y consumen menos recursos del sistema (memoria RAM y ROM). Al programar cuidadosamente en lenguaje Assembly se pueden crear programas que se ejecutan más rápidamente y ocupan menos espacio que con lenguajes de alto nivel.  Con el lenguaje Assembly 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.  También se puede controlar el tiempo en que tarda una rutina en ejecutarse, e impedir que se interrumpa durante su ejecución.
  • 11.  . El código máquina, o lenguaje de máquina, está formado por instrucciones sencillas, que -dependiendo de la estructura del procesador- pueden especificar:  Registros específicos para operaciones aritméticas, direccionamiento o control de funciones.  Posiciones de memoria específicas (offset).  Modos de direccionamiento usados para interpretar operandos.  Las operaciones más complejas se realizan combinando estas instrucciones sencillas, que pueden ser ejecutadas secuencialmente o mediante instrucciones de control de flujo.  Las operaciones disponibles en la mayoría de los conjuntos de instrucciones incluye:  mover › llenar un registro con un valor constante › mover datos de una posición de memoria a un registro o viceversa › escribir y leer datos de dispositivos  computar › sumar, restar, multiplicar o dividir los valores de dos registros, colocando el resultado en uno de ellos o en otro registro › realizar operaciones binarias, incluyendo operaciones lógicas (AND/OR/XOR/NOT) › comparar valores entre registros (mayor, menor, igual)  afectar el flujo del programa › saltar a otra posición en el programa y ejecutar instrucciones allí › saltar si se cumplen ciertas condiciones (IF) › saltar a otra posición, pero guardar el punto de salida para retornar (CALL, llamada a subrutinas)  Algunas computadoras incluyen instrucciones complejas dentro de sus capacidades. Una sola instrucción compleja hace lo mismo que en otras computadoras puede requerir una larga serie de instrucciones, por ejemplo:  salvar varios registros en la pila de una sola vez  mover grandes bloques de memoria  operaciones aritméticas complejas o de punto flotante (seno, coseno, raíz cuadrada)  Mientras que una computadora reconoce la instrucción de máquina IA-32
  • 12. FIN