Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidad 1 - 3 Lenguajes de Programación, Clasificación, Historia, Fases de La Construcción PDF
Unidad 1 - 3 Lenguajes de Programación, Clasificación, Historia, Fases de La Construcción PDF
Lenguaje máquina
El lenguaje máquina (también llamado lenguaje de primera generación) (el alfabeto
binario) es el único que entiende la computadora. Fue el primer lenguaje utilizado en la
programación de computadoras. Ejemplo, en el recuadro izquierdo:
Lenguaje ensamblador
El lenguaje ensamblador4, (considerado lenguaje de segunda generación) fue el primer
intento de sustituir el lenguaje máquina, por otro más aproximado al utilizado por las personas.
En este lenguaje cada instrucción del lenguaje de máquina es representada por un mnemónico
(o abreviación mnemotécnica, ej. CMP por compare) en lugar de cadenas de bits. A
continuación, se muestra un ejemplo de un trozo fuente en macroensamblador, que realiza 10
loops:
MOV BX, 00h ; Inicializa BX en 0
MOV DX, 0Ah ; Asigna el valor 10 (0Ah) a DX
INICIO: ADD BX, 01h ; Suma 1 a BX
CMP DX, BX ; compara AX y BX, Actualiza la ZF
JE FIN ; salta FIN si DX=BX, IDEM JZ mismo opcode, Si ZF=0
JMP INICIO ; salto incondicional a INICIO
FIN: MOV AX, 4C00h ; Sevicio 4C -> Terminar con código de retorno
INT 21h ; Llamada a servicio DOS
¿Qué pasa una vez que es ensamblado, enlazado y cargado en memoria para ser ejecutado?
OPCODE
CS:IP ASM
en Hexadec.
0722:0000 MOV BX,0000 BB0000
0722:0003 MOV DX,000A BA0A00
0722:0006 ADD BX,01 83C301
0722:0009 CMP DX,BX 3BD3
0722:000B JE 0Fh 7402
0722:000D JMP 06h EBF7
0722:000F MOV AX,4C00 B8004C
0722:0012 INT 021h CD21
20 bytes
Hace 10 bucles y termina el programa
El programa ejecutable generado a partir del lenguaje ensamblador, tiene como ventaja la mayor
performance logrado por su bajo requerimiento de memoria y el menor tiempo de ejecución, en
comparación con los resultados de aplicaciones similares programadas en lenguajes de alto
nivel.
4
Al programa que traduce el lenguaje ensamblador al lenguaje de máquina, también se le llama
“Ensamblador”, es decir, tiene el mismo nombre del lenguaje.
Intérpretes y Compiladores
Hay dos tipos principales de traductores de lenguaje fuente a lenguaje de máquina:
Código Fuente
enriquecido con directivas
del preprocesador .C o .CPP
.H o .C
Código Fuente
Preprocesador a incluir
(Cabeceras)
Código Fuente
C
Puro
Compilador
Código de máquina
relocalizable
Módulo
Objeto
.OBJ .LIB
Otros Librerías de
Módulos Objeto Enlazador Módulos
necesarios Objeto
Programa
Ejecutable
.EXE
PP 4 04 120
PL 3 04 120