Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

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






Краткие сведения из теории






Микропроцессор БИС КР580ВМ80 имеет фиксированный набор команд. Время выполнения команд определяется процессами получения, декодирования и выполнения команды. Это время можно представить состоящим из ряда временных интервалов. Наиболее короткий временной интервал, равный периоду синхросигналов МП БИС, называется машинным тактом. Время, необходимое для извлечения 1 байт информации из памяти пли внешнего устройства или выполнения команды, определяемой одним машинным словом, называется машинным циклом. Машинный цикл для МП БИС может включать в себя 3-5 машинных тактов. В зависимости от вида команды время выполнения может состоять из 1-5 машинных циклов. Для МП БИС имеется 10 различных типов машинных циклов: извлечение кода команды (цикл M1), чтение данных из памяти, запись данных в память, извлечение данных из стека, запись данных в стек, ввод данных из внешнего устройства, запись данных во внешнее устройство, цикл обслуживания прерывания, останов, обслуживание прерывания в режиме останова. Первым машинным циклом при извлечении любой команды является цикл M1.

На каждом машинном МП БИС проверяется состояние сигнала «Готов» на своем входе. Нулевой сигнал на этом входе приостанавливает нормальную работу МП БИС, при этом на магистралях микроЭВМ присутствует вся информация, передаваемая на рассматриваемом машинном цикле. В учебной микроЭВМ это используется для исследования выполнения команд по машинным тактам. В этом режиме информация на магистралях микроЭВМ отображается светодиодами состояния.

Программа записывается в микроЭВМ в последовательных ячейках памяти.

Регистр флагов (признаков) имеет 5 разрядов, каждый из которых устанавливается по определенному правилу в соответствие с выполнением МП БИС последней команды.

1. Флаг (разряд) переноса С (CARRY)

В него записывается «1», если при выполнении арифметической или логической команды были перенос из аккумулятора А или перенос из старшего бита, в противном случае в разряд записывается «0».

2. Флаг (разряд) знака S (SIGN)

В него записывается «1», если при выполнении арифметической или логической команды в старшем (седьмом) разряде аккумулятора записана «1», в противном случае в разряд записывается «0».

3. Флаг (разряд) нулевого результата Z (ZERO)

В него записывается «1», если при выполнении арифметической или логической команды во всех разрядах числа в аккумуляторе имеются нули, в противном случае в разряд записывается «0».

4. Флаг (разряд) полупереноса Н (AC-AUX. CARRY)

В него записывается «1», если при выполнении команды в аккумуляторе возникает перенос между младшей и старшей тетрадами байта.

5. Флаг четности Р (PARITY)

В него записывается «1», если при выполнении команды количество единиц в разрядах аккумулятора будет четным.

Рассмотрим простейшую программу (программа № 1), извлекающую число из адреса памяти 0В00, инвертирующую его и записывающую результат в адрес памяти 0В01.

Программа № 1 (в мнемокодах)

Мнемокод LDA 0B00 CMA STA 0B01 RST1 Комментарий Получить число из адреса 0В00 Инвертировать число Записать результат по адресу 0В01 Прервать выполнение команды

 

При записи программ все числа представляются в шестнадцатеричной системе счисления.

Для записи программы в микроЭВМ необходимо перевести мнемокоды команд в машинные коды. Команды в программе могут быть одно-, двух- или трёхбайтные и должны в памяти занимать, соответственно, один, два или три адреса.

Программа № 1 (размещение по адресам памяти)

Адрес Число Комментарий
  ЗА код команды LDA
    младший байт адреса
  старший байт адреса
  2F код команды СМА
    код команды STA
    младший байт адреса
  старший байт адреса
  CF код команды RST1

 

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

Программа № 1 (общий вид записи)

Адрес Машинный код Мнемокод Комментарий
  3A 000B LDA 0B00 получить число из адреса 0B00
  2F CMA инвертировать число в аккумуляторе
  32 010B STA 0B01 записать число по адресу 0B01
  CF RST 1 прервать выполнение программы

 

Здесь используется прямой способ адресации.

Рассмотрим программу, аналогичную программе №1, с использованием косвенного способа адресации (программа № 2).


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал