МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПРИБОРОСТРОЕНИЯ И ИНФОРМАТИКИ
КАФЕДРА АВТОМАТИЗИРОВАННЫХ СИСТЕМ ОБРАБОТКИ ИНФОРМАЦИИ И УПРАВЛЕНИЯ (ИТ-7)
ДИСЦИПЛИНЫ«Микропроцессорные средства»
Методические указания к лабораторным работам
Часть 2
Специальность 22.02.03 «Автоматизированные системы обработки информации и управления»
МОСКВА 2007
УТВЕРЖДАЮ
Проректор по учебной работе
_______________Щебров.О.М.
«____» ____________ 2007 г.
АННОТАЦИЯ
Целью лабораторных работ является изучение архитектуры, системы команд и ассемблера МП КР580
Автор: доц. Матюхина Е.Н.
Научный редактор: проф. Петров О.М.
Рецензент: доц. Правоторова Н.А.
Рассмотрено и одобрено на заседании кафедры ИТ-7
«» __________________.2007 г. Зав. кафедрой _____________ О. М. Петров
Ответственный от кафедры за выпуск учебно-методических
материалов: Лихойда Н. Н.
1.КРАТКИЕ СВЕДЕНИЯ О ФОРМАТАХ ДАННЫХ И СИСТЕМЕ КОМАНД МП КР 580
1.1. Данные и адреса ячеек ОЗУ вводятся в шестнадцатеричном коде. Формат данных (ячеек оперативной памяти) 1 байт.
Отрицательные исходные данные, участвующие в арифметических операциях, должны быть преобразованы в дополнительный код. Преобразование 16-ричных отрицательных чисел в дополнительный код производится согласно следующему алгоритму.
Исходное число
А16 = an , an.1, …. a2, a1, a0 ;
[А16]д = (F- an) (F-an.1)...(F-a,) (1016-a0)
Например:
А16 = -FF16 = -25510
[А16]д = (F-F) (1016-F) = 0116
Преобразование дополнительного кода в прямой осуществляется по тому же алгоритму.
1.2. Для команд используются 1-, 2- и 3-байтовые форматы, занимающие соответственно 1, 2 и 3 ячейки памяти.
1- байтовые команды - типа регистр - регистр (оба операнда хранятся в регистрах СОЗУ) - обращение к памяти, арифметические, логические операции, сдвиги, возврат, запись в стек, чтение из стека, разрешение и запрет прерывания.
2- байтовые команды – с непосредственными данными и команды ввода-вывода.
3- байтовые команды - переходов, обращения к подпрограммам, непосредственной загрузки и записи в память.
Формат адреса изображен на рис.1.
Разряды | 16 15 14 13 | 12 11 10 9 | 8 7 3 2 1 | |
Веса | 15 14 13 12 2 2 2 2 | 11 10 9 8 2 2 2 2 | 7 6 2 1 0 2 2 2 2 2 | |
Байты | Б2 | Б1 | ||
Цифры | Ц4 | Ц3 | Ц2 Ц1 | |
Рис.1. Формат адреса
Адреса ячеек ОЗУ записываются 4- разрядными 16- ричными кодами.
При описании системы команд микропроцессора КР580 (см.табл.1) приняты следующие обозначения:
А - регистр - аккумулятор;
FL - регистр флажков;
М - ячейка внешней памяти, адрес которой хранится в регистрах Н, L или указан в 3-байтовой команде;
Rr - регистр СОЗУ или аккумулятор, где r=SSS -двоичный код регистра СОЗУ.
Мнемоника | Код команды | Содержание |
1. Команды, оперирующие с АККУМУЛЯТОРОМ А. Сложение | ||
ADDR (1Б) | 1000 OSSS | Содержимое аккумулятора сложить с содержимым регистра РГ номера SSS в СОЗУ. Результат в аккумуляторе. A:=(A)+(R) |
ADDM (1Б) | 1000 0110 | Содержимое аккумулятора сложить с содержимым ячейки М, адрес которой указан в RP(HL) A:=(A)+(M) |
ADCM (1Б) | 1000 1110 | To же с учетом переноса С. A:=(A)+(M)+C |
ADI (2Б) | 1100 0110 | Содержимое аккумулятора сложить с операндом В2 A:=(A)+В2 |
ACI (2Б) | 1100 1110 | To же с учетом переноса A:=(A)+ В2+ C |
Б. Вычитание | ||
SUBR | 1001 OSSS | A:= (A)-(R) |
SBBR (1Б) | 1001 1SSS | A:= (A)-(R)-(C) |
SUBM (1Б) | 1001 0110 | A:= (A)- (M) |
SUI (2Б) | 1101 0110 | A:= (A)-B2 |
SBI (2Б) | 1101 1110 | A:= (A)-B2-C |
2. Команды пересылки | ||
MOV R2 (1Б) | 01DDDSSS | Содержимое регистра R1 номера SSS в СОЗУ пересылается в регистр СОЗУ R2 номера DDD R2:=(R1) |
MOV M (1Б) | 01110SSS | Содержимое регистра R номера SSS в СОЗУ посылается в ячейку памяти М, адрес которой хранится в RP(H,L) M:=(R) |
MOV R (1Б) | 01DDD110 | Содержимое ячейки с адресом в RP(H,L)посылается в регистр R номера DDD в СОЗУ R:=(M) |
MVIR (2Б) | 00DDD110 | Непосредственный операнд B2 посылается в регистр R номера DDD в СОЗУ R:=B2 |
MVIM (2Б) | 0011 0110 | Непосредственный операнд B2 посылается в ячейку М, адрес которой указан в регистровой паре RP(H,L) |
LXIH (3Б) | 0010 0001 | Непосредственный операнд B3B2 посылается в регистровую пару RP(H,L) HL:=B3B2 |
LXIB (3Б) | 0000 0001 | Непосредственный операнд B3B2 посылается в регистровую пару RP(B,C) BC =B3B2 |
LXID (3Б) | 0001 0001 | Непосредственный операнд B3B2 посылается в регистровую пару RP(DE) DE:=B3B2 |
STA (3Б) | 0011 0010 | Содержимое аккумулятора посылается в ячейку, адрес которой В3В2 указан в команде М:=(А) |
LDA (3Б) | 0011 1010 | Содержимое ячейки М, адрес которой В3В2 указан в команде, посылается в аккумулятор А:=(М) |
SHLD (3Б) | 0010 0010 | Запоминание регистровой пары RP(L, H) в ячейках памяти по адресу В3В2 в команде и по адресу В3В2+1 B3B2:=L; B3B2+1:=H |
LHLD (3Б) | 0010 1010 | Загрузка регистровой пары RP(L, H) содержимым ячеек по адресу В3В2 в команде и по адресу В3В2+1 L:= (B3B2) H:=(B3B2+1) |
3. Команды сдвигов | ||
RLC (1Б) | 0000 0111 | Циклический сдвиг влево |
RRC (1Б) | 0000 1111 | Циклический сдвиг вправо |
4. Команды переходов | ||
JMP (3Б) | 1100 0011 | Безусловный переход. Программному счетчику (счетчику команд) PC присваивается адресная часть команды PC:=B3B2 |
HCHL (3Б) | 1110 1001 | Загрузка программного счетчика. Счетчику команд PC присваивается содержимое регистровой пары PC:=B3B2 |
JC (3Б) | 1101 1010 | Переход по переносу. Если содержимое тригира переноса С равно 1,то РС:= ВЗВ2. Если С=0, то PC:= РС+3 |
JNC (3Б) | 1101 0010 | Переход по отсутствию переноса. ЕСЛИ С =0, ТО РС:=ВЗВ2 Если С =1, то РС:=РС+3 |
JZ (3Б) | 1100 1010 | Переход по нулю. Если содержимое триггера Z равно 1,то счетчику команд PC присваивается адресная часть команды. Если Z=1. то РС:=ВЗВ2 Если Z=0, то РС:=РС+3 |
JNZ (3Б) | 1100 0010 | Переход по неравенству нулю Если Z=0.TO РС:=ВЗВ2. Если Z=l,то РС:=РС+3 |
JM (3Б) | 1111 1010 | Переход по минусу. Если содержимое триггера 8=1,то осуществляется переход по адресной части команды. Если 8=1. то РС:= ВЗВ2 Если 8=0, то РС:= РС+3 |
JP (3Б) | 1111 0010 | Переход по плюсу. Если S=0 то PC:=B3B2 Если S=1 то PC:=PC+3 |
IMPORT (2Б) | 1101 1011 Адр. РгВх | А:=(РгВх) |
. | ||
OUTPORT (2Б) | 1101 0011 Адр. РгВых | РгВых: = (А) |
HTL | 0111 0110 | Останов |
Кодирование регистров СОЗУ:
Регистр Двоичный код
В 000
С 001
Д 010
Е 011
Н 100,
L 101
А (аккумулятор) 111
1.4. Регистр флажков FL содержит 8 двоичных разрядов, используется для фиксации состояний АЛУ процессора. Он включает в себя, в том числе, 5 триггеров (флажков):
а) TZ - триггер нуля,
б) ТС - триггер переноса,
в) ТР - триггер четности,
г) TS - триггер знака,
д) ТД - триггер дополнительного переноса, используемого при десятичной коррекции.
На рис.3 изображен формат регистра
флажков (признаков)
7 6 5 4 3 2 1 0 | -разряды |
S Z O АС О P I G | -обозначение признаков |
Назначение признаков регистра следующее:
S(SIGN)- знак результата операции; S =1,если 7-й разряд равен 1;
Z(ZERO)- признак нуля; Z=l, если результат равен нулю;
AC - дополнительный перенос; АС=1, если перенос из 3-го разряда в 4-й равен 1 (используется при десятичной коррекции);
P(PARITY)- признак четности; Р=1. если результат имеет четное число единиц;
С (CARRY)- признак переноса; С=1, если есть перенос из старшего разряда регистра результата, т. е. если результат больше 28-1.
В процессе выполнения лабораторных работ наряду с анализом результатов в регистрах СОЗУ, Аккумуляторе и ячейках оперативной памяти надо просматривать и фиксировать в отчете содержимое регистра FL.
ЛАБОРАТОРНАЯ РАБОТА N 1
5.1.Цель работы - изучение структуры программной модели МП КР 580 ВМ 80А, методов ввода и вывода данных в регистры МП и ОЗУ, исследование работы МП в различных режимах при реализации линейной программы.
5.2.Порядок выполнения работы
1) Изучить разделы 1-4 настоящих методических указаний.
2) Получить у преподавателя задание на лабораторную работу.
3) Составить программу в системе команд МП К580.
4) Произвести ручное вычисление результата.
5) Преобразовать команды, исходные данные и результат в 16-ричную систему счисления.
6) Ввести программу и исходные данные, проверить правильность ввода.
7) Выполнить программу в режиме по шагам команд.
8) Выполняя пошаговые режимы, записывать содержимое изменяющихся регистров РОН, регистра FL.
Соответствующий формат с примером представлен в табл. 2.
Таблица 2.
N шага программы | Содержимое регистров (Н) | Значения признаков | ||||||
PC | A.B.C.D E.H.L | FL | S | Z | D | P | C | |
081А | А = BD В = 6F |
5.3. Пояснения к заданию
Заданием предусмотрено написание программы для следующего выражения
W = X ± Y ± Z,
где X, Y, Z - операнды, находящиеся в регистрах РОН.
Далее результат W записывается в ячейку М ОЗУ, по адресу, находящемуся в РОН, после чего вычисляется
V = W ± (M)
где (М) - содержимое ячейки М. Варианты заданий определяются знаками операндов SX,SY,SZ и операциями 01,02,03 (сложение или вычитание). С учетом введенных обозначений реализуемые алгоритмы примут вид:
W=SXXO1 SYYO2 SZ Z
M:=W
V:=W03 (M).
В табл. 3 приведены варианты заданий. Конкретные значения операндов X.Y.Z и адрес ячейки "М" выдаются студентам перед выполнением лабораторной работы. В последних двух графах таблицы указаны наименования РОН для операндов Y, Z.
Таблица 3
Вар | SX | SY | SZ | 01 | 02 | 03 | Используемые РОН | |
+ + - + + + (-) | B | C | ||||||
+ - + + + + (-) | Д | Е | ||||||
+ - - + + + (-) | В | Е | ||||||
- + + + + + (-) | С | Д | ||||||
- + - + + + (-) | В | Д | ||||||
- - + + + + (-) | С | В | ||||||
- - - + + + (-) | Е | Д | ||||||
+ + - + - + (-) | С | В | ||||||
+ - + + - + (-) | Д | С | ||||||
+ - - + - + (-) | Е | В | ||||||
- + + + - + (-) | Е | С | ||||||
- + - + - + (-) | Д | В | ||||||
- - + + - + (-) | Д | Е | ||||||
- - - + - + (-) | В | Е | ||||||
+ + - - + + (-) | С | Е | ||||||
+ - + - + + (-) | С | Д | ||||||
+ - - - + + (-) | В | Д | ||||||
- + + - + + (-) | В | С | ||||||
- + - - + + (-) | Е | Д | ||||||
- - + - + + (-) | C | Д | ||||||
- - - - + + (-) | B | Е | ||||||
+ + - - - + (-) | В | Д | ||||||
+ - + - - + (-) | Д | Е | ||||||
+ - - - - + (-) | Е | В | ||||||
- + + - - + (-) | Д | С |
Пример.
Пусть требуется вычислить W=X+Y-Z и результат занести в ячейку по адресу 0805.
В качестве исходных данных примем следующие значения:
10-ричные 16-ричные
Х=10 Х=ОА;
Y= 6; Y=06;
Z=40; Z=28.
Так как переменную Z надо вычесть, то преобразуем ее в дополнительный код
[Z]д=[Z2Z1]д=(F-Z2).(16-Z1)=D8.
Предварительно подсчитаем ожидаемый результат при вычислении величины
[W]Д =ОА+06+08=Е8.
Преобразуем результат в прямой код
[W]n =(F-E),(16-8)=-18.
В ячейке М должен находиться результат в дополнительном коде [W]Д
Исходные данные будем размещать в регистрах:
Х-в регистре-аккумуляторе А (код 111).Там же будем получать результаты сложения и вычитания;
Y-в регистре С(001);
Z-в регистре Д(О10).
Адрес ячейки М оперативной памяти (адрес равен 0805Н) будем размещать в регистрах Н(100)=08, L{101)=05.
Программа в мнемонике и в машинных кодах представлена в табл.4. Содержание последней графы табл. 4. прочитанное сверху вниз, является программой в шестнадцатеричном коде.
Таблица 4
Адрес команды | мнемоника | Операции | Команда |
Двоичная | 16-ричная | ||
ADDC SUBD MOVM.A | А=А+С 1000 0001 81 А-А-(Д) 1001 0010 92 М=А 0111 0111 77 |
ЛАБОРАТОРНАЯ РАБОТА N 2
"ИССЛЕДОВАНИЕ ФУНКЦИОНИРОВАНИЯ МИКРОПРОЦЕССОРА ПРИ РЕАЛИЗАЦИИ РАЗВЕТВЛЯЮЩЕЙСЯ ПРОГРАММЫ"
6.1. Порядок выполнения лабораторной работы N 2
соответствует пунктам 5.2.
6.2.Пояснение к заданию
В основу исследований положены алгоритмы, для реализации которых требуется использование более широкого набора команд, представленных в 1-. 2- и 3-байтовых форматах.
Рассмотрим пример. Пусть требуется вычислить
X1, если Xl< Х2;
Z=
X2,если X1>=X2;
W = X1-X2-Z.
Задаваемые значения переменных XI, Х2 размещаются в регистрах СОЗУ. например,
XI- в РГВ; Х2 - в РГС.
Используемые ячейки оперативной памяти: Ml с адресом ВЗВ2=0825 и М2 с адресом ВЗВ2=0828 3-байтовой команды.
Программа решения задачи в кодах микропроцессора приведена в табл. 5.
Варианты исходных данных:
Вар.1: Х1=[-5]д -> РГВ; Х2=[-3]д-> РГС; W=Х2=[-3]Д
Вар.2: Х1=5 -> РГВ; Х2=3 -> РГС; W-X1=5.
6.3.Задания на выполнение лабораторной работы N 2
Реализуемые зависимости:
1) Вычислить Х1=Х ± Y1; Х2=Х +- Y2
![]() |
2) Вычислить Z= Х1+У1, если Xl< X2
Х2-Х, если Х1>=Х2
3) Вычислить W = X ± Х2 + Z
4) Результат заслать в ячейку "М" оперативной памяти. Варианты заданий приведены в табл. 6. Значения операндов X, Y1,Y2 для вариантов заданий 26-50 в табл. 6 указаны в скобках.
Варианты заданий определяются кодами арифметических операций 01,02,03 кодами операций условных переходов, реализующих условия, вариантами значений исходных данных X, Yl,Y2 и используемыми регистрами для размещения исходных данных.
С учетом введенных обозначений реализуемые зависимости примут вид:
Х1=Х 01 У1; Х2=Х 02 Y2;
![]() |
X1+Y1, если Х1<Х2;
Z=
X2-X, если Х1>=Х2;
Q = Z+X1 03X2; M:=W.
4. Содержание отчета
1) Постановка задачи
2) Исходные данные
3) Результаты ручного (контрольного) счета
4) Блок-схема программы
5) Программа в кодах К580
6) Результаты счета в автоматическом и шаговом режимах.
Таблица 5
Команды | Мнемоника | Код операции | В3 | В2 | Содержание | Команда 16-ричная |
STA | M1:=(A)=0 | |||||
ADDB | A:=(A)+(B)=X1 | |||||
SUBC | A:=(A)-(C)=X1-X2 | |||||
JM | 0F | A-Сохраняется | FA080F | |||
LDA | A:=(M1)=0 | 3A0825 | ||||
OC | JMP | Безусловный переход | C30813 | |||
OF | LDA | A:=(M1)=0 | 3A0825 | |||
OB | SUBC | A:=(A)-(C)=-X2=-Z | ||||
SUBB | :=(A)-(B)=-X1=-Z | |||||
ADDB | A:=(A)+(B)=-Z=X1 | |||||
ADDC | A:=(A)+(C)= =-Z+X2=W | |||||
STA | M2:=(A)=W | |||||
HLT | Останов. (A)- сохраняется |
Ном. вар | Ар. опер. | Опер. Уп. | Значение операндов | Размещение данных | Ответ | ||||||||||
JМ | JР | X(Y1) | Y1(Y2) | Y2(X) | B | C | D | E | адрес | ||||||
+ | + | - | + | + | + | + | B3 | B2 | 41 (-14) | ||||||
+ | - | + | + | + | + | + | H | L | -28 (-26) | ||||||
+ | - | - | + | -43 | + | + | + | B3 | B2 | 47 (1) | |||||
- | + | + | + | -14 | + | + | + | H | L | -71 (103) | |||||
- | + | - | + | -45 | -7 | + | + | + | B3 | B2 | 65 (-16) | ||||
- | - | + | + | -20 | + | + | + | H | L | -94 (26) | |||||
- | - | - | + | -24 | -28 | + | + | + | B3 | B2 | -43 (-98) | ||||
+ | + | - | + | -26 | -48 | -13 | + | + | + | H | L | 9 (-26) | |||
+ | - | + | + | + | + | + | B3 | B2 | |||||||
+ | - | - | + | -15 | + | + | + | H | L | -35 | |||||
- | + | + | + | + | + | + | B3 | B2 | |||||||
- | + | - | + | -48 | + | + | + | H | L | -98 | |||||
- | - | + | + | + | + | + | B3 | B2 | -6 |
Таблица 6
- | - | - | + | + | + | + | H | L | |||||||
+ | + | + | + | -60 | -20 | + | + | + | B3 | B2 | -90 | ||||
+ | + | - | + | -65 | -21 | -11 | + | + | + | H | L | -55 | |||
+ | - | + | + | + | + | + | B3 | B2 | |||||||
+ | - | + | -75 | -32 | + | + | + | H | L | -66 | |||||
- | + | - | + | -80 | -24 | + | + | + | B3 | B2 | -28 | ||||
- | + | - | + | + | + | + | H | L | |||||||
- | - | + | + | -35 | + | + | + | B3 | B2 | -7 | |||||
- | - | - | + | + | + | + | H | L | -72 | ||||||
+ | + | - | + | -19 | -37 | + | + | + | B3 | B2 | |||||
+ | + | + | + | -20 | -16 | -18 | + | + | + | H | L | -92 | |||
- | - | + | + | -39 | + | + | + | B3 | B2 | -46 | |||||
+ | - | + | + | -32 | + | + | + | H | L | -36 | |||||
ЛАБОРАТОРНАЯ РАБОТА N3
"ИССЛЕДОВАНИЕ МИКРОПРОЦЕССОРА К580 ПРИ РЕАЛИЗАЦИИ ЦИКЛИЧЕСКОЙ ПРОГРАММЫ"
1.Постановка задачи и алгоритм вычислений
В основу исследования положен алгоритм, требующий циклических вычислений. Рассмотрим пример.
Пусть требуется вычислить, перенумеровать и разместить в ячейках памяти значение переменной X, изменяющейся в пределах
Xmin< X < Xmax
с шагом hx.
Количество значений X
Nx = Xmax-Xmin +1
hx
Переменная X вычисляется по формуле
X = X + hx.
Определяемые значения переменной X нумеруются (индексируются) с помощью переменной i, вычисляемой по формуле
i = i+1,
и размещаются в последовательных ячейках памяти. Начальное значение переменной X принимается равным Xmin. Ему присваивается номер i=0.
2. Распределение регистров ячеек памяти и программа
Для размещения X в последовательных ячейках памяти организуется переадресация по формуле
B2=В2+i,
где В2-младший байт адреса, хранимого в регистровой паре
RP(HL), В2 -начальный адрес, хранимый в регистре
Е СОЗУ(РОН). В качестве исходных величин примем
Xmin=10; Xmax=100; hx=0.
В этом случае
Nx = 100-10 + 1 = 10,
Значение начального адреса (байта В2) для размещения значений X примем
В2=59.
Распределение регистров РОН и ячеек памяти ОЗУ при решении задачи показано в табл.7.
Программа вычислений приведена в табл.8.
Таблица 7
Объект | Назначение | Хранение | |
Ячейка ОЗУ или регистр | Адрес | ||
Программа | Вычисление X | с 8000 | |
Xmin | Исходная величина | Ml | |
Xmax | Исходная величина | М2 | |
hx | Исходная величина | В | |
I | Исходная величина | С | |
i | Накапливаемая переменная | МЗ | |
X | Накапливаемая переменная | М4 | |
Константа | M5 | ||
Значения X | Начальное значение | М6 | |
Конечное значение | М7 | 8060+Nx-1 | |
Накаплива | Переменная | HL | 8060-806+ +Nx -1 |
адр. | |||
ВЗ-исходнаа величина | Н | ||
исходная величина | L | ||
В2-исходная величина | Е |
Таблица 8
Адрес команды 8-ричный | Мнемоника | Команда | Содержание команды | Команда 16-ричная | ||
Код операции | B3 | B2 | ||||
STA | M3: = (A) = 0 (Для i) | |||||
LDA | A:= (M1) =Xmin | 3A8050 | ||||
ADDB | A:= (A) + (B) =X+hx | |||||
STA | M4: = (A) = X | |||||
SUBD | A:= (A) - (D) =X - Xmax | |||||
JP | При A > 0 – переход к ком-де по адр.8054 | F28022 | ||||
LDA | A:= (M3) = 1 | 3A8054 | ||||
ADDC | A:= (A) + (C) =i+1 | |||||
STA | M3: = (A) =i+1 | |||||
1B | ADDE | A:= (A) + (E) =i+59 | ||||
1C | MOVL | L:= (A) =i+59 | 6F | |||
1D | MOVM1 | Mi: = (A) =X | ||||
1E | JMP | Безусловный переход к ком. По адр. 8006 | C38006 | |||
LDA | A:= (M4) = X | 3A8056 | ||||
HTL | Останов |
Таблица 9
Вариант | 01 | 02 | P | Q | Хранение | Подсчитываются | |||
Адрес возрастает | Адрес уменьшается | Все значения | Четные номера | Нечетные номера | |||||
+ | + | -25 | -36 | + | + | ||||
+ | - | -15 | +48 | + | + | ||||
- | + | +31 | +42 | + | + | ||||
- | - | -8 | -13 | + | + | ||||
+ | + | -18 | +32 | + | + | ||||
+ | - | +27 | -11 | + | + | ||||
- | + | -17 | +25 | + | + | ||||
- | - | +42 | +37 | + | + | ||||
+ | + | -31 | -11 | + | + | ||||
+ | - | -17 | +25 | + | + | ||||
- | + | -14 | -35 | + | + | ||||
- | - | +28 | -17 | + | + | ||||
+ | + | -13 | +18 | + | + | ||||
Приложение табл. 9
+ | - | -21 | -35 | + | + | ||||
+ | +14 | -15 | + | ||||||
- | - | +25 | +37 | + | + | ||||
+ | + | -14 | -17 | + | + | ||||
+ | - | -15 | +8 | + | + | ||||
- | + | +5 | -39 | + | + | ||||
- | - | +15 | +16 | + | + | ||||
+ | + | -13 | -11 | + | + | ||||
+ | - | -17 | +25 | + | + | ||||
- | - | +27 | -19 | + | + |
3. Варианты заданий на выполнение лабораторной работы
Задача: вычислить, перенумеровать и разместить в последовательных ячейках памяти значения переменной
z = X ± P ± Q = xo1 PO2 Q
где P,Q - константы, берущиеся из табл. 9
аргумент равный разности X= Хmах - Xmln.
Величины Хmах,Xmin и шаг hx выбираются студентами так, чтобы числе точек переменной Z находилось в пределах
5 < Nz < 20
Варианты заданий перечислены в табл.9.
4.Содержание отчета
1) Постановка задачи
2) Исходные данные
3) Результаты ручного (контрольного) счета
4) Блок-схема программы
5) Программа в кодах К580
6) Результаты счета в автоматическом и шаговом режимах.
ЛАБОРАТОРНАЯ РАБОТА №4. Исследование взаимодействия микропроцессора с регистрами ввода-вывода (портами)
Разработать и отладить циклическую программу, выполняющую следующие действия:
1) ввести данные с РгВх
2) сдвинуть данные циклически влево или вправо
3) записать результат в ячейку M i;
4) выдать результат на РгВых
5) повторить пп.2,3,4 "n" раз
№ варианта | Подвариант | «n» | Направление сдвига |
1. 2. 3. 4. 5. 6. | П.3 П.6 П.3 П.6 П.3 П.6 | 1210 1010 1110 910 1310 1410 | ПР. ЛВ ПР. ЛВ ПР. ЛВ |
6) записать результат в ячейку М (в этом случае не выполняется п.З)
Содержание отчета
1) Постановка задачи
2) Исходные данные
3) Результаты ручного (контрольного) счета
4) Блок-схема программы
5) Программа в кодах К580
6) Результаты счета в автоматическом и шаговом режимах.
Литература
1. Александриди Т.М., Гришанина Т.В. Проектирование микропроцессорных средств. М.МАДИ. 1982, 70 с.
2. Микропроцессоры и микропроцессорные комплекты интегральных микросхем: Справочник.; Под ред. В.А. Шахнова, И.: Радио и связь.1988. Т.1..386 с.: ил.
3. Каган Б.М., Станин В.В. Основы проектирования микропроцессорных устройств автоматики. Н.: Энергоатомиздат 1987г. 304 с.: ил.