Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Тип кода операции с dst и rsc

Declamatory Style.

Publicistic Style.

It is always called “oratorical”. The aim of the speaker is to extend persuasive and emotional influence on the listeners. It can be heard in political, judicial, oratorical speeches, in sermons, debates, at congresses, meetings. It needs special training. On the other hand, the proper response of the audience inspires the speaker and stimulates him on a successful talk.

It is also called as “artistic”, “ acquired” or “staged”. It is highly emotional and expressive, needs special training. The aim is to appeal to the mind, will and feelings of the listener. It is heard on the stage, on the screen, in a T.V. studio, it is reflected in verse speaking, prose readings and recitations. It displays a great variety of intonation.

Conversational Style.

Its aim is to analyze variations that occur in spontaneous, everyday speech. It is the most commonly used type of intonation style. It is called familiar and is used in everyday communication, in natural conversation of relatives, friends, well-acquainted people. A wide range of intonation patterns is used here. The conversation lacks in planning, semantic blocks, the words are commonly repeated, the speech is characterized by “non-fluency”, “errors”, slips of the tongue or extra fluency with elision in many words. One can hear whistles, laughs, giggles, see gesticulations and grimaces of talking people. A nose-to nose distance is the most comfortable for such talks, which are regarded as intimate.

 

 

 

По формату КОП видно, что расположение dst и src такое же, как и в ассемблере: слева приемник (dst), справа источник (src). В простеньких микропроцессорах фирмы Intel так и было. Но в этом микропроцессоре, чтобы придать ему такие же мощные формы адресации операндов, как у микропроцессоров фирм DEC или Motorola, к dst (разряды D7, D6) «прилепили» расширение (разряды D2..DO). А для источника (разряды D5..D3) оставили по-прежнему скромные возможности: это адрес (или номер) одного из 8-ми регистров МП. Вот с него и начнем.

Посмотрим на архитектуру МП 8086 (рисунок 9.1), на адреса регистров. Видно, что здесь есть элементы с одинаковыми адресами. Например, регистр DI имеет адрес 1112, и регистр ВН имеет тот же адрес. Единственная разница в том, что DI —16-разрядный регистр, а ВН —8-разрядный. Значит, в КОП должен быть предусмотрен отличительный признак байта или слова. Это разряд D8 (W— word — слово). Для него возможны следующие случаи:

а) W = 0 — значит, что все адреса касаются однобайтовых данных;

б) W = 1 — значит, что все адреса имеют отношение к словам.

Не помешает напомнить, что байт — 8 разрядов, а слово — это 2 байта, то есть 16 разрядов. Следовательно, для нашего примера, если D8=0 (W=0), то src есть ВН; а если D8=l (W=l), то src есть DI, то есть совсем другой и уже 16-и разрядный регистр.

Теперь, что касается dst. Здесь несколько сложнее. Под адрес dst отведено 5 разрядов. Следовательно, число вариантов 25=32. Из формата видим, что основой адресации dst является mod (D7,D6) (moda — модификация). Глядя на расширение dst, обнаруживаем, что возможны принципиально только два варианта: приемник — это или регистр микропроцессора (reg), или элемент ЗУ (mem - MEMORY — память).

1-й вариант— Приемником является регистр (reg); в этом случае mod=l 1. Выделим этот вариант в виде таблицы 10.1:

 

Таблица 10.1

mod dst
  reg

 

Номера регистров в поле D2..DO определяются точно так же, как для src.

2-й вариант — Приемником является элемент ЗУ (ОЗУ или ПЗУ). Здесь возможны 24 подварианта. Их можно объединить в 7 глобальных групп (собственно, это и является главным критерием). Для mod после таблицы 10.1 осталось 3 комбинации: 002, 012, 102. Составим соответствующую этим комбинациям таблицу, где число столбцов будет 3,а число строк – 23=8 (комбинации в D2..D0). В координатных клетках обозначим уравнение адреса ЕА, то есть, как он складывается (ЕА—эффективный адрес без учета сегментного регистра).

В таблице 10.2 выделены глобальные группы в количестве 6 штук. Они определяются комбинациями разрядов D7, D6 и D2. Кроме этого, в таблице специально выделено место, которое является исключением из правил. Данный вид адресации называется прямым. Вообще, по отношению к способам адресации установилась некая терминология.

Непосредственная адресация: адрес «запрятан» в коде операции. Очевидный пример: mod=l1, значит dst — регистр, номер которого указывается в КОПе (в разрядах D2..DO).

Прямая адресация. Следом за КОПом должен следовать адрес ячейки памяти (сначала младший байт, затем — старший). Таким образом, в машинном коде сразу виден адрес dst. В таблице 10.2: mod=00, seg/mem=110.

Косвенная адресация. В коде операции указывается источник (хранилище) адреса ячейки памяти. Пример тому—место в таблице 10.2: mod=00, reg/mem=100, 101, 111. Во всех этих случаях адрес dst автоматически будет извлекаться из регистра SI, или DI, или ВХ. Значит, прежде чем обратиться к ячейке памяти, адрес этой ячейки надо загрузить в соответствующий регистр. Иначе получится на «деревню к дедушке».

 

Таблица 10.2. Формирование эффективного адреса dst (mod.7- 011)

 

Reg / mem mod (D7,D6)
D2Dl D0      
  EA=<BX>+<SI> EA=<BX>+<SI>+см.1б ЕA=<BX>+<SI>+см.2б
  EA=<BX>+<DI> EA=<BX>+<DI>+см.lб ЕA=<BX>+<DI> +см.2б
  EA=<BP>+<SI> EA=<BP>+<SI>+см.lб EA=<BP>+<SI>+см.2б
  EA=<BP>+<DI> EA=<BP>+<DI>+см.1б EA=<BP>+<DI>+см.2б
  EA=<SI> EA=<SI>+cм.lб ЕA=<SI>+см.2б
  EA=<DI> EA=<DI>+cм.lб EA=<DI>+см.2б
  Прямая адресация ЕА=адрес(2байт) EA=<BP>+cм.lб ЕА=<ВР>+см.2б
  EA=<BX> EA=<BX>+см.1б EA=<BX>+см.2б

 

 

Относительная адресация. В этом случае вместо прямого адреса следом за кодом операции располагают смещение (disp). Это смещение (в таблице 10.2 обозначено: см.) складывается с текущим адресом, который может храниться в IP, BP, ВХ, SI, DI. Причем, это смещение со знаком (старший разряд выступает в качестве знакового бита), поскольку смещение может быть как вперед, так и назад, и в дополнительном коде. Еще раз следует отметить, что положительные числа со знаком в прямом и дополнительном кодах совпадают, а отрицательное число в прямом коде преобразуют в дополнительный инверсией его (знак не меняют) и добавлением к результату единицы.

Все эти четыре способа — классика. А далее возможны комбинации из них способов со смещениями, что и следует из таблицы 10.2 для МП 8086. Здесь смещение может быть коротким (см. 1б. - смещение размером в один бант) со знаком в D7 и в дополнительном коде, или нормальным (см. 2б смещение размером в два байта) со знаком в D15 и тоже в дополнительном коде. И конечный адрес в самом сложном случае может формироваться как сумма двух регистров и смещения (смотрите mod=01, mod=10, и reg/mem=000...011). Ниже будет представлено несколько примеров на конкретной команде, но окончательно все способы адресация к ячейке ЗУ можно твердо освоить только после соответствующих практических занятий по синтезу кодов команд и ассемблера этих команд, и при выполнении этих команд на учебно-отладочном устройстве.

Теперь последний штрих к представленному материалу. Если проанализировать представленный выше формат команд, то выходит, что если приемником (dst) может быть или регистр МП, или ячейка ЗУ, то источником (src) — только регистр. Получается, что невозможно источником сделать ячейку памяти? Вот для того, чтобы это можно было сделать, в КОПе отводится еще один разряд D9 для изменения направления пересылки (d — down — вниз, обратно). Если d=0, то направление не меняется: dst остается приемником, a src - источником. Если же d=1, то направление переворачивается в обратную сторону, то есть src — становится приемником, a dst —источником.

И все равно остается проблема: как просто переслать данные из одной ячейки ЗУ в другую ячейку ЗУ? Только через регистр МП с помощью двух команд? Получается, что так. Можно только сожалеть, что столько сложностей при формировании КОП, а подобную пересылку с помощью одной команды выполнить невозможно.

 

 

<== предыдущая лекция | следующая лекция ==>
Informational Style | Тип кода операции с dst. Группа команд MOV
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 343; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.02 сек.