- •1.2.2Системний рядок path – список шляхів пошуку
- •1.2.3Системний рядок pathext – список розширень виконуваних файлів
- •1.2.4Пакет програмного розробника masm32
- •1.2.4.1Як встановити masm32 на свій комп’ютер
- •1.2.4.6Папки з прикладами програм
- •1.3Виконання роботи
- •1.3.1Перегляд поточних значень системних змінних
- •1.3.3Інсталяція sdk masm32
- •1.4Склад звіту з роботи
- •1.5Контрольні питання
- •2Перша асемблерна програма
- •2.1Мета роботи
- •2.2Теоретичні відомості
- •1.3.4Створення власної робочої папки і перевірка можливості роботи з нею
- •2.2.1Послідовність створення виконуваного ехе-модуля на асемблері
- •2.2.1.1Компіляція
- •2.2.1.2Компоновка
- •2.2.2Пакетний файл buildc.Bat
- •2.2.2.1Передача параметрів у пакетний файл при його виконанні
- •2.2.2.2Відкоментований текст пакетного файлу buіldc.Bat
- •2.2.3Шаблон асемблерної програми
- •2.3Виконання роботи
- •Inkey "Натиснiть кнопку!"
- •2.4Склад звіту з роботи
- •2.5Контрольні питання рекомендована література
- •Префікси «угорської» нотації типів даних в описах викликів функцій аpi Win32 (Win64)
1.2.4.1Як встановити masm32 на свій комп’ютер
Можна скористатись пошуком Google, знайти сайт (часто випадково) з інсталяцією і якось встановити.
А краще скористатись готовою колекцією веб-ресурсів, яку ми накопичили для вас на сайті з Системного програмування
https://sites.google.com/site/systempromasm/glavnaa-stranica/resursy
Знаходите там рядок
Для скачування архіву клацайте по стрілочці, позначеній червоною рамкою.
В цьому архіві записаний файл інсталятора install.exe.
Дістаньте його з архіву і запустіть з правами адміністратора. В процесі виконання потрібно буде визначити, на який диск інсталювати MASM32:
Рекомендуємо вибрати D:\.
Процес інсталяції здебільшого являє собою просто переписування в цільову папку D:\masm32 файлів і папок з саморозпаковуваного архіву install.exe.
Виняток буде один: робота дійде до створення бібліотек (файлів *.lib) в папці D:\masm32\lib. Інсталятор попередить вас, що для виконання цієї роботи він перейде в консольний режим, ви погодитесь. Відкриється консоль і ви будете наочно спостерігати, як виконується компіляція і компоновка бібліотек.
В кінці інсталяції буде повідомлення про її успішне завершення.
Ніякої реєстрації MASM32 в реєстрі Windows не виконується, це не потрібно.
Примітка. Видалення MASM32 з комп’ютера зводиться просто до стирання папки D:\masm32.
Після виконання цих дій можна використовувати пакет MASM32 за призначенням.
Склад кореневої папки пакету MASM32 показаний на рис. 1.2. Файли цієї папки ми вивчати тут не будемо за браком часу, а натомість приділимо увагу розгляду головних папок пакету.
1.2.4.2Папка D:\masm32\bin
Вона містить в собі головні виконувані модулі пакету. Ми будемо використовувати з цієї папки, головним чином, наступні програми:
ML.EXE – це компілятор початкових асемблерних текстів. Він має багато дуже корисних ключів, які модифікують виконання компілятору різними способами. Частину з них ми будемо використовувати в подальших роботах. Передивитись ключі можна в консолі командою
ML /?
Для нас головне призначення компілятора буде полягати в створенні об’єктного (.obj) файлу з початкового текстового файлу (.asm).
Друга вкрай потрібна нам програма з папки D:\masm32\bin – це компоновник LINK.EXE.
Довідку про ключі компоновника можна подивитись в консолі командою
Link /?
Компоновник перетворює задану групу об’єктних файлів (або, в крайньому випадку, один такий obj-файл) на виконуваний exe-модуль. Далі цей ехе-файл можна запустити на виконання як любу програму.
Рисунок 1.2 – Склад кореневої папки пакету MASM32
Для автоматизації створення ехе-файлу з файлу початкового тексту (.asm) буде використовуватись пакетний файл BUILDC.BAT. Його назву треба розуміти так: «Побудувати (build) виконуваний модуль консольної (console) програми». З виділених литер створена назва пакету.
Про використання названих програм мова піде в подальших розділах.
Папка bin містить ще велику кількість корисних ехе та bat файлів, вивчення яких було б можливе при наявності більшого навчального часу. Але ніхто не заважає вам самостійно вивчати їх, якщо у вас є інтерес, час і потреба.
Файли з цієї папки потрібні при підготовці любої асемблерної програми, тому доступ до неї потрібно забезпечувати відповідною зміною рядка path.
1.2.4.3Папка D:\masm32\include
Ця папка містить в собі файли включення (.inc). Розширення імен походить від англійського include – включити, вставити.
Файли включення – це текстові файли, які містять різні визначення та макродирективи, які потім будуть оброблюватись компілятором та компоновником. Наявність потрібних визначень та макродиректив робить можливим підключення до наших програм модулів зв’язку з операційною системою.
Файли з цієї папки потрібні при підготовці любої асемблерної програми, тому доступ до неї потрібно забезпечувати відповідною зміною рядка path.
1.2.4.4Папка D:\masm32\lib
Це папка з бібліотеками пакету MASM32. При підготовці любої програми використовується значна кількість готових підпрограм, написаних на асемблері спеціально для пакету MASM32. Це, по-перше, дуже зручно і, по-друге, початкові тексти всіх цих підпрограм присутні в пакеті, їх завжди можна відкрити, прочитати і зрозуміти, що саме, і як робить та чи інша процедура.
Всі ці підпрограми заздалегідь компілюються і об’єднуються в бібліотеки (.lib). Підключення коду цих бібліотек до створюваних програм відбувається на етапі компоновки об’єктних файлів. Протиріччя з поняттям «бібліотека» тут нема ніякого, тому що lib-файли за структурою є збірниками об’єктних (.obj) файлів. Компоновник просто вибирає з бібліотек потрібне і включає в ехе-модуль.
Файли з цієї папки потрібні при підготовці любої асемблерної програми, тому доступ до неї потрібно забезпечувати відповідною зміною рядка path.
1.2.4.5Папка D:\masm32\help
В цій папці розміщені файли допомоги пакету MASM32. За форматом це – компільовані хелп-модулі (Compiled Help Module), тому мають розширення .chm.
За суттю chm-файли є невеликими локальними гіпертекстовими застосуваннями, в яких посилання між сторінками мають числову форму, а не текстову, як в HTML. Тому для роботи з chm-файлами доводиться використовувати не веб-браузер, а спеціальне застосування ОС Windows.
Хелп-файли пакету MASM32 написані англійською, але за структурою вони прості і мова нескладна.
