Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2012- СИСПРОГ на МАСМ.doc
Скачиваний:
21
Добавлен:
09.11.2019
Размер:
553.47 Кб
Скачать

2.2.2Состав пакета масм

Физически пакет МАСМ разворачивается в папку MASM32 корневой папки указанного пользователем диска, традиционно это D:\ MASM32. Следует сказать, что как установленное приложение МАСМ в реестре не регистрируется. То есть пакет работоспособен сразу после установки всех его файлов и организации среды исполнения, как описано в лабораторной работе №1.

Рисунок 2.1 – Состав корневой папки пакета МАСМ

Папки имеют назначение: bin – основные исполняемые файлы пакета (*.bat, *.exe и *.dll); help – chm-файлы электронной помощи по основным компонентам пакета; include и lib – включаемые inc-файлы и файлы библиотек *.lib. И то, и другое обеспечивает интерфейс создаваемых ассемблерных программ с ОС Windows; macros – набор заготовок и шаблонов макросов для широкого круга практических задач.; tutorial – большое количество готовых примеров asm-программ на самые разные темы. Пригодны как для изучения программирования на МАСМ, так и в качестве заготовок для собственных разработок.

Папка m32lib заслуживает того, чтобы о ней сказать отдельно. Это папка, в которой сложены ИСХОДНЫЕ ТЕКСТЫ процедур, применяемых в пакете. Полезность этой папки при обучении ассемблеру переоценить просто невозможно. Поэтому в будущем, когда вы при разборе очередного примера встретите вызов незнакомой функции, то сразу ищите в m32lib asm-файл с аналогичным именем, открывайте его, читайте и все тайны вам откроются.

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

Файлы папки МАСМ представлены следующими группами (по типам):

Ini – файлы инициализации (установки начальных настроек) программных инструментов пакета. Особая роль у файла menus.ini, но об этом чуть ниже, в описании редактора Quick Editor (QE).

Exe, bin, dll – исполняемые файлы программных инструментов пакета и их обеспечение. Из всех файлов программных инструментов центральный – это qeditor.exe (Quick Editor), потому что вызов всего инструментария МАСМ возможен прямо из него и это самый удобный способ делать такие вызовы инструментов. Подробнее читайте ниже.

Qsc (и в других местах могут еще встретиться файлы типа qse) – это файлы скриптов скриптоязыка редактора QE). С их помощью пакет МАСМ выполняет массу полезной работы по автоматизации программирования.

2.2.3Центр масм – редактор Quick Editor

Рисунок 2.2 – Редактор Quick Editor с открытым меню Project

Вызывается запуском qeditor.exe. Поддерживается С. Хатчисоном как главное интерфейсное программное средство для работы с МАСМ.

Внешне на первый взгляд QE – такой себе не очень совершенный текстовый редактор неформатированных текстов, типа Блокнота (хотя бесплатный Notepad++ многократно лучше). Даже цветовой разметки синтаксических конструкций ассемблера в нем нет (хотя, наверное, стоило бы ввести. «Ау, Хатчисон! Вы слышите?»  ).

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

Ну, во-первых, вызов всех остальных доступных инструментов пакета возможен из меню Project, Tools, Code и Conversions. На рис.2.2 раскрытым для примера показано меню Project, вы можете видеть там названия действий. Выбор действия запускает соответствующий пакетный bat-файл, его команды выполняет ОС.

Во-вторых, QE – многодокументный редактор (что довольно обычно), он открывает свой новый полнофункциональный экземпляр (размером аж 36 кб) для каждого нового открываемого файла любого типа, не только текстового. Все открытые редакторы видны в любом экземпляре в меню Window, можно переключаться с любого на любой либо там, либо через Alt-Tab.

В-третьих, QE имеет открытый программный интерфейс. Выше мы говорили об «особом файле» menus.ini. Настала пора обсудить его подробнее.

Это – файл программирования меню QE. Можно открыть его в самом QE, отредактировать его, дополнить, изменить, сохранить, и с очередного запуска QE будет иметь другое меню, из которого вы по-другому организовали вызов всего, что нужно. Мы не будем здесь описывать правила написания файла menus.ini, а отошлем читателя к файлу \МАСМ\help\qeditor.chm, раздел index\Menu Syntax.

И, в-четвертых, внутри QE «сидит» движок скриптов (фактически это вызов кода библиотеки qsc.dll), с помощью которого можно создавать, вызывать для редактирования и исполнять скрипты в форматах qsc и qse, используя всё богатство их возможностей. В файле \МАСМ \help \qeditor.chm, раздел Scripting всё подробно расписано.

Итак, подведем итоги. Наличный состав программных компонент и дополнительных ресурсов пакета МАСМ действительно обеспечивает возможность изучения программирования на ассемблере, разработку, отладку и исполнение ассемблерных программ, а также в известной мере анализ и обратную разработку (reverse engineering) уже имеющихся программных кодов в форматах exe и dll. Логическим центром пакета МАСМ является редактор Quick Editor.