ЛАБОРАТОРНА РОБОТА № 4
ТЕМА: Ознайомлення з роботою емулятора Emu8086
Мета роботи: ознайомлення зі структурою навчальної мікроЕОМ (емулятора Emu8086), органами управління та режимами її роботи.
Устаткування:
1. Персональний комп’ютер.
2. Програма-емулятор Emu8086.
Хід роботи
Короткі теоретичні відомості
Структура асемблерній програми
Кожна мова програмування має свої особливості. Мова асемблера - не виняток. Традиційно перша програма виводить вітальне повідомлення на екран "Hello word!".
На відміну від багатьох сучасних мов програмування в асемблерній програмі кожна команда розташовується на окремому рядку. Не можна розмістити кілька команд на одному рядку. Не прийнято, також, розбивати одну команду на кілька рядків.
Мова асемблера є РЕГІСТРОНЕЧУТЛИВОЮ. Тобто в більшості випадків немає різниці між великими та малими літерами. Команда може бути ДИРЕКТИВОЮ - вказівкою транслятору. Вони виконуються в процесі перетворення програми в машинний код. Багато директиви починаються з точки. Для зручності читання програми вони звичайно пишуться ВЕЛИКИМИ ЛІТЕРАМИ. Крім директив ще бувають ІНСТРУКЦІЇ - команди процесора. Саме вони і будуть становити машинний код програми.
Потрібно відзначити, що поняття "машинного коду" дуже умовно. Часто воно позначає просто вміст виконуваного файлу, що зберігає окрім власне машинних команд ще й дані. В нашому випадку це буде текст виведеного повідомлення "Hello word!".
Програмний емулятор (віртуальний ПК) Emu8086
Все для вивчення асемблера в одному пакеті! Emu8086 поєднує в собі потужний редактор вихідного коду, асемблер, дізасемблер, програмний емулятор (віртуальний ПК) з відладчиком та поетапне навчання.
Ця програма надзвичайно корисна для тих, хто тільки починає вивчати асемблер. Вона компілює вихідний код і виконує його за допомогою емулятора крок за кроком.
Візуальний інтерфейс дуже простий в роботі. Ви можете спостерігати регістри, прапори і пам'ять під час виконання вашої програми.
Арифметико-логічний пристрій (АЛП) показує внутрішню роботу центрального процесора (CPU).
Емулятор виконує програми на віртуальному ПК, який повністю виключає можливість доступу з вашої програми до реальних апаратних засобів, таких як жорсткі диски і пам'ять. Так як ваш код асемблера виконується на віртуальній машині, то відладка стає легшою.
Машинний код 8086 повністю сумісний з усіма наступними поколіннями мікропроцесорів Intel, включаючи Pentium II і Pentium 4, і я впевнений, що Pentium 5 буде також підтримувати команди 8086. Це робить код 8086 дуже привабливим, оскільки він виконується як на старих, так і на сучасних комп'ютерних системах. Іншою перевагою є те, що набір команд 8086 порівняно невеликий, і тому вивчити його буде легше.
Emu8086 має більш легкий синтаксис, ніж будь-які інші асемблери, але буде генерувати програму, яка зможе бути виконана на будь-якому комп'ютері, що підтримує машинний код 8086. Це великий плюс для початківців! Примітка: Якщо ви не використовуєте Emu8086 для компіляції коду, ви не зможете виконати ваш вихідний код в покроковому режимі.
Примітка: Якщо при спробі запустити вашу програму, вам видаються повідомлення про те, що ті чи інші команди не підтримуються, то ви не зможете виконати цю програму в налагоджувальному режимі. Однак її можна просто відкомпілювати і запустити звичайним чином (не під управлінням Emu8086).
Як почати?
Запустіть Emu8086, вибравши її значок в меню "Пуск", або безпосередньо запустите додаток Emu8086.exe.
Виберіть "Samples (приклади)" з меню "File".
Натиснути кнопку [Compile and Emulate] (або натисніть клавішу F5).
Натиснути кнопку [Single Step] (покроковий режим) (або натисніть клавішу F8), і спостерігайте за виконанням коду.
Спробуйте відкрити інші приклади. Всі приклади мають докладні коментарі, так що для навчання вони вельми корисні.