Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
tze electronika ta mpt mv rgr.doc
Скачиваний:
25
Добавлен:
16.02.2016
Размер:
8.57 Mб
Скачать

Додаток 1.

Рис.1.

Рис.2

Додаток 2.

Система команд мп кр580вм80

Система команд данного МП содержит команды всех основных групп— пересылки, арифметические, логические, команды управления, оперативные, связи с подпрограммами и команды ввода-вывода. Для описания системы команд, приведенной в табл. П3.5—П3.10, используются следующие условные обозначения: DDD и SSS—код одного из рабочих регистров ЦПЭ в формате команды, причем D—регистр-приемник; S—регистр-источник (коды регистров приведены в табл. П3.1); М—ячейка памяти, адрес которой указан в регистровой паре HL; rp—регистровая пара (В, D, Н и УС); RP—код регистровой пары в формате команды, имеющий значения, приведенные в табл. П3.2; rh—регистр пары, в котором содержатся -чаршие разряды, n—регистр пары, в котором содержатся младшие разряды; <В> и <Вз> —второй и третий байты команды соответственно; [( ) ( )]— содержимое ячейки памяти, адрес которой указан в скобках

Т а б л и ц а пз. 1. Коды регистров

Регистр

ЦПЭ

А

В

с

D

Е

Н

L

М

Код

регистра

111

000

001

010

011

100

101

110

Таблица П3.2. Коды регистровых пар

Регистровая пара

ВС

DE

HL

УС

RP

00

01

10

11

Для записи команд при программировании используются мнемокоды; операнды записываются , как правило, в 16-ричном коде. Обозначения цифр и чисел от 0 до 15 в различных системах счисления приведённы в таблице П 3.3.

Т я блиц а ПЗ.З. Системы счисления

Десятичная

Двоичная

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

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

0

0000

0

0

1

0001

1

1

2

0010

2

2

3

0011

3

3

4

0100

4

4

5

0101

5

5

6

0110

6

6

7

0111

7

7

8

1000

10

8

9

1001

11

9

10

1010

12

А

11

1011

13

В

12

1100

14

С

13

1101

15

D

14

1110

16

E

15

1111

17

F

Обозначения флагов и коды условий приведены в таблице П 3.4. Команды МП КР580ВМ80 приведены в табл. П 3.5—П 3.10.

Таблица П3.4. Коды условий и значения флагов

Условие

(ССС) –код условия в формате команды

Условие

(ССС) – код условия в формате команды

NZ— ненулевой резуль­тат текущей,(Z)=0

000

Р0 — нечетность числа единиц результата, (Р)=0

100

Z—нулевой результат текущей операции, (Z)=1

001

РЕ—четность числа еди­ниц результата, (Р) = 1

101

NC—отсутствие перено­са, (CY)=0

010

Р—результат положи­тельный, (S)=0

110

С-наличие переноса, (СY)=1

011

М-результат отрицательный, (S)=1

111

Таблица П3.5. Команды пересылки, загрузки и хранения

Мнемони-ческое обозначение

Название

Выполняе-мые операции

Формат команды

Число тактов

Фор­миро­вание флагов

MOV r1; r2.

Пересылка из регистра в регистр

(r1)←(r2)

01DDDSSS

5

Не фор-меруются­

MOV r, М

Пересылка из

памяти в регистр

(r)←[(H)(L)]

01DDD110

7

—»—

MOV М, г

Пересылка из

регистра в па­мять

[(H)(L)]←(r)

01110SSS

7

—»—

MVI г

Загрузка ре­гистра констан­той

(r)←<В2>

00DDD110<В2>

7

—»—

MVI М

Загрузка памя­ти константой

[(H)(L)]←<B2>

001100110

2>

10

—»—

LXI rр

Загрузка пары регистров

(гh)←<В3>,

(rl)←<В2>

00RP0001

2>

<Вз>

10

—»—

LDA

Загрузка А прямая

(А)←[<Вз><В2>]

00111010

2>

<Вз>

13

—»—

STA

Загрузка памя­ти прямая

[<Вз><В2>]←

(А)

00110010

<В2>

<Вз>

13

—»—

LHLD

Загрузка реги­стров Н и Lсодержимым

двух ячеек па­мяти

(L)←[<B3><B2>], (Н)←[<Вз><В2>+1]

00101010

2>

<Вз>

16

—»—

SHLD

Запоминание содержимого регистров HL

по адресу

[<B3><B2>]←(L),

[<Вз><В2>+1]←(Н)

00100010

<В2>

<Вз>

16

—»—

LDAX rр (LDAX В, LDAX D)

Косвенная за­грузка А

(А)←[(rр)] только для rp=B, rp=D

00RP1010

7

STAX гр (STAX В, STAX D)

Запоминание содержимого А по адресу (rp)

[(гр)]←(А) только для rр=В, rp=D

00RP0010

7

—»—

XCHG

Обмен между

регистрами HL и DE

(H)↔(D), (L)↔(E)

11101011

4

—»—

Таблица П3.6. Арифметические, инкрементные и декрементные команды

Мнемо-ническое

обозначе-ние

Название

Выполняемые операции

Формат команды

Число тактов

Формиро­вание

флагов

ADD r

Сложение со­держимого ре­гистра с А

(А)←(А)+г

10000SSS

4

Фор

м­иру­

ются

все

флаги

ADDМ

Сложение со­держимого па­мяти с А

(А)←(А)+[(H)(L)]

10000110

7

Toже

ADI

Сложение кон­станты с А

(А)←(А)+<В2>

11000110

2>

7

—»—

ADCг

Сложение со­держимого ре­гистра с А с

переносом

(A)←(A)+(r)+(CY)

10001SSS

4

—»—

ADO M

Сложение содержимого памяти с А переносом

(А)←(А)+[(H)(L)]+(CY)

10001110

7

—»—

INR г

Инкремент ре­гистра

(r)←(r)+l

000DDD100

5

Z, S, P,

CY1

INRМ

Инкремент ячейки памяти

[(H)(L)]←[(H)(L)]+1

00110100

10

Z, S, P,

CY1

DCRг

Декремент регистра

(r)←(r)-l

00DDD101

5

Z, S,

P, CY1

DCRМ

Декремент ячейки памяти

[(H)(L)]←[(H)(L)]-1

00110101

10

Z, S,

P, CY1

INXгр

Инкремент па­ры регистров

(rh)(rl)←(rh)(rl)+l

00RP0011

5

He

фор-

миру-

тся

DCXгр

Декремент па­ры регистров

(rh)(rl)←(rh)(rl)-l

00RP1011

5

—»—

DAD rp

Двойное сложение пары ре­гистров

(H)(L)←(H)(L)+

+(rh)(rl)

00RP1001

10

CY

DAA

Десятичная коррекция содержимого ак­кумулятора

8-разрядное число в аккумуляторе преобразуется в двоично-десятичную форму по следующему правилу:

00100111

4

Фор­миру­

ются все флаги

1) если содержимое четырех младших разрядов аккумулятора больше 9 или

если (CY1)=l, то к аккумулятору до­бавляется число 6;

2) если содержимое четырех старших разрядов стало после этого больше 9 или если (CY)=1, то число 6 добавля­ется и к содержимо­му четырех старших

разрядов аккумуля­тора

ACI

Сложение кон­станты с А с

переносом

(A)←(A)+<B2>+

+(CY)

11001110

2>

7

—»—

SUB r

Вычитание содержимого регистра из А

(А)←(А)-(г)

10010SSS

4

—»-

SUBМ

Вычитание содержимого па­мяти из А

(A)←(A)-[(H)(L)]

10010110

7

—»—

SUI

Вычитание

константы из

А

(А)←(А)-<В2>

11010110

<B2>

7

—»—

SBBг

Вычитание ре­гистра с заё-

мом

(A)←(A)-(r)-(CY)

10011SSS

4

—»—

SBBМ

Вычитание па­

мяти с заемом

(a)←(a)-[(h)(l)]-

-(CY)

10011110

7

—»—

SBI

Вычитание

константы с

заемом

(A)←(A)-<B2>-(CY)

11011110

2>

7

—»—

Таблица П3.7. Логические команды

Мнемо-ни­ческое обозна-че­ние

Название

Выполняемые операции

Формат команды

Число тактов

Фор­миро­вание флагов

ANA r

Логическое

умножение

регистра с А

(А)←(А)^(г),

(CY)←0; (CY1)←0

10100SSS

4

Фор­миру­

ются

все фла­-

ги

ANAМ

Логическое

умножение

ячейки памяти

с А

(A)←(A)^[(H)(L)],

(CY)←0; (CY1)←0

10100110

7

То же

ANI

Логическое

умножение

константы с А

(A)←(A)^<B2>,

(CY)←0; (CY1)←0

11100110

2>

7

—»—

XRAг

Отрицание

равнозначнос­ти с регистром

(А)←(А)(г),

(CY)←0; (CY1)←0

10101SSS

4

—»—

XRAМ

Отрицание

равнозначности с памятью

(A)←(A)[(H)(L)],

(CY)←0; (CY1)←0

10101110

7

—»—

XRI

Отрицание

равнозначнос­ти с константой

(A)←(A)<B2>,

(CY)←0; (CY1)←0

11101110

2>

7

—»—

ORAг

Логическое

сложение

регистра с А

(A)←(A) v (r),

10110SSS

4

—»—

ORAМ

Логическое

сложение ячей­ки памяти с А

(A)←(A)v[(H)(L)],

(CY)←0; (CY1)←0

10110110

7

То же

ORI

Логическое сло-жение константы с А

(A)←(A) v <B2>;

(CY)←0; (CY1)←0

11110110

2>

7

—»—

СМР г

Сравнение А

с регистром

(А)—(г), (А) не изме­няется;

(Z)=l, если (А)=(г);

(СY)=1,если(А)<(г)

10111SSS

4

—»—

СМР М

Сравнение А

с ячейкой памяти

(A)-[(H)(L)], (А) не

изменяется; (Z)=l, если

(A)=[(H)(L)];

(CY)=1, если

(A)<[(H)(L)]

10111110

7

—»—

CPI

Сравнение А

с константой

(A)-<B2>, (А) не из­меняется;

(Z)=l, если (А)=<В2>;

(CY)=1, если

(А)<<В2>

11111110

<B2>

7

—»—

Таблица П3.8. Оперативные команды

Мнемони­ческое обозначе­ние

Название

Выполняемые операции

Формат команды

Число тактов

Фор­миро­вание флагов

RLC

Сдвиг А влево циклический

(An+1)←(An), (Ао)←(А7) (CY)←(A7)

00000111

4

CY

RRC

Сдвиг А впра­во циклический

n)←(An+1), (А7)←(Ао), (CY)←(Ao)

00001111

4

CY

RAL

Сдвиг А влево с переносом

n+1 )←(Аn), (CY)←(A7), (Ao)←(CY)

00010111

4

CY

RAR

Сдвиг А впра­во с переносом

n )←(An+1), (CY)←(Ao), (A7)←(CY)

00011111

4

CY

СМА

Инвертирова­ние аккумуля­

тора

(A)←(Ā)

00101111

4

He

фор­

миру­

ются

CMC

Инвертирова­

ние регистра

переноса

(CY)←(CY)

00111П1

4

CY

STC

Установка ре­гистра перено­са

(CY)←1

00110111

4

CY

Таблица П3.9. Команды управления и связи с подпрограммами

Мнемони­ческое обозначе­ние

Название

Выполняемые операции

Формат команды

Число тактов

Фор­миро­вание флагов

JMP

Безусловный

переход

(СК)←<В3><В2>

11000011

2>

3>

10

Не

фор­

миру­

ются

J(условие)

Условный

переход

Если условие (ССС)1

выполняется, то

(СК)←<В3><В2>

11ССС010

2>

3>

10

То же

CALL

Вызов подпро­

граммы безус­

ловный

[(УС)-1] ←(СК)н,

[(УC-2]←(СК)L,

(УС)←(УС)-2,

(СК)←<В3><В2>

11001101

2>

3>

17

Не

фор­

миру­

ются

С (усло­вие)

Вызов подпро­граммы услов­ный

Если условие (ССС)1

выполняется, то

[(УС)-1] ←(СК)н,

[(УС)-2]←(СК)L,

(УС)←(УС)-2,

(СК)←<В3><В2>

11 ССС 100

2>

3>

11/17

То же

RET

Возврат из подпрограммы безусловный

(СК)L→[(УС)],

(СК)н←[(УС)+1],

(УС)←(УС)+2

11001001

10

Не фор­миру­ются

R(усло­вие)

Возврат из подпрограммы условный

Если условие (ССС)1, выполняется, то (СК)L←[(УС)], (СК)н←[(УС)+1],

(УС)←(УС)+2

11ССС000

5/11

То же

RSTN

Вызов подпро­граммы пре­рываний

[(УС)-1]-(СК)н, [(УС)-2] ←(СК)L, (УС)←(УС)-2, (СК)←8(ААА)

11ААА111 Состояние СК после выполнения RSTN

0000000000ААА000

номер N прерывающей про­граммы

11

То же

PCHL

Загрузка счет­чика команд

(СК)н←(Н),(ck)l←(l)

11101001

5

То же

Таблица П3.10. Команди управлення, ввода-вивода и операции со стеком.

Мнемониче-ское обозначение

Название

Выполняемые операции

Формат команды

Число тактов

Форми­рование флагов

PUSH rp

Проталки­вание з стек содержимого ре­гистровой

пары (кроме rр=УС)

[(УС)-1]←(rh),

[(УС)-2]←(rl),

(УС)←(УС)-2

11RP0101

11

Не фор­мируются

PUSH PSW

Проталки­вание в

стек слова состояния ЦПЭ

[(УС)-1]←(A),

[(У С)-2]←(CY),

[(У С)-2]1←1,

[(У С)-2]2←(Р),

[(У С)-2]3←0

[(У С)-2]4←(CY1)

[(У С)-2]5←0

[(У С)-2]6←(Z),

[(У С)-2]7←(S),

(УС)←(УС)-2

11110101

Слово состояния

ЦПЭ:

Do=CY1;D1=l;

D2=P; Dз=0; D4=CY1; D5=0;

D6=Z; D7=S

11

То же

POP rp

Выталкива-ние из сте­ка cтровой па­ры (кроме гр=УС) содержи­мого реги­стровой пары (кромеrp=УС)

(rl)←[(УС)],

(гh)←[(УС)+1],

(УС)←(УС)+2

11RP0001

10

Не фор­миру­ются

POP PSW

Выталкива­ние из сте­ка слова состояния ЦПЭ

(СY)←[(УС)]о,

(Р)←[(УС)2,

(СY1)←[(УС)]4,

(Z)←[(УС)]6,

(S)←[(УС)7,

(А)←[(УС)+1]

(УС)←(УС)+2

11110001

10

S, Z, CY, CY1, P

XTHL

Обмен ме­жду верши­ной стека

и парой HL

(L)↔[(УС)],

(Н)↔[(УС) +1]

11100011

18

He фор­ми-ру­ются

SPHL

Загрузка указателя

стека

(УС)←(Н)(L)

11111001

5

To же

INВУi

Ввод

(А)←(ВУi)

11011011

Адрес ВУi

10

То же

OUTВУi

Вывод

(ВУi)←(А)

11010011

Адрес ВУi

10

То же

EI

Разрешение

прерываний

Разрешается преры­вание после выполнения следующей

команды

11111011

4

То же

DI

Запрет прерываний

Прерывание запре­щается после выпол­нения команды DI

11110011

4

То же

HLT

Останов

Процессор останав­ливается

01110110

7

То же

NOP

Пустая операция

Никакие операции не

выполняются

00000000

4

То же

НАВЧАЛЬНО-МЕТОДИЧНЕ ВИДАННЯ

Методичні вказівки до виконання графічно-розрахункових і контрольних робіт для студентів технічних спеціальностей

Комп'ютерний набір та верстка: Т.Цизь

Редактор: Л.Тиха

Підп. до друку 2002. Формат 60х84/16. Папір офс.

Гарн. Таймс. Ум. друк. арк. 2,6. Обл. – вид. арк. 2,8.

Тираж 100 прим. Зам. 117.

Редакційно-видавничий відділ

Луцький державний технічний університет

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]