Сделай Сам Свою Работу на 5

Вопрос 5. Полный цикл работы МП при выполнении команды





Выборка каждого байта команды производится в два этапа.

1. На первом этапе адрес байта команды, содержащийся в СК, передается в РА, а затем по адресным шинам в ОЗУ, где происходит выбор адресуемого байта.

2. На втором этапе - передача содержимого адресуемого байта по шинам данных в МП и увеличение содержимого СК на 1. При этом, если выбирается не последний байт команды то новое содержимое СК будет представлять адрес следующего байта текущей команды, а если выбирается последний байт, то адрес первого байта следующей команды.

3. При выборке первого байта команды его содержимое передается и фиксируется в РК.

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

5. В соответствии с видом операции БУ задает необходимую последовательность управляющих воздействий, приводящих к выборке следующих байтов команды или к использованию команды.

Пример 1. Описать процесс выборки и исполнения команды, по которой содержимое регистра РОН суммируется с содержимым аккумулятора А. Результат операции фиксируется в аккумуляторе. Команда однобайтовая с прямой регистровой адресацией. В коде команды первые пять старших разрядов определяют код операции; три последних-код адреса регистра C. Команда записана в ячейку ОЗУ с адресом (номером) Число записано в регистр C РОН. В аккумулятор A записано число



Процесс выборки и исполнения команды можно условно разбить на несколько этапов:

1. Адрес команды 017616 записывается в РА.

2. Адрес команды из РА по шине адреса поступает ОЗУ.

3. ОЗУ находит ячейку с указанным адресом и считывает команду в буферный

4. регистр ОЗУ.

5. Команда из буферного регистра ОЗУ по внешней шине данных, буфер данных (БД), внутренней шине данных поступает в РК.

6. ДКОп распознает, что выборка команды закончна и над содержимым аккумулятора и регистра С РОН необходимо произвести суммирование.

7. Содержимое РА увеличивается на единицу и формируется адрес следующей ячейки ОЗУ

8. БУ вырабатывает последовательность сигналов, под воздействием которых числа из аккумулятора и из из регистра C РОН поступают в АЛУ. АЛУ производит операцию суммирования



9. Pезультат операции записывается в аккумулятор, замещая в нем прежнее число

10. Выполнение команды закончено. Начинается выборка следующей команды с адресом

Вопрос 6. Система команд МП

Микропроцессор имеет базовую систему команд, в состав которой входят следующие группы:

· команды пересылки данных:

· команды пересылки данных внутри МП (MOV, PUSH, POP, XCHNG и т.д.);

· команда ввода-вывода (IN, OUT);

· операции с флагами;

· операция с адресами (LEA, LDS и т.д.);

· арифметические команды:

· основные (сложение, вычитание, умножение, деление);

· дополнительные (INS, DEC и др.);

· логические команды (сдвиг, дизъюнкция, конъюнкция, отрицание равнозначности и др.);

· команды обработки строковых данных (пересылка, сравнение, сканирование, слияние/разделение и др.);

· команды передачи управления (безусловный переход, условный переход, прерывания, переход с возвратом);

· команды управления ("нет операций", "внешняя синхронизация" и т.д.).

· каждая команда имеет большое число модификаций, чаще всего определяемых режимом адресации данных (операндов).

Команды обращения к памяти

Рисунок 4.

Команда: LOAD REGISTR (загрузка регистра)

Символическая форма: LDR r

Описание: (М[< B2 > < B3 > ])r

Содержимое ячейки памяти передаётся в общий регистр r.

Старшие 8 разрядов адреса ячейки берутся из второго байта команды, а младше 8 разрядов - из третьёго байта.

Программирование на машинном язык. Программа должна быть представлена в той форме, в которой её воспринимает машина. В частности, команды должны быть представлены в виде последовательностей из нулей и единиц, поскольку это единственная понятная ЭВМ форма. Однако выписывать длинные последовательности из нулей и единиц довольно утомительно. Поэтому при записи команд применяется более удобная шестнадцатеричная система.



Например, трёх битовая команда иллюстрированного процессора, загружается в аккумулятор содержимое ячейки памяти с адресом 0110 1111 1101 имеет вид

в шестнадцатеричных обозначениях эта команда запишется так

6F

DB

Двоичное и шестнадцатеричное представление машинного языка неудобно и ненаглядно для человека. Поэтому, как правило, команды представляются в символической форме - используются легко запоминаемые мнемонические обозначения команд. Например предыдущую программу можно записать в виде

LDR 0

6F

DB

Второй и третий байты по-прежнему записаны шестнадцатеричными цифрами, и аккумулятор задан своим номером среди общих регистров, равным 0. Однако операция обозначена трёхбуквенным мнемоническим именем LDR.

Примерпрограммы, в которой к числу, находящемуся в ячейки главной памяти, прибавляется шестнадцатеричная константа 3С. программа приведена в табл. 1. Она выполняется следующим образом.

Таблица 1. Пример программы: "прибавить константу к числу в памяти и записать результат снова в память"

Рисунок 5.

Прежде всего, подаётся прежний импульс на линию "сброс" БУ, по которому на программный счётчик устанавливается 0. Затем подаётся импульс на линию "пуск" БУ, и начинается выполнение программы. Выбираются 3 байта, составляющие первую команду, и программный счётчик увеличивается на 1 после выборки каждого байта. Первая команда пересылает содержимое ячейки памяти 000А в аккумулятор. Поскольку программный счётчик подвинулся на 3 единицы, он теперь содержит 0003. Это адрес следующей команды - загрузки регистра с непосредственным адресом. Команда содержит в себе операнд и удобна для задания константы. Её выполнение приводит к засылке значения 3С, содержащегося во втором байте команды, в общий регистр 1. Теперь программный счётчик содержит 0005, т.е. адрес третьей команды. Её выборка и выполнение приводит к прибавлению содержимого регистра 1 к содержимому аккумулятора и занесению суммы в аккумулятор. Следующая команда передаёт содержимое аккумулятора в ячейку памяти 000В. последняя команда останавливает микропроцессор.

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.