- •Основы языка Assembler
- •1. Лабораторная работа №1: «Арифметические и логические команды в ассемблере».
- •1.1 Арифметические команды
- •1.1.1 Сложение и вычитание
- •1.1.2 Переполнения
- •1.1.3 Беззнаковые и знаковые данные.
- •1.1.4 Умножение
- •1.1.5 Беззнаковое умножение: Команда mul
- •1.1.6 Знаковое умножение: Команда imul
- •1.1.7 Многословное умножение
- •1.1.8 Деление
- •1.1.9 Беззнаковое деление: Команда div
- •1.1.10 Переполнения и прерывания
- •1.1.11 Преобразование знака
- •1.2 Логические команды
- •1.2.1 Команды логических операций : and, not,or,xor,test
- •1.2.2 Команды сдвига и циклического сдвига
- •1.2.2.1 Команды сдвига
- •1.2.2.2 Команды циклического сдвига
- •1.3 Примеры
- •1.4 Варианты заданий.
- •1.5 Требования к отчету
- •1.6 Контрольные вопросы и упражнения
- •2 Лабораторная работа №2 «Арифметические команды и команды переходов»
- •2.1 Получение символов с клавиатуры
- •2.2 Вывод символов на экран
- •2.3 Безусловные переходы
- •2.4 Условные переходы
- •2.5 Пример
- •2.6 Задания к лабораторной работе
- •2.7 Требования к отчету
- •2.8 Контрольные вопросы и упражнения
- •3 Лабораторная работа №3 «Программирование на языке ассемблер задач с использованием массивов строковых данных»
- •3.2 Цепочные команды
- •3.2.1 Инструкция lods
- •3.2.2 Инструкция stos
- •3.2.3 Инструкция movs
- •3.2.4 Повторение строковой инструкции
- •3.2.4 Сравнение строк
- •3.3 Режимы адресации к памяти
- •3.4 Ввод-вывод
- •3.6 Задания к лабораторной работе
- •3.7 Требования к отчету
- •3.8 Контрольные вопросы и упражнения
- •4 Лабораторная работа №4 « Работа с массивами и стеком на языке ассемблера»
- •4.1 Общие сведения о массивах
- •4.2 Ввод – вывод массива
- •4.3 Способы сортировки массивов.
- •4.4 Работа со стеком в ассемблере
- •4.4.1 Команды работы со стеком
- •4.4.2 Передача параметров в стеке
- •4.4.3 Передача параметров в потоке кода
- •4.5 Задание
- •4.6 Требования к отчету
- •4.7 Контрольные вопросы и упражнения
- •5 Лабораторная работа №5 «Работа с математическим сопроцессором в среде Assembler»
- •5.1 Основные сведения
- •5.2 Команды сопроцессора
- •5.2.1 Команды пересылки данных
- •5.2.2 Арифметические команды
- •5.3 Пример
- •5.4 Задание
- •5.5 Требования к отчету
- •5.6 Контрольные вопросы и упражнения
- •6 Лабораторная работа №6 «Программирование на языке ассемблера задач с использованием системных ресурсов bios. Работа в графическом режиме»
- •6.1 Графический режим
- •6.2 Прерывание bios int 10h для графики
- •6.3 Задание
- •6.4 Требования к отчету
- •6.5 Контрольные вопросы и упражнения
- •7 Лабораторная работа №7 «Работа с файлами в языке Assembler»
- •7.1 Создание файла
- •7.3 Создание и открытие файла.
- •7.4 Чтение, запись и переименование файла
- •7.7 Переименование файла
- •7.8 Закрытие и удаление файла
- •7.8.2 Удаление
- •7.10 Поиск файлов
- •7.10.1 Найти первый файл
- •7.10.2 Найти следующий файл
- •7.11 Задание
- •7.12 Требования к отчету
- •7.13 Контрольные вопросы и упражнения
- •Список литературы:
7.11 Задание
Во всех вариантах необходимо реализовать программу работы с файлами. Пользователь вводит с клавиатуры имя файла с текстом и имя создаваемого файла, в который будет помещен результат. Слова в строке могут быть разделены пробелами и знаками препинания.
Варианты заданий:
Выровнять все строки в файле по правому краю
Выровнять все строки в файле по центру
Выровнять все строки в файле по левому краю
Отформатировать файл таким образом, чтобы длина каждой строки не превышала заданного пользователем значения
Отсортировать строки файла по длинам
Отсортировать строки файла по количеству гласных букв
Отсортировать строки файла по алфавиту по первым трем буквам
Отсортировать строки файла по количеству одинаковых букв
Найти в каждой строке файла заданную пользователем последовательность символов и заменить на введенное слово
7.12 Требования к отчету
Отчет лабораторной работы представляется в печатном виде.
Отчет должен содержать:
- титульный лист;
- содержание;
- цель лабораторной работы;
- вариант задания;
- исходный текст программы;
- результат в 16-тиричном и 10-тичном виде.
7.13 Контрольные вопросы и упражнения
1) Опишите работу функции создания файла с примером.
2) Опишите работу функции открытия существующего файла с примером.
3) Опишите работу функции открытия и создания файла с примером.
4) Опишите работу функции чтения файла с примером.
5) Опишите работу функции записи в файл с примером.
6) Опишите работу функции переименования файла с примером.
7) Опишите работу функции удаления файла с примером.
8) Опишите работу функции закрытия файла с примером.
9) Опишите работу функции поиска файла с примером.
Список литературы:
Питер Абель Assembler и программирование для IBM PC 1995.
В. Юров Assembler, 2001
Пильщиков В.Н. Программирование на языке ассемблера IBM PC.-М.: “ДИАЛОГ-МИФИ”,1997.-288с.
Орлов С.Б. Программа-справочник по системе программирования турбо ассемблер 2.0. Руководство пользователя. М. 1990г.
Павловская С.С. Методические указания к выполнению лабораторных работ по машинно-ориентированным языкам, Волгоград,2004,-24с
Составители: Лидия Александровна Макушкина
Игорь Александрович Макушкин
Основы языка Assembler.
Учебное пособие (лабораторный практикум) по дисциплине «Машинно-ориентированные языки».
Редактор Е.М. Марносова
Темплан 2008 г., поз №
Подписано в печать___________Формат 60*84 1.16
на магнитоносителе Усл. печ. л. 1,86
Уч.-изд. л. 1,92 Заказ ___________
Волгоградский технический университет
400131 Волгоград, просп. им. В.И. Ленина, 28
РПК «Политехник»
Волгоградского государственного технического университета
400131 Волгоград, ул. Советская, 35