Содержание:
Лабораторная работа № 1. Первая программа на ассемблере………………3
Лабораторная работа № 2. Работа со структурами данных и функциями BIOS и DOS…………………………………………………………………..…….....12
Лабораторная работа № 3. Управление устройствами……………………..24
Лабораторная работа № 4. Макросы, блоки повторений……………….…32
Лабораторная работа № 1. Первая программа на ассемблере
Цель работы: Написать на языке ассемблера программу, реализующую некоторый алгоритм в соответствии с полученным заданием.
Задание
Дан текст. Выяснить, является ли он идентификатором.
Теоретические сведения
Текст исходной программы состоит из операторов ассемблера, каждый из которых занимает отдельную строку этого текста. Различают два типа операторов: инструкции и директивы. Первые при трансляции преобразуются в команды процессора, которые исполняются после загрузки в память загрузочного модуля программы, имеющего расширение .COM или .EXE. Операторы второго типа управляют процессом ассемблирования – преобразования текста исходной программы в коды объектного модуля (расширение .OBJ). Ассемблер интерпретирует и обрабатывает операторы один за другим, генерируя последовательность из команд процессора и байтов данных.
В ассемблере имеется три вида вызова подпрограмм.
1. CALL NEAR (короткий вызов);
2. CALL FAR (длинный вызов);
3. INT (прерывание),
но ни один из них не содержит явного механизма передачи параметров. Этот механизм определяется внутренней организацией вызываемой подпрограммы.
Лабораторная работа № 2. Работа со структурами данных и функциями BIOS и DOS
Цель работы: Изучить и применить на практике приемы и методы работы с функциями BIOS, структурами данных BIOS, функциями DOS. При сдаче работ вариантов № 1 – 9 необходимо знать состав, назначение и длину выводимых данных в MS-DOS.
Задание
Вывести на экран информацию BIOS по адресу: 0:41Eh.
Теоретические сведения
Текст исходной программы состоит из операторов ассемблера, каждый из которых занимает отдельную строку этого текста. Различают два типа операторов: инструкции и директивы. Первые при трансляции преобразуются в команды процессора, которые исполняются после загрузки в память загрузочного модуля программы, имеющего расширение .COM или .EXE. Операторы второго типа управляют процессом ассемблирования – преобразования текста исходной программы в коды объектного модуля (расширение .OBJ). Ассемблер интерпретирует и обрабатывает операторы один за другим, генерируя последовательность из команд процессора и байтов данных.
В ассемблере имеется три вида вызова подпрограмм.
1. CALL NEAR (короткий вызов);
2. CALL FAR (длинный вызов);
3. INT (прерывание),
но ни один из них не содержит явного механизма передачи параметров.
Лабораторная работа № 3. Управление устройствами
Цель работы: Освоить методы работы с основными устройствами ПЭВМ, используя функции BIOS, а также с помощью непосредственного доступа к устройствам.
Задание
Один раз в секунду выводить на экран состояние переключателей клавиатуры Shift Status в двоичном виде.
Теоретические сведения
Текст исходной программы состоит из операторов ассемблера, каждый из которых занимает отдельную строку этого текста. Различают два типа операторов: инструкции и директивы. Первые при трансляции преобразуются в команды процессора, которые исполняются после загрузки в память загрузочного модуля программы, имеющего расширение .COM или .EXE. Операторы второго типа управляют процессом ассемблирования – преобразования текста исходной программы в коды объектного модуля (расширение .OBJ). Ассемблер интерпретирует и обрабатывает операторы один за другим, генерируя последовательность из команд процессора и байтов данных.
В ассемблере имеется три вида вызова подпрограмм.
1. CALL NEAR (короткий вызов);
2. CALL FAR (длинный вызов);
3. INT (прерывание),
но ни один из них не содержит явного механизма передачи параметров.
Лабораторная работа № 4. Макросы, блоки повторений
Цель работы: Изучить способы использования макросредств в программах на ассемблере, реализовать программу с использованием макросредств
Задание
Параметры (1): адрес в памяти двойного слова. Макрос должен выводить на экран беззнаковое целое число размером в 2 слова.