Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ. Эти команды также называют командами обработки строк символов





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

8 бит – байт;

16 бит – слово;

32 бита – двойное слово.

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

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

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

Перечислим операции-примитивы и команды, с помощью которых они реализуются:

пересылка цепочки:

movs адрес_приемника, адрес_источника

movsb

movsw

movsd

сравнение цепочек:

cmps адрес_приемника, адрес_источника

cmpsb

cmpsw

cmpsd

сканирование цепочки:

scas адрес_приемника

scasb

scasw

scasd

загрузка элемента из цепочки:

lods адрес_источника

lodsb

lodsw

lodsd

сохранение элемента в цепочке:

stos адрес_приемника

stosb

stosw

stosd

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

ins адрес_приемника, номер_порта

insb

insw

insd

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

outs номер_порта, адрес_источника

outsb

outsw

outsd

Логически к этим командам нужно отнести и так называемые префиксы повторения (используются в формате машинной команды, где имеются первые необязательные байты префиксов). Один из возможных типов префиксов – это префиксы повторения. Они предназначены для использования цепочечными командами.

Префиксы повторения имеют свои мнемонические обозначения:

rep

repe или repz

repne или repnz

Эти префиксы повторения указываются перед нужной цепочечной командой в поле метки. Цепочечная команда без префикса выполняется один раз. Размещение префикса перед цепочечной командой заставляет ее выполняться в цикле.

Листинг 6.1 Пересылка строк командой movs

; prg_10_1.asm

masm

.modelsmall

.stack 256

.data

source db 'Тестируемая строка', '$'; строка-источник

dest db 19 DUP (' '); строка приемник

.code

assume ds: @data, es: @data

main:; точка входа в программу

mov ax, @data; загрузка сегментных регистров

mov ds, ax; настройка регистров DS и ESна адрес сегмента данных

mov es, ax

cld; сброс флага DF – обработка строки от начала к концу

lea si, source; загрузка в si смещения строки-источника

lea di, dest; загрузка в DS смещения строки-приемника

mov cx, 20; для префикса rep – счетчик повторений (длина строки)

rep movs dest, source; пересылкастроки

lea dx, dest

mov ah, 09h; вывод на экран строки-

; приемника

int 21h

exit:

mov ax, 4c00h

int 21h

end main

СОДЕРЖАНИЕ РАБОТЫ

1. Отладить программу.

2. Написать программу для сравнения цепочек.

ВОПРОСЫ ВЫХОДНОГО КОНТРОЛЯ

1. Перечислите цепочечные команды.







Дата добавления: 2014-11-10; просмотров: 613. Нарушение авторских прав; Мы поможем в написании вашей работы!




Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

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

В теории государства и права выделяют два пути возникновения государства: восточный и западный Восточный путь возникновения государства представляет собой плавный переход, перерастание первобытного общества в государство...

Закон Гука при растяжении и сжатии   Напряжения и деформации при растяжении и сжатии связаны между собой зависимостью, которая называется законом Гука, по имени установившего этот закон английского физика Роберта Гука в 1678 году...

Ситуация 26. ПРОВЕРЕНО МИНЗДРАВОМ   Станислав Свердлов закончил российско-американский факультет менеджмента Томского государственного университета...

Различия в философии античности, средневековья и Возрождения ♦Венцом античной философии было: Единое Благо, Мировой Ум, Мировая Душа, Космос...

Характерные черты немецкой классической философии 1. Особое понимание роли философии в истории человечества, в развитии мировой культуры. Классические немецкие философы полагали, что философия призвана быть критической совестью культуры, «душой» культуры. 2. Исследовались не только человеческая...

Studopedia.info - Студопедия - 2014-2025 год . (0.011 сек.) русская версия | украинская версия