Вывод элемента цепочки в порт ввода-вывода

 

Данная операция позволяет произвести вывод элементов цепочки в порт ввода-вывода. Она реализуется командой outs, имеющей следующий формат:

outs номер_порта,адрес_источника (Output String) — вывести элементы из цепочки в порт ввода-вывода.

Эта команда выводит элемент цепочки в порт, номер которого находится в регистре dx. Адрес элемента цепочки определяется операндом адрес_источника. Несмотря на то, что цепочка, из которой выводится элемент, адресуется указанием этого операнда, значение адреса должно быть явно сформировано в паре регистров ds:esi/si.

Размер структурных элементов цепочки должен быть согласован с размерностью порта. Он определяется директивой резервирования памяти, с помощью которой выделяется память для размещения элементов цепочки.

После пересылки команда outs производит коррекцию содержимого esi/si на величину, равную размеру элемента цепочки, участвовавшего в операции пересылки. При этом, как обычно, учитывается состояние флага df.

Подобно команде ins, транслятор преобразует команду outs в одну из трех машинных команд без операндов, работающих с цепочками элементов определенного размера:

· outsb (OUTput String Byte) — вывести цепочку байт в порт ввода-вывода;

· outsw (OUTtput String Word) — вывести цепочку слов в порт ввода-вывода;

· outsd (OUTput String Double Word) — вывести цепочку двойных слов в порт ввода- вывода.

 

2 Задание по лабораторной работе

 

1.Ввести строку и два отдельных символа;

2.Заменить по всей строке каждый символ, совпадающий с первым отдельно введённым символом на второй отдельно введённый символ.