Студопедия

КАТЕГОРИИ:

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

СИСТЕМА КОМАНД МИКРОПРОЦЕССОРА СЕРИИ КР 580.




ФОРМАТЫ КОМАНД И СПОСОБЫ АДРАСАЦИИ

Классификация команд

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

1. По назначению

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

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

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

1.4. Команды инвертирования и установки переносов, позволяют инвертировать содержимое аккумулятора и устанавливают значение флага FС.

1.5. Команды сравнения, позволяют выполнить операции сравнения над операндами, расположенными в различных блоках микропроцессора.

1.6. Команды сдвига, позволяют осуществить сдвиг операнда в аккумуляторе вправо или влево на один разряд по различным правилам. При сдвиге влево на один разряд, содержимое аккумулятора увеличивается в два раза, при сдвиге вправо на один разряд, содержимое аккумулятора уменьшается в два раза.

1.7. Команды перехода вызова и возврата, позволяют осуществить условный и безусловный переходы, вызвать подпрограммы и вернуться из подпрограммы.

1.8. Команды стека, позволяют осуществить общение или обмен данными со стеком, записывать и читать информацию из стека.

1.9. Команды ввода/вывода и управления, позволяют управлять работой МП и осуществлять связь микропроцессора с внешними устройствами.

По длине

2.1. Однобайтные команды – в таких командах одного байта достаточно для выполнения команды.

Например: команда ADD B имеет длину один байт, в котором задан  код операции.                 

2.2. Двухбайтные команды – для реализации такой команды необходим однобайтный операнд.

Например: команда MVI A, 2D – имеет длину два байта: в первом байте задан код операции (MVI A), во втором байте задан однобайтный операнд (2D). По этой команде число 2D запишется в аккумулятор.

2.3. Трехбайтные команды– для реализации таких команды необходим двухбайтный операнд.

  Например: команда LXI H, 05 04 – имеет длину три байта: в первом байте задан код операции (LXI H), во втором байте задан первый байт операнда (05), в третьем байте задан второй байт операнда (04). По этой команде число 05 запишется в  регистр Н, а число 04 запишется в регистр L.

По способам адресации

Способ адресации – это способ задания адреса операнда.

3.1. Команды снепосредственным способомадресации

Непосредственный способ адресации - это такой способ адресации, при котором операнд непосредственно задан в формате команды.

Например: команда MVI A, 2D – имеет длину два байта:  в первом байте команды задан код операции (MVI A), во втором байте непосредственно задан операнд (2D). По этой команде число 2D (операнд) будет записано в аккумулятор.

С помощью таких команд можно записать числа в микропроцессор для дальнейшего их использования.

3.2. Команды с прямым способом адресации.

Прямой способ адресации - это такой способ адресации, при котором адрес операндапрямо задан в формате команды.

Например: команда LDA 02 3C – по этой команде содержимое ячейки памяти с адресом 02 3C загрузиться в аккумулятор, где LDA – код операции (первый байт), 02 3C – прямо задан адрес ячейки памяти(второй и третий байты).

3.3. Команды с регистровым способом адресации.

Регистровый способ адресации - это такой способ адресации, при котором операнды располагаются в регистрах микропроцессора.

Например: MOV A, B по этой команде (В)→(А) – содержимое регистра В запишется (скопируется) в аккумулятор.

3.4. Команды с косвенно-регистровым способомадресации.

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

LDAX B – по этой команде содержимое ячейки памяти, адрес которой записан в паре регистров ВС, записывается в аккумулятор. (<BC>)→(А).

Команды восьмиразрядного микропроцессора КР580

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

Восьмиразрядный микропроцессор может выполнить 256 различных команд. Это объясняется тем, что восьмиразрядная шина данных микропроцессора имеет  256 различимых состояний от 0000 0000 до 1111 1111.

Сокращения, принятые при описании команд.

R, R1, R2… - любой из регистров общего назначения, включая аккумулятор (A, В, С, D, E, H, L).

( ) – данные или содержимое. Например: (В) – содержимое регистра В.

 < > - адрес. Например: <ОА 3В > - адрес ячейки памяти .

 (<ОА 3В >) – содержимое ячейки памяти с адресом ОА 3В.

(<HL>) – содержимое по адресу, заданным содержимым пары регистров HL.

М – это ячейка памяти, адрес которой задан в паре регистров общего назначения.

Б2 – второй байт команды.

Б3 – третий байт команды.

C,Z,S,P,C/ - флаги генерируемые при выполнении команды.

УС – указатель стека.

СК – счётчик команд.

 

КОМАНДЫ ПЕРЕДАЧИ

Общая характеристика.

Не генерируют флагов, позволяют скопировать содержимое одного блока МП в другой, бывают одно-, двух- и трёхбайтные, используют все 4 способа адресации. Содержимое источника информации не меняется при выполнении команд.

Команды передачи с непосредственным способом адресации

Код операции Название Флаги Байт Содержание команды
MVI R,Б2 Занесение байта данных в регистр нет 2 (Б2)®(R).
LXI B Б2,Б3 Загрузка двух байт в пару B,C нет 2 (Б2,Б3)®( BC),
LXI D Б2,Б3 Загрузка двух байт в пару D,E нет 3 (Б2,Б3)®( DE )
LXI H Б2,Б3 Загрузка двух байт в пару H,L нет 3 (Б2,Б3)®( HL)
LXI SP Б2,Б3 Загрузка двух байт в УС нет 3 (Б2,Б3)®(УС),

Команды передачи с прямым способом адресации

Код операции Название Флаги Байт Содержание команды
LDA Б2,Б3 Загрузка А (прямая) нет 3 (<Б2,Б3>)®(А).
STA Б2,Б3 Запоминание содержимого А в памяти нет 3 (А)®(<Б2,Б3>).
LHLD Б2,Б3 Загрузка пары HL из памяти (прямая) нет 3 (<Б2,Б3>)®(L), (<Б2,Б3>+1)®(H).
SHLD Б2,Б3 Запоминание содержимого пары HL в памяти нет 3 (L)®(<Б2,Б3>), (H)®(<Б2,Б3>+1).

 

Команды передачи с регистровым способом адресации

Код операции Название Флаги Байт Содержание команды
MOV R1,R2 Пересылка из регистра в регистр нет 1 (R2) ®(R1).
XCHG Обмен содержимого регистров нет 1 (HL) «(DE)
XTHL Обмен содержимого регистров и указателя стека нет 1 (HL)« (УС)
SPHL Загрузка указателя стека нет 1 (HL) ® (УС)

Команды передачи с косвенно-регистровым способом адресации

Код операции Название Флаги Байт Содержание команды
MOV M,R Пересылка из регистра в память нет 1 (R)®(<HL>).
MOV R,M Пересылка из памяти в регистр нет 1 (<HL>)®(R).
LDAX B Загрузка А из ячейки памяти с адресом в паре BC нет 1 (<B,C>)®(A).
LDAX D Загрузка А из ячейки памяти с адресом в паре DE нет 1 (<D,E>)®(A).
STAX B Запоминание содержимого А в ячейке памяти с адресом в паре BC нет 1 (A)®(< B,C >)
STAX D Запоминание содержимого А в ячейке памяти с адресом в паре DE нет 1 (A)®(< D,E >)
MVI M,Б2 Занесение байта данных в память нет 2 (Б2) ®(<HL>)

 

АРИФМЕТИЧЕСКИЕ ОСНОВЫ ЭВМ

Вся информация внутри микропроцессора представляется в двоичной системе счисления.

СИСТЕМЫ СЧИСЛЕНИЯ, ПРИМЕНЯЕМЫЕ В ЭВМ

Двоичная (бинарная)

Двоичная система наиболее проста для использования в ЭВМ. Это объясняется техническими возможностями современной схемотехники.

Число раскладывается по степеням числа 2: N2=∑аi·2i

а = 0;1 - алфавит системы

Например:27,25=1·24+1·23+0·22+1·21+1·20+0·2-1+1·2-2=11011,01 В

             27,25=16 + 8 + 0 + 2 +1 + 0 + 0,25

В – признак того, что число представлено в двоичной системе.

Восьмеричная

Применяется для проверки работы вычислительных машин и при отладке программ.

Число раскладывается по степеням числа 8: N8=∑аi·8i

а = 0; 1; 2; 3; 4; 5; 6; 7 - алфавит системы.

Например:215=3·82+2·81+7·80=327 Q

              215= 192+ 16 + 7

Q – признак того, что число представлено в восьмеричной системе.

Шестнадцатеричная

Используется в качестве промежуточной для записи чисел и команд в программе.

Число раскладывается по степеням числа 16:N16=∑аi·16i

а = 0; 1; 2; 3; 4; 5; 6; 7; 8 ;9; A; B; C ;D; E; F; - алфавит системы.

Например:

215=D·161+7·160=D7 Н

215= 13·16 +7·1

215= 208 + 7

H – признак того, что число представлено в шестнадцатеричной системе.

Двоично - десятичная

Существует промежуточная система, которая называется двоично-десятичная, в которой каждая десятичная цифра представляется тетрадой (4 двоичных разряда) двоичных цифр. Применяется при переводе десятичных чисел в двоичные и наоборот.

Например: десятичное число 74695 в двоично-десятичной форме будет представлено в следующем виде 0111 0100 0110 1001 0101

7      4       6     9    5

0111 0100    0110 1001 0101

Таблица эквивалентов чисел в различных системах счисления

Десятичная Двоичная Шестнадца-теричная Двоично- - десятичная Восьмеричная
0 0000 0 0000 0
1 0001 1 0001 1
2 0010 2 0010 2
3 0011 3 0011 3
4 0100 4 0100 4
5 0101 5 0101 5
6 0110 6 0110 6
7 0111 7 0111 7
8 1000 8 1000 10
9 1001 9 1001 11
10 1010 А 0001 0000 12
11 1011 В 0001 0001 13
12 1100 С 0001 0010 14
13 1101 D 0001 0011 15
14 1110 Е 0001 0100 16
15 1111 F 0001 0101 17
16 1 0000 10 0001 0110 20
17 1 0001 11 0001 0001 21

СПОСОБЫ КОДИРОВАНИЯ ЧИСЕЛ

АЛУ микропроцессора можно выполнить только 2 операции: сложение и инвертирование. В этом случае вычитание заменяется сложением по определенным правилам с использованием специальных кодов.










Последнее изменение этой страницы: 2018-05-29; просмотров: 158.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...