Введение
Требования к программному и аппаратному обеспечению
О данном руководстве
Руководство пользователя
Соглашения по обозначениям
Глава 1. Установка Турбо Ассемблера в системе
Файлы на дистрибутивном диске
Установка Турбо Ассемблера
Глава 2. Начало работы с Турбо Ассемблером
Ваша первая программа на Турбо Ассемблере
Ассемблирование вашей первой программы
Компоновка программы
Запуск вашей первой программы
Что происходит?
Модификация вашей первой программы на Турбо Ассемблере
Вывод информации на устройство печати
Ваша вторая программа на Турбо Ассемблере
Запуск программы REVERSE.ASM
Глава 3. Работа с командной строкой Турбо Ассемблера
Запуск Турбо Ассемблера из DOS
Параметры командной строки
Параметр /A
Параметр /B
Параметр /C
Параметр /D
Параметр /E
Параметр /H или /?
Параметр /I
Параметр /J
Параметр /KH
Параметр /KS
Параметр /L
Параметр /LA
Параметр /M
Параметр /ML
Параметр /MU
Параметр /MV#
Параметр /MX
Параметр /N
Параметр /P
Параметр Q
Параметр /R
Параметр /S
Параметр /T
Параметр /V
Параметр /W
Параметр /X
Параметр /Z
Параметр /ZD
Параметр /ZI
Косвенные командные файлы
Файлы конфигурации
Глава 4. Природа языка Ассемблера
Архитектура компьютера
Язык Ассемблера
Процессоры 8088 и 8086
Возможности процессора 8086
Память
Ввод и вывод
Регистры
Регистр флагов
Регистры общего назначения
Регистр AX
Регистр BX
Регистр CX
Регистр DX
Регистр SI
Регистр DI
Регистр BP
Регистр SP
Указатель инструкций
Сегментные регистры
Регистр CS
Регистр DS
Регистр ES
Регистр SS
Набор инструкций процессора 8086
Компьютеры IBM PC и XT
Устройства ввода и вывода
Системное программное обеспечение для семейства IBM PC
Операционная система DOS
Получение символов с клавиатуры
Вывод символов на экран
Вывод символов на экран
Базовая система ввода-вывода
Выбор режима экрана
Иногда необходимо обратиться к аппаратным средствам
Другие ресурсы
Глава 5. Основные элементы программы на языке Ассемблера
Элементы и структура программы на языке Ассемблера
Зарезервированные слова
Формат строки
Метки
Мнемоники инструкций и директивы
Директива END
Операнды
Регистровые операнды
Операнды-константы
Выражения
Операнды-метки
Режимы адресации к памяти
Комментарии
Директивы определения сегментов
Упрощенные директивы определения сегментов
Директивы .STACK, .CODE и .DATA
Директива DOSSEG
Директива .MODEL
Другие упрощенные директивы определения сегментов
Стандартные директивы определения сегментов
Директива SEGMENT
Директива ENDS
Директива ASSUME
Стандартные или упрощенные директивы определения сегментов?
Выделение данных
Биты, байты и основания
Представление числовых значений
Выбор основания по умолчанию
Инициализированные данные
Инициализация массивов
Инициализация строк символов
Инициализация выражений и меток
Неинициализированные данные
Именованные ячейки памяти
Перемещение данных
Выбор размера данных
Данные со знаком и без знака
Преобразование размеров данных
Доступ к сегментным регистрам
Перемещение данных в стек и из стека
Обмен данными
Ввод-вывод
Операции
Арифметические операции
Сложение и вычитание
32-разрядные операнды
Увеличение и уменьшение
Умножение и деление
Изменение знака
Логические операции
Сдвиги и циклические сдвиги
Циклы и переходы
Безусловные переходы
Условные переходы
Циклы
Подпрограммы
Выполнение подпрограмм
Передача параметров
Возвращаемые значения
Сохранение регистров
Пример программы на языке Ассемблера
