Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабраб.DOC
Скачиваний:
0
Добавлен:
22.08.2019
Размер:
1 Mб
Скачать

Лабораторна робота №1 отримання навичок розробки програм мовою асемблера для мікропроцесора к1810вм86 у середовищі програмного пакету „turbo assembler” фірми borland

Мета роботи. Вивчення інтерфейсу та основних принципів роботи з програмним пакетом TASM. Набуття навичок роботи з

відлагоджувачем.

1.1 Теоретичні відомості

Відлагоджувач Turbo Debugger являє собою набір інструментальних засобів, що дозволяють відлагоджувати програми на рівні вихідного тексту і призначений для програмістів, що використовують сімейство компіляторів Borland. До пакету відлагоджувача входять набір виконуваних файлів, утиліт, довідкових текстових файлів і прикладів програм.

Turbo Debugger дозволяє відлагоджувати програми для Microsoft Windows та DOS. Численні перекриваючі одне одного вікна, а також поєднання меню, що спускаються і розкриваються, забезпечують швидкий, інтерактивний, орієнтований на зручність для користувача інтерфейс. Інтерактивна, контекстно-залежна довідкова система забезпечує розроблювача підказкою на всіх стадіях роботи. Крім того, Turbo Debugger має повний набір засобів відлагоджування:

  • обчислення будь-яких виразів мовою Сі, C++, Pascal і Assembler;

  • повне керування виконанням програми, включаючи програмну анімацію;

  • доступ на низькому рівні до внутрішніх реґістрів процесора і системної пам'яті;

  • повнофункціональні засоби перевірки даних;

  • розвинуті можливості керування точками зупинки;

  • трасування повідомлень Windows, включаючи точки зупинки за повідомленнями;

  • виконання програми у зворотному напрямку;

  • повна підтримка об'єктно-орієнтованого програмування, включаючи перегляд класів і перевірку об'єктів;

  • макрокоманди у вигляді послідовності натискань клавіш, що прискорює виконання команд;

  • копіювання і вставка фраґментів інформації між вікнами й діалогами;

  • контекстно-залежні меню;

  • можливість відлагоджування великих програм;

  • діалогові вікна, що дозволяють настроїти параметри відлагоджувача;

  • можливість відлагоджування 16- і 32-розрядних програм для операційної системи MS Windows;

  • збереження параметрів поточного сеансу;

  • можливість вибору для елементів, що виводяться в Turbo Debugger, національного порядку сортування.

Перш ніж завантажувати програму у відлагоджувач Turbo Debugger, необхідно компілювати її вихідний текст, виконаний в exe-файлі в режимі формування повної відлагоджувальної інформації. При запуску відлагоджувача необхідно, щоб були доступні як виконуваний exe-файл, так і файли з вихідним текстом програми. Ці вимоги виконуються автоматично при використанні пакетного командного файла ta.bat, що знаходиться в каталозі TASM.

Робота з меню

Команди глобальних меню Turbo Debugger виводяться у верхній частині екрану в рядку меню. Якщо не активізоване яке-небудь діалогове вікно, то ці команди завжди є доступними. Щоб відкрити меню Turbo Debugger, слід натиснути функціональну клавішу F10, за допомогою клавіш керування курсором переміститися до потрібного пункту меню і натиснути клавішу Enter. Можна також після натискання клавіші F10 для переходу до потрібного пункту натиснути його букву, що підсвічується, або відразу натиснути комбінацію клавіш Alt + буква (без F10). Системне меню вибирається за комбінацією Alt + пробіл. Меню відкривається також клацанням "мишею" на відповідному пункті.

У командному рядку DOS потрібно ввести ім’я файла, що передбачається підлагоджувати, не вказуючи розширення, потім виконується асемблерування та компонування файла і запускається відлагоджувач Turbo Debugger. Відкриваємо вікно CPU. Воно має вигляд, що приблизно показаний на рис. 1.1

Рис. 1.1 - Вікно відлагоджувача Turbo Debugger із завантаженою програмою

Нижче дається пояснення структури рядка меню відлагоджувача Turbo Debugger.

Ё

Repaint desktop Перерисовує екран.

Restore standard Відновлює стандартний вигляд вікна.

About Виводить інформацію про Turbo Debugger.

File

Open Завантажує у відлагоджувач нову програму.

Change dir Виконує зміну диска та/або директорії.

Get info Видає інформацію про програму.

DOS shell Запускає командний процесор DOS.

Resident Робить Turbo Debugger резидентним.

Symbol load Завантажує таблицю символьних імен, незалежну від файла .exe.

Table relocate Встановлює базову адресу таблиці символьних імен.

Quit Вихід з відлагоджувача та повернення в DOS.

Edit

Copy Копіює виділені мишею елементи підвікна в буфер обміну.

Paste Вставляє в підвікно елементи з буфера обміну.

Copy to log Записує у вікно реєстрації елементи підвікна.

Dump pane to log Записує у вікно реєстрації вміст поточного підвікна.

View

Breakpoints Перегляд точок зупинників.

Stack Перегляд стеку виклику.

Log Перегляд журналу подій і даних.

Watches Перегляд значень змінних, які відслідковуються.

Variables Перегляд списку локальних та глобальних змінних.

Module Перегляд списку модулів, які використовуються в програмі.

File Перегляд вмісту файла в текстовому або

шістнадцятковому форматі.

CPU Перегляд машинних команд, даних та вмісту стеку.

Dump Перегляд порядкового вмісту області пам’яті.

Registers Перегляд стану реґістрів та прапорців МП.

Numeric processor Перегляд стану NDCP.

Execution history Виводить асемблерний код, який був запам’ятований для зворотного трасування або зворотного відтворення натискань клавіш.

Hierarchy Виводить список об’єктів чи типів класу та

ієрархічне дерево.

Windows messages Використовується тільки при відлагоджуванні Windows-програм.

Clipboard Показує елементи, скопійовані в буфер обміну.

Another

Module Відкриває ще одне вікно модуля.

Dump Відкриває ще одне вікно вмісту пам’яті.

File Відкриває ще одне вікно файла.

Run

Run Запускає виконання програми без покрокового режиму.

Go to cursor Виконує програму до позиції курсору.

Trace into Виконує одну команду програми (покроковий режим).

Step over Покроковий режим з виконанням підпрограм за один крок.

Execute to Виконує програму до заданої адреси.

Until return Виконує програму до повернення з функції.

Animate Запускає програму в безперервному покроковому режимі.

Back trace Виконання програми на один крок (команду) назад.

Instruction trace Виконує одну команду програми.

Arguments Встановлює арґументи командного рядка.

Program reset Завершує сеанс відлагоджування і заново завантажує поточну програму.

Breakpoint

Toggle Встановлює/скасовує точку зупинників у позиції курсора.

At Встановлює точку зупинників на рядку з указаною адресою.

Changed memory Встановлює глобальну точку зупинки, яка

global вмикається при зміні вмісту області пам’яті.

Expression true global Встановлює глобальну точку зупинки.

Delete all Видаляє всі точки зупинки.

Data

Inspect Дозволяє перевірити елемент даних.

Evaluate/modify Обчислює значення виразу.

Add watch Заносить змінну у вікно спостереження.

Function return Відображає значення, що повертається поточною програмою.

Options

Language Визначає мову для обчислення виразів за вихідним модулем.

Macros

Create Визначає клавішний макрос.

Stop recording Закінчує запис макросу.

Remove Видаляє клавішний макрос.

Delete all Видаляє всі клавішні макроси.

Display options Дозволяє встановити опції екрана (розмір, табуляція).

Path for source Список директорій, у яких знаходяться вихідні файли.

Save options Зберігає на диску макроси й параметри відлагоджувача та вікон.

Restore options Встановлює параметри з диска.

Window Виклик меню Window.

Zoom Виконує перезміну розміру активного вікна.

Next Циклічно активізує всі відкриті вікна.

Next pane Переміщає курсор у наступне підвікно поточного вікна.

Size/move Ініціює переміщення і зміну розмірів вікна.

Iconize/restore Зменшує розмір вікна до піктограми і відновлює його.

Close Закриває поточне вікно.

Undo close Відкриває останнє закрите вікно.

User screen Переключення між екраном користувача й вікнами CPU та NDCP (на екрані користувача відображається поточний результат прогону програми в покроковому режимі, якщо вона виводить дані на дисплей).

Help Виклик меню Help.

Index Виводить зміст інтерактивної підказки.

Previous topic Виводить попередній екран підказки.

Help on help Виводить підказку за інтерактивною системою допомоги.