Вывод элемента цепочки в порт ввода-вывода
Операция вывода элемента цепочки в порт ввода-вывода реализуется командой
OUTS (Output String), имеющей следующий формат:
outs
Эта команда выводит элемент цепочки в порт, номер которого находится в ре-
гистре DX. Адрес элемента цепочки определяется операндом адрес_источника.
266 Глава 12. Цепочечные команды
на то, что цепочка, из которой выводится элемент, адресуется указани-
ем
операнда, значение адреса должно быть явно сформировано в паре регис-
тров
Размер структурных
должен быть согласован
с размером порта — он определяется директивой резервирования памяти, с по-
мощью которой выделяется память для
элементов цепочки. После пе-
ресылки команда OUTS производит
содержимого регистра ESI/SI на ве-
равную размеру элемента цепочки, участвовавшего в операции пересылки.
этом, как обычно, учитывается
флага
Подобно команде INS транслятор преобразует
OUTS в одну из трех ма-
команд без
с
го размера:
String Byte)
цепочку байтов в порт ввода-вывода;
String Word) — вывести цепочку слов в порт ввода-вывода;
String
Word) —
цепочку двойных слов в порт
ввода-вывода.
В
примера рассмотрим фрагмент программы, которая выводит после-
символов в порт ввода-вывода с номером 378
соответствую-
щий
. d a t a
db "Текст для печати"
lea
организации работы с портами недостаточно знать их номера и назначе-
менее важно знать и понимать алгоритмы их работы. Эти сведения можно
найти в
на устройство (но, к сожалению, далеко не всегда).
Реализации более сложных алгоритмов
основанные на работе с цепо-
чечными командами, приведены в |8].
Итоги
команд
имеет
интересную группу команд, позволя-
производить
блоками элементов до 64 Кбайт или 4 Гбайт
в зависимости от
разрядности адреса
или
элементов логически могут представлять собой последовательности эле-
ментов с любыми
в памяти в виде двоичных кодов.
Единственное
состоит в том, что размеры элементов в
блоках
значением 8,
пли 32
Команды обработки строк
возможность выполнения семи
раций-примитивов,
поэлементно.
Каждая операция-примитив
тремя разными машинными коман-
и одной псевдокомандой, которая преобразуется транслятором одну из
Итоги 2G7
трех
команд.
г преобразования
ется
в команде.
Процессор всегда
что
ном
(адресуемом
а
в
посредством
ра DS).
Процессор адресует
через
EDI/DI, а строку-источник —
через регистр ESI/SI.
Допускается
для
для строки-при-
емника этого делать нельзя.
работы цепочечных команд
в том, что
регистров EDI/DI и ESI/
SI в
от
цепочечной
Что
дит с этими
флага DF, которым
ют команды
и
на которое
содержимое индексных
регистров, определяется
элементов строки или кодом операции цепо-
чечной команды.
Do'stlaringiz bilan baham: |