Макроассемблер


Макроассемблер

Ассе́мблер (от англ. assembler — рабочий-сборщик) — компьютерная программа, компилятор исходного текста программы написанной на языке ассемблера, в программу на машинном коде.

Как и сам язык (ассемблера), ассемблеры, как правило, специфичны конкретной архитектуре, операционной системе и варианту синтаксиса языка. Вместе с тем существуют, мультиплатформенные или вовсе универсальные (точнее, ограниченно-универсальные, потому что на языке низкого уровня нельзя написать аппаратно-независимые программы) ассемблеры, которые могут работать на разных платформах и операционных системах. Среди последних можно также выделить группу кросс-ассемблеров, способных собирать машинный код и исполняемые модули (файлы) для других архитектур и ОС.

Ассемблирование может быть не первым и не последним этапом на пути получения исполняемого модуля программы. Так многие компиляторы с языков программирования высокого уровня выдают результат в виде программы на языке ассемблера, которую в дальнейшем обрабатывает ассемблер. Так же, результатом ассемблирования может быть не исполняемый, а объектный модуль, содержащий разрозненные и непривязанные друг к другу кусочки машинного кода и данных программы, из которого (или из нескольких объектных модулей) в дальнейшем может быть скомпонован исполняемый модуль, с помощью программы-компоновщика (или «линкера»).

Содержание

Архитектура x86

Ассемблеры для TASM), Microsoft Macro Assembler (MASM), и Watcom Assembler (WASM). Также в своё время был популярен простой ассемблер A86.

Microsoft Windows

При появлении операционной системы Microsoft Windows появилось расширение TASM, именуемое TASM32, позволившее создавать программы для выполнения в среде Windows. Последняя известная версия TASM — 5.3, поддерживающая инструкции MMX, на данный момент включена в Turbo C++ Explorer. Но официально развитие программы полностью остановлено.

Microsoft поддерживает свой продукт под названием Microsoft Macro Assembler. Она продолжает развиваться и по сей день, последние версии включены в наборы

GNU/Linux

В состав операционной системы Intel-синтаксис.

Переносимые ассемблеры

Также существует открытый проект ассемблера, версии которого доступны под различные операционные системы и который позволяет получать объектные файлы для этих систем. Называется этот ассемблер

BSD (с некоторыми исключениями).

flat assembler (fasm) — молодой ассемблер под модифицированной для запрета перелицензирования (включая под GNU GPL) BSD-лицензией. Есть версии для GNU/Linux, Microsoft Windows, использует Intel-синтаксис и поддерживает инструкции

Архитектуры

MCS-51

8051 — классическая архитектура микроконтроллера. Для неё существует кросс-ассемблер ASM51, выпущенный корпорацией MetaLink.

Atmel (AVRStudio 3 и AVRStudio4). Вторая версия — попытка исправить не очень удачную первую. Так же ассемблер есть в составе WinAVR.

Архитектуры

SeaForth

Ассемблирование и компилирование

Процесс трансляции программы на языке ассемблера в объектный код принято называть ассемблированием. В отличие от компилирования, ассемблирование — более или менее однозначный и обратимый процесс. В языке ассемблера каждой мнемонике соответветствует одна машинная инструкция, в то время как в языках программирования высокого уровня за каждым выражением может скрываться большое количество различных инструкций. В принципе, это деление достаточно условно, поэтому иногда трансляцию ассемблерных программ также называют компиляцией.

См. также

Ссылки

Литература

  • Вострикова З. П. Программирование на языке ассемблера ЕС ЭВМ. М.: Наука, 1985.
  • Галисеев Г. В. Ассемблер для Win 32. Самоучитель. — М.: «Диалектика», 2007. — С. 368. — ISBN 978-5-8459-1197-1
  • Зубков С. В. Ассемблер для DOS, Windows и UNIX.
  • Кип Ирвина. Язык ассемблера для процессоров Intel = Assembly Language for Intel-Based Computers. — М.: «Вильямс», 2005. — С. 912. — ISBN 0-13-091013-9
  • Магда Ю. С. Ассемблер. Разработка и оптимизация Windows-приложений. СПб.: БХВ-Петербург, 2003.
  • Нортон П., Соухэ Д. Язык ассемблера для IBM PC. М.: Компьютер, 1992.
  • Владислав Пирогов. Ассемблер для Windows. — СПб.: БХВ-Петербург, 2007. — 896 с. — ISBN 978-5-9775-0084-5
  • Владислав Пирогов. Ассемблер и дизассемблирование.. — СПб.: БХВ-Петербург, 2006. — 464 с. — ISBN 5-94157-677-3
  • Сингер М. Мини-ЭВМ PDP-11: Программирование на языке ассемблера и организация машины. М.: Мир, 1984.
  • Скэнлон Л. Персональные ЭВМ IBM PC и XT. Программирование на языке ассемблера. М.: Радио и связь, 1989.
  • Юров В., Хорошенко С. Assembler: учебный курс. — СПб.: «Питер», 2000. — С. 672. — ISBN 5-314-00047-4
  • Юров В. И. Assembler : учебник для вузов. / 2-е изд. СПб.: «Питер», 2004.
  • Юров В. И. Assembler. Практикум. : учебник для вузов / 2-е изд. СПб.: «Питер», 2004.
  • Юров В. И. Assembler. Специальный справочник. СПб.: «Питер», 2000.


Wikimedia Foundation. 2010.

Синонимы:

Смотреть что такое "Макроассемблер" в других словарях:

  • макроассемблер — сущ., кол во синонимов: 1 • язык (247) Словарь синонимов ASIS. В.Н. Тришин. 2013 …   Словарь синонимов

  • макроассемблер — — [http://www.iks media.ru/glossary/index.html?glossid=2400324] Тематики электросвязь, основные понятия EN macro assembler …   Справочник технического переводчика

  • макроассемблер — макроасс емблер, а …   Русский орфографический словарь

  • макроассемблер — макроассе/мблер, а …   Слитно. Раздельно. Через дефис.

  • Microsoft макроассемблер — …   Википедия

  • Ассемблер — Эта статья  о компьютерных программах. О языке программирования см. Язык ассемблера. Ассемблер (от англ. assembler  сборщик)  компьютерная программа, компилятор исходного текста программы, написанной на языке… …   Википедия

  • Микроша — Тип Домашний компьютер Выпущен 1987 Процессор …   Википедия

  • JOVIAL — (буквально  весёлый)  язык программирования, в основе которого лежал язык IAL (International Algorithmic Language), один из первых диалектов Алгола, в дальнейшем усовершенствованный и получивший название OVIAL (Own Version of the IAL).… …   Википедия

  • Львов ПК-01 — У этого термина существуют и другие значения, см. Львов (значения). Львов ПК 01 …   Википедия

  • Microsoft Macro Assembler — (MASM, макроассемблер Microsoft)  ассемблер для процессоров семейства x86. Первоначально был произведён компанией Microsoft для написания программ в операционной системы MS DOS и был в течение некоторого времени самым популярным ассемблером …   Википедия

Книги