- •1. Требования языка ассемблера
- •1.1. Комментарии в программах на Ассемблере
- •1.2. Формат кодирования
- •1.3. Директивы ассемблера
- •Title текст
- •Директива segment
- •Директива assume
- •1.4. Память и регистры
- •1.5. Инициализация программы
- •1.6. Пример исходной программы
- •2. Определение данных
- •2.1. Директивы определения данных
- •2.2. Непосредственные операнды
- •Длина непосредственных операндов
- •3. Ассемблирование и выполнение программы
- •3.1. Ввод программы
- •3.2. Подготовка программы для выполнения
- •3.3. Ассемблирование программы
- •3.4. Выполнение программы
- •3.5. Пример исходной программы
- •4. Отладчик turbo debugger
- •4.1. Навигация по диалоговым блокам
- •4.2. Активные клавиши
- •Изучение языка ассемблера для персональных компьютеров
- •Изучение стандартных функций прерывания dos
- •Функции для работы с клавиатурой
- •Функции для работы с экраном
- •Функции для работы с файлами
4.2. Активные клавиши
Активная клавиша – это клавиша, нажатие которой заставляет отладчик выполнять определенное действие независимо от текущего состояния среды отладчика Turbo Debugger. В таблице на рис. 4.1 перечислены все активные клавиши.
Клавиша Назначение
F1 Получение контекстно-зависимой интерактивной
подсказки.
F2 Устанавливает точку останова в позиции курсора.
F3 Список взятых модулей.
F4 Выполнение до позиции курсора.
F5 Наезд/отъезд для текущего окна.
F6 Переход к следующему окну.
F7 Выполнение одной исходной строки или команды.
F8 Выполнение одной исходной строки или команды с пропуском вызовов.
F9 Запуск программы.
F10 Вызов линейки меню, выход из меню.
Alt-F1 Возврат к прошлому экрану подсказки.
Alt-F2 Устанавливает точку останова по адресу.
Рис.4.1. Активные клавиши Turbo Debugger
Alt-F3 Закрывает текущее окно.
Alt-F4 Реверсирует выполнение программы.
Alt-F5 Показывает экран вывода программы.
Alt-F6 Открывает последнее закрытое окно.
Alt-F7 Выполняет одну команду программы Trace.
Alt-F8 Выполняет программу до возврата из функции.
Alt-F9 Выполняет программу до заданного адреса.
Alt-F10 Вызывает локальное меню окна.
Alt-1-9 Делает активным окно с заданным номером.
Alt-пробел Вызывает меню System.
Alt-B Вызывает меню Breakpoints.
Alt-D Вызывает меню Data.
Alt-F Вызывает меню File.
Alt-H Вызывает меню Help.
Alt-O Вызывает меню Options.
Alt-R Вызывает меню Run.
Alt-V Вызывает меню View.
Alt-W Вызывает меню Window.
Alt-X Осуществляет выход из отладчика и возврат в DOS
Ctrl-F2 Завершает сеанс отладки и устанавливает программу в исходное состояние.
Ctrl-F4 Вычисляет значение выражения.
Ctrl-F5 Инициирует перемещение или изменение размера окна.
Ctrl-F7 Заносит переменную в окно слежения.
Ctrl-F8 Переключает точку останова в текущей позиции курсора.
Ctrl-F9 Запускает программу.
Ctrl-F10 Вызывает локальное меню окна.
Ctrl-A Перемещение к предыдущему слову.
Ctrl-G Осуществляется ввод ячейки памяти, данные которой необходимо посмотреть, например Ctrl-G DS:SI
Ctrl-C Скроллинг на один экран вниз
Ctrl-D В окне данных позволяет преобразовать данные в любой из форматов, например DOUBLE восьми байтовый вещественный формат.
Рис. 4.1. Окончание
Лабораторная работа № 1
Изучение языка ассемблера для персональных компьютеров
Цель работы:
Знакомство со структурой программы при программировании на языке ассемблера для персональных компьютеров, компилирование программы, отладка программы с помощью TURBO DEBUGER.
Вариант № 1. Сформировать массив из 10 двухбайтных чисел. Переписать во второй массив числа, у которых 2,5,12 разряды равны 1.
Вариант № 2. Сформировать массив из 10 двухбайтных чисел. Переписать во второй массив все четные числа.
Вариант № 3. Сформировать массив из 10 двухбайтных чисел. Переписать во второй массив все нечетные числа.
Вариант № 4. Сформировать массив из 10 двухбайтных чисел. Переписать во второй массив все положительный числа.
Вариант № 5. Сформировать массив из 10 двухбайтных чисел. Переписать во второй массив все отрицательные числа.
Вариант № 6. Сформировать массив из 10 двухбайтных чисел. Переписать во второй массив в порядке убывания.
Вариант № 7. Сформировать массив из 10 двухбайтных чисел. Переписать во второй массив в порядке увеличения.
Вариант № 8. Сформировать массив из 10 двухбайтных чисел. Найти максимальное значение.
Вариант № 9. Сформировать массив из 10 двухбайтных чисел. Найти минимальное значение.
Вариант № 10. Сформировать массив из 10 двухбайтных чисел. Найти среднее значение.
Вариант № 11. Сформировать массив из 10 двухбайтных чисел. Найти разницу между минимальным и максимальным значение.
Вариант №12. Сформировать массив из 10 двухбайтных чисел. Найти номер минимального числа.
Вариант № 13. Сформировать массив из 10 двухбайтных чисел. Найти номер максимального числа.
Вариант № 14. Написать программу преобразования однобайтового числа в соответствующий ему код ASCII.
Вариант № 15. Написать программу преобразования двухбайтового кода ASCII в соответствующее однобайтовое число.
Вариант № 16. Написать программу сложения двух 10 байтовых чисел с учетом знака.
Вариант № 17. Написать программу вычитания двух 10 байтовых чисел с учетом знака.
Вариант № 18. Написать программу деления двух 10 байтовых чисел без учета знака.
Вариант № 19. Написать программу преобразования двухбайтового числа в десятичное число с учетом знака.
Вариант № 20. Написать программу преобразования двухбайтового числа в десятичное число без учета знака.
Вариант № 21. Написать программу преобразования десятичного числа в диапазоне –32768 … 32767 в двоичное число (знак формировать в дополнительном байте).
Вариант № 22. Написать программу преобразования десятичного числа в диапазоне 0 … 65535 в двоичное число.
Лабораторная работа № 2
