
- •1.2. Класифікація периферійних пристроїв і їх архітектура
- •1.5.2.1. Головна таблиця файлів
- •Журналирование
- •Транслятор у мові асемблер
- •Види трансляторів з мови Асемблера
- •Запуск на виконання транслятора tasm
- •В результаті трансляції одного вхідного файла може бути створено до трьох вихідних файлів:
- •Xref – ім’я файла перехресних посилань.
- •Структура об’єктної програми
- •Здійснення процесу трансляції.
Види трансляторів з мови Асемблера
В наш час існує декілька різних трансляторів з мови Асемблера. Найбільш розповсюдженими з них є такі асемблери:
Макроасемблер MASM (розробник – фірма Microsoft);
Турбо-Aсемблер TASM (розробник – фірма Borland International);
асемблер OPTASM (розробник – фірма SLR System);
асемблер 386/ASM (розробник – фірма PHAR Zab Software).
Найбільш повний діапазон можливостей мають асемблери MASM та TASM. Якщо в процесі роботи з прикладними програмами будуть використовуватись інші системні програми фірми Borland, тоді перевагу у цьому випадку слід надати TASM. Відмінною особливістю асемблера Tasm є те, що від генерує налагоджувальну інформацію для програми-налагоджувальника TURBO-DEBUGGER.
В подальшому розглядатиметься функціонування асемблера TASM.
Запуск на виконання транслятора tasm
Перед зверненням до транслятора необхідно створити файл з розширенням “.asm”, в якому буде знаходитись код вхідної програми мовою Асемблер.
В результаті трансляції одного вхідного файла може бути створено до трьох вихідних файлів:
об’єктний файл, який буде містити об’єктний модуль (тип файла -“.OBJ”);
файл лістингу (тип файла - “.LST”);
файл перехресних посилань, що містить таблицю перехресних посилань (тип файла - “.CRF”).
У деяких випадках таблиця перехресних посилань може знаходитись безпосередньо у файлі лістингу.
Отримання необхідних вихідних файлів визначається способом запуску транслятора на виконання. Тому розглянемо формат команди запуску TASM на виконання:
TASM [options] source[,object][,listing][,xref],
де options - опції, що визначають додаткові можливості трансляції,
source - ім’я вхідного файла,
object - ім’я об’єктного файла,
listing – ім’я файла лістингу,
Xref – ім’я файла перехресних посилань.
Нехай, наприклад, файл “PROG.ASM” містить код вхідної програми мовою Асемблер. Тоді найпростіший варіант виклику асемблера буде такий:
TASM PROG
В результаті трансляції буде сформовано тільки один файл - PROG.OBJ.
Якщо ж необхідно отримати також і лістинг програми, то в командному рядку слід набрати команду:
TASM PROG, PROG, PROG
або
TASM PROG , ,
Для отримання всіх трьох вихідних файлів слід використати команду:
TASM PROG, PROG, PROG, PROG
або
TASM PROG , , ,
В результаті будуть створені такі файли: PROG.OBJ, PROG.LST, PROG.XRF. Імена цим файлам можна задати довільно, але початковий файл повинен обов’язково мати ім’я PROG.
Як вже відмічалось у першій частині даного посібника формуванням вказаних вихідних файлів можна керувати також за допомогою опцій команди TASM.
Найчастіше використовуються такі опції транслятора:
TASM /L - отримання об’єктного модуля і лістинга;
TASM /L/C - те саме, але лістинг містить також таблицю перехресних посилань;
TASM /L/N - виключення з лістингу таблиці символічних імен;
TASM /ZI - отримання об’єктного модуля разом з необхідною довідковою інформацією для налагоджувач TURBO DEBUGGER.
Повний список опцій транслятора можна отримати, якщо у командному рядку набрати тільки команду TASM (без параметрів). Тоді на екран буде виведено довідкову інформацію про опції транслятора
Всі наведені вище команди є правильними у тому випадку, коли всі програмні файли знаходяться у поточному каталозі. У випадку, коли деякі файли знаходяться у інших каталогах, необхідно вказувати повний шлях до них.