3 Команды пересылки и загрузки. Способы адресации.
Перед тем, как приступить к изучению команд МП 8086, целесообразно
определить границы состава команд МП 8086, которые не следует переходить.
Дело в том, что МП 8086 имеет множество дублирующих друг друга команд.
Это связано с тем, что МП 8086 «вырос» из МП 8080, и разработчики
сохранили в 86-м процессоре до 70% состава команд 80-го процессора. А 80-й
процессор — однобайтовый. Это решение фирмы Intel никак нельзя назвать
удачным. Поэтому есть смысл изучить прежде всего команды 86-го процессора
как 16-разрядного МП.
Далее необходимо отметить еще одну проблему, которая заключается в
том, что этих команд набирается свыше 4000. И если их все изучать по одной,
то на это может уйти много времени. Наиболее эффективный метод изучения
команд —комплексный, на основе объединения однотипных по коду операции
(КОП) команд и синтеза КОП и команд в целом, как в машинных кодах так и в
ассемблере. При этом полезно еще раз показать обоснованность использования
дублирующего машинные команды и, на первый взгляд, искусственного языка
ассемблера. Чтобы выявить разницу между машинным кодом команды и
ассемблером этой же команды, рассмотрим следующий пример. Как люди
общаются друг с другом? Звуком, то есть акустическими волнами, которые
представляют собой сигнал со сложным спектром. Это аналог машинного кода.
Со временем человечество сообразило, что таким сложным физическим
процессом оперировать можно только в очень ограниченных случаях. И
придумало для каждого звука его «ассемблер» (assemble - собирать,
монтировать), то есть букву — графический символ. Этому «ассемблеру» нас
учат сразу с детских лет, чтобы мы могли общаться и развиваться, не
ограничиваясь только использованием звука. Представить трудно, сколько
было бы проблем, и где бы было сегодня человечество, если бы не придумали
этот удобный заменитель звуковому сообщению.
Так и в ЭВМ для каждой индивидуальной и, как правило, сложной
совокупности логических действий придумали простое и понятное
обозначение. В чем же оно заключается? Пусть, например, необходимо из
пункта А в пункт В переслать то, что хранится в пункте А. Принятое
обозначение комментария в краткой форме: В:= <А>, т.е. В присвоить
содержимое А. Или: <А> В, то есть содержимое А переслать в В. Итак,
АиВ— это, собственно, источник (src) и приемник (dst) сообщений (не
физического предмета). Вопрос: а что остается в А? А то же, что и было;
потому что, если один абонент передал другому сообщение, то теперь этим
сообщением владеют оба. Классически на ассемблере это обозначают:
MOV A,B
(сокращенное от move —переместить). Именно такой ассемблер у многих
микропроцессоров и ОЭВМ. Но фирма Intel (вероятно, чтобы не иметь проблем
с авторскими правами), решила это сделать так:
21