stringtranslate.com

Ensamblador de alto nivel

Un ensamblador de alto nivel en informática es un ensamblador para lenguaje ensamblador que incorpora características que se encuentran en un lenguaje de programación de alto nivel .

El primer ensamblador de alto nivel fue probablemente el lenguaje orientado a problemas de sistemas ejecutivos (ESPOL) de Burroughs, de alrededor de 1960, que proporcionaba una sintaxis similar a ALGOL en torno a instrucciones de máquina explícitamente especificadas de Burroughs B5000 . [ disputadodiscutir ] A este le siguió el PL360 de Niklaus Wirth en 1968; este replicaba las funciones de Burroughs, con las que estaba familiarizado, en un IBM System/360 . Los ensambladores de alto nivel más recientes son Turbo Assembler (TASM) de Borland , Netwide Assembler (NASM), Macro Assembler (MASM) de Microsoft , High Level Assembler (HLASM) de IBM para sistemas z/Architecture , Linoleum de Alessandro Ghignola, X# utilizado en Cosmos y Ziron. [ cita requerida ]

Los ensambladores de alto nivel suelen proporcionar instrucciones que se ensamblan directamente uno a uno en código de máquina de bajo nivel como en cualquier ensamblador, además de instrucciones de control como IF, WHILE, REPEAT...UNTIL y FOR, macros y otras mejoras. Esto permite el uso de abstracciones de instrucciones de control de alto nivel donde la velocidad máxima o el espacio mínimo no sean esenciales; las instrucciones de bajo nivel que se ensamblan directamente en código de máquina se pueden utilizar para producir el código más rápido o más corto. El resultado final es un código fuente ensamblador que es mucho más legible que el código ensamblador estándar, al tiempo que conserva la eficiencia inherente al uso del lenguaje ensamblador.

Los ensambladores de alto nivel generalmente proporcionan facilidades para ocultar información y la capacidad de llamar a funciones y procedimientos utilizando una sintaxis similar a la de alto nivel (es decir, el ensamblador produce automáticamente código para insertar parámetros en la pila de llamadas en lugar de que el programador tenga que escribir manualmente el código para hacerlo).

Los ensambladores de alto nivel también proporcionan abstracciones de datos que normalmente se encuentran en lenguajes de alto nivel. Algunos ejemplos incluyen: estructuras de datos , uniones , clases y conjuntos . Algunos ensambladores de alto nivel (por ejemplo, TASM y High Level Assembly (HLA)) admiten programación orientada a objetos .

Referencias