Ассемблер высокого уровня

редактировать

Ассемблеры высокого уровня в вычислениях - это ассемблеры для языка ассемблера, которые включают функции, найденные в языки программирования высокого уровня.

Первым высокоуровневым ассемблером, вероятно, был Burroughs ESPOL примерно в 1960 году, который обеспечивал похожий на АЛГОЛ синтаксис вокруг явно заданной машины B5000. инструкции. За ним последовал Никлаус Вирт PL360 в 1968 году; это имитировало средства Берроуза, с которыми он был знаком, на IBM System / 360. Более поздние ассемблеры высокого уровня - это Borland TASM, NASM, Microsoft MASM, IBM HLASM (для систем z / Architecture ), Alessandro Ghignola Linoleum и Ziron.

Ассемблеры высокого уровня обычно предоставляют инструкции, которые напрямую ассемблировать один к одному в машинный код низкого уровня , как в любом ассемблере, плюс управляющие операторы, такие как IF, WHILE, REPEAT... UNTIL и FOR, макросы и другие улучшения. Это позволяет использовать абстракции операторов управления высокого уровня там, где максимальная скорость или минимальное пространство не важны; операторы низкого уровня, которые ассемблируются непосредственно в машинный код, могут использоваться для создания самого быстрого или самого короткого кода. Конечным результатом является сборка исходного кода, который гораздо более читабелен, чем стандартный код сборки, при сохранении эффективности, присущей использованию языка ассемблера.

Ассемблеры высокого уровня обычно предоставляют средства сокрытия информации и возможность вызывать функции и процедуры с использованием синтаксиса, аналогичного высокоуровневому (т. Е. Ассемблер автоматически создает код для передачи параметров в стек вместо того, чтобы программист вручную писал код для этого).

Ассемблеры высокого уровня также предоставляют абстракции данных, обычно присутствующие в языках высокого уровня. Примеры включают структуры, объединения, классы и наборы. Некоторые ассемблеры высокого уровня (например, TASM и HLA ) поддерживают объектно-ориентированное программирование.

Ссылки

Последняя правка сделана 2021-05-23 11:27:38
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте