El uso de cualquier lenguaje de programación es transformar un equipo desde un pisapapeles electrónico costoso en un procesamiento de datos útiles y dispositivos de almacenamiento . La elección de un lenguaje para realizar esta tarea es un trade-off entre eficiencia y facilidad de uso. El lenguaje de máquina representa los extremos del espectro para ambos de estos factores . Machine Language
lenguaje de máquina produce el único conjunto de instrucciones que un ordenador pueda entender sin traductor . Computadoras logran realizar la reproducción de audio y vídeo , el procesamiento y el almacenamiento de datos, la comunicación por Internet y todas las demás tareas especializadas , respondiendo a un conjunto de instrucciones que sólo reconoce unos y ceros . Escribir cientos de líneas de código que consta de unos y ceros es un proceso exigente y tedioso que da cuenta de la popularidad de los lenguajes de alto nivel como C y Java .
Primeros Ventajas
El primer ordenador personal IBM estaba equipado con 512 kilobytes de memoria RAM y una unidad de disquete de 360 kilobytes . Después de que el sistema operativo se carga en la memoria de la unidad de disquete , programas se cargan en el espacio de memoria restante dejando un área muy pequeña de memoria RAM , a menudo menos de 100 kilobytes , para el programa activo para datos de proceso . Durante este período , la principal preocupación de un programador era delgado , código eficiente . Las herramientas de programación de elección en estos primeros ordenadores eran por lo general lenguaje de máquina , que puede ser considerablemente más pequeña que una versión escrita en BASIC o C. También fue algo más fácil de usar descendiente , el lenguaje ensamblador .
Plataforma Dependencia
lenguaje de máquina aborda el hardware de la computadora directamente , dándole el control completo programador sobre todos los aspectos de la ejecución de un programa. La desventaja de este enfoque es que el programador debe conocer la arquitectura de cada conjunto de chips antes de que pueda escribir código eficaz . Cuando se cambia un componente, como una tarjeta de vídeo o el controlador de la unidad , por ejemplo , el código de lenguaje de máquina se debe actualizar para reconocer y abordar el nuevo dispositivo.
Alto nivel Idiomas
< br >
la velocidad y las pequeñas ventajas de la huella de memoria de lenguaje de máquina cada vez se ven compensados por la dificultad de escribir las instrucciones a nivel de chip en código binario. Gigabytes de RAM y terabytes de almacenamiento disponible han eliminado el requisito de magro, código eficiente en las modernas computadoras personales . La memoria adicional y demandas de almacenamiento realizadas por los programas escritos en lenguajes de alto nivel como C y Java ya no son un factor en la elección de una plataforma de desarrollo. Facilidad de uso y futuros problemas de mantenimiento del programa toma el lugar de la velocidad y la eficiencia en la mayoría de los proyectos de software moderno .