рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Лекция 1 – Представление информации в ЭВМ. Позиционные системы счисления

Лекция 1 – Представление информации в ЭВМ. Позиционные системы счисления - Лекция, раздел Компьютеры, Оглавление 1 Лекция 1 – Представление Информации В Эвм... 4 ...

Оглавление

1 Лекция 1 – Представление информации в ЭВМ... 4

1.1 Тема 1: "Позиционные системы счисления". 4

1.2 Тема 2: "Преобразование чисел из одной системы счисления в другую" 5

1.2.1 Десятичная система счисления. 5

1.2.2 Двоичная система счисления. 5

1.2.3 Восьмиричная система счисления. 5

1.2.4 Шестнадцатиричная система счисления. 6

1.2.5 Двоично-десятичная система счисления. 6

1.2.6 Обозначения чисел. 7

1.3 Тема 3: "Упрощенные формулы перевода чисел из одной системы счисления в другую". 7

1.3.1 Формула ручного перевода для целых чисел. 7

1.3.2 Формула ручного перевода для дробных чисел. 8

1.4 Тема 4: "Формы представления чисел в ЭВМ". 9

1.4.1 Прямые, обратные и дополнительные коды.. 10

1.4.2 Форма представления чисел с фиксированной запятой. 11

1.4.3 Форма представления чисел с плавающей запятой. 11

2 Лекция 2 – Логические основы цифровой техники.. 13

2.1 Тема 1: "Представление информации физическими сигналами" 13

2.2 Тема 2: "Логические функции". 15

3 Лекция 3 – Свойства логических функций.. 19

3.1 Тема 1: "Свойства конъюнкции, дизъюнкции и инверсии". 19

3.2 Тема 2: "Системы логических функций, или базисы". 20

3.3 Тема 3: "Понятие о комбинационной схеме и цифровых автоматах" 20

3.4 Тема 4: "Введение в серии логических элементов". 21

4 Лекция 4 – Минимизация логических функций.. 24

4.1 Тема 1: "Канонические формы представления логических функций" 24

4.2 Тема 2: "Минимизация логических функций методом карт Вейча-Карно" 25

4.3 Тема 3: "Синтез комбинационных схем". 28

5 Лекция 5 – Комбинационные схемы... 30

5.1 Тема 1: "Функциональные узлы комбинационного типа". 30

5.1.1 Дешифраторы.. 30

5.1.2 Шифраторы.. 32

5.1.3 Мультиплексоры.. 33

5.1.4 Демультиплексоры.. 34

6 Лекция 6 – Комбинационные схемы и цифровые автоматы... 35

6.1 Тема 1: "Комбинационные схемы". 35

6.1.1 Сумматоры.. 35

6.2 Тема 2: "Триггеры". 38

6.2.1 Асинхронный RS-триггер с прямыми входами. 40

6.2.2 Синхронный RS-триггер со статическим управлением.. 40

6.2.3 Универсальный JK-триггер. 42

7 Лекция 7 – Регистры, ПЛМ и счетчики.. 44

7.1 Регистры... 44

7.2 Программируемые логические матрицы... 46

7.3 Счетчики.. 47

7.3.1 Суммирующий и вычитающий счетчик с последовательным переносом.. 48

7.3.2 Суммирующий счетчик с параллельным переносом.. 50

7.3.3 Счетчики с последовательно-параллельной передачей переноса. 50

7.3.4 Счетчики с модулем счетчика, не равным 2n 51

7.3.5 Пример реверсивного счетчика с предварительной установкой. 52

8 Лекция 9 – Микропроцессорные системы. Однокристальные микропроцессоры... 53

9 Лекция 10 – Принципы работы микропроцессоров.. 57

9.1 Тема 1: "Последовательность выполнения операций". 57

9.2 Тема 2: "Система команд микропроцессора 580 ВМ80". 59

9.3 Тема 3: "Способы адресации". 60

9.4 Тема 4: "Программирование микропроцессора серии К580". 61

10 Лекция 11 – Программирование микропроцессора серии К580. 62

10.1 Тема 1: "Пример программы на ассемблере". 62

10.2 Пример электронного табло – бегущей строки.. 64

10.3 Тема 2: "Кодировка алфавитно-цифровой информации". 67

11 Лекция 12 – Элементы микропроцессорного комплекта серии 580 68

11.1 Системный контроллер 580 ВК 28 (Intel 8228) 69

11.2 Программируемый таймер К 580 ВИ53 (Intel 8253) 69

11.3 Параллельный интерфейс К 580 ВВ55 (Intel 8255) 71

12 Лекция 13 – Состав микропроцессорного комплекта серии КР580 (продолжение) 72

12.1 Последовательный интерфейс К 580 ВВ 51 (Intel 8251) 72

12.2 Контроллер прерываний К 580 ВН 59 (Intel 8259) 73

12.3 Контроллер прямого доступа к памяти К 580 ИК 57 (Intel 8257) 74

12.4 Контроллер клавиатуры и дисплея К 580 ВВ 79 (Intel 8279) 76

13 Лекция 14 – Однокристальный 16-и разрядный процессор К 1810 ВМ 86 77

14 Лекция 15 – История развития микропроцессоров производства компании Intel.. 80

15 Приложение – Система команд микропроцессора К580. 84

 

1 Лекция 1 – Представление информации в ЭВМ

1.1 Тема 1: "Позиционные системы счисления"

Определение: Системы счисления называются позиционными, если одна и та же цифра имеет различное значение, определяемое позицией цифры в последовательности цифр, изображающей число.

Определение: Количество различных цифр используемых для представления чисел в позиционных системах счисления, называются ее основанием.

В позиционной системе любое число может быть представлено в виде полинома от основания s.

xs = an·sn+an-1·sn-1 + ... + a1·s1+a0·s0

где

n – порядковый номер цифры в числе. Отсчет ведется с правой стороны числа, причем самая правая цифра находится в нулевой позиции.

В вычислительной технике наиболее распространенными являются следующие системы счисления:

- десятичная;

- двоичная;

- восьмеричная;

- шестнадцатеричная;

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

1.2 Тема 2: "Преобразование чисел из одной системы счисления в другую"

Десятичная система счисления

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

1234567890 = (1·109) + (2·108) + (3·107) + (4·106) + (5·105) + (6·104) + (7·103) + (8·102) + (9·101) + (0·100) = 123456789010

Двоичная система счисления

Определение: Двоичной системой счисления называется система, в которой числа задаются в виде последовательности цифр 0 и 1, называемых битами.

Несмотря на то, что двоичные числа требуют большего числа цифр для своей записи (примерно в 3,3 раза), чем десятичные числа, двоичные числа широко используются в ЭВМ. Это обусловлено тем, что для представления одного разряда (бита), необходим элемент памяти, имеющий всего два устойчивых состояния.

Другим важным достоинством двоичной системы счисления является простота двоичной арифметики.

1011001 = (1·26) + (0·25) + (1·24) + (1·23) + (0·22) + (0·21) + (1·20) = 64 + 16 + 8 + 2 = 8910

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

Первым микропроцессором в истории вычислительной техники стал микропроцессор компании IBM для калькулятора. В этом микропроцессоре числа представлялись в виде 4 разрядов (бит), которые образовывали так называемую тетраду. Максимальное значение, задаваемое тетрадой – 1111, или 15. Однако первый (старший) разряд в первом процессоре указывал на знак числа – положительное или отрицательное. Оставшиеся три бита позволяли задать число от 0 до 7, то есть число с основанием 8.

Таким образом, появилась восьмеричная система счисления.

12345670 = (1·87) + (2·86) + (3·85) + (4·84) + (5·83) + (6·82) + (7·81) + (0·80) = 2097152 + 524288 + 98304 + 16384 + 2560 + 384 + 56 = 273912810

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

Однако большее распространение получили 8-ми битные микропроцессоры, где число представлялось в виде 8 разрядов, или двух тетрад. Такое число получило название байт.

Теперь появилась возможность одной тетрадой задавать числа от 0 до 15, что привело к возникновению шестнадцатеричной системы счисления. Причем, поскольку число цифр конечно (максимальное – 10), пришлось вводить буквы для обозначения старших цифр – от A (10) до F (15).

ABCDEF12 = (10·167) + (11·166) + (12·165) + (13·164) + (14·163) + (15·162) + (1·161) + (2·160) = 288240001810

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

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

Определение: Правило пересчета десятичных чисел в двоично-десятичную систему счисления заключается в переводе каждой цифры десятичного числа в соответствующую ей тетраду.

 

Обратное преобразование выполняется аналогично.

Обозначения чисел

  1.3 Тема 3: "Упрощенные формулы перевода чисел из одной системы…

Формула ручного перевода для целых чисел

Например, переведем число 113 в двоичное. 113             …   Другим способом является возможность использования полинома для преобразования, или формулы Горнера.

Формула ручного перевода для дробных чисел

Например, переведем число 0,92410 в двоичное число. 0,924 =1,848 0,848 =1,696 0,696 …   Получаемый результат является приближенным: 0,111012. Число операций умножения зависит от требуемой точности.

Прямые, обратные и дополнительные коды

Так называемый прямой код используется для представления положительных чисел. Например, для представления числа 6 используется прямой код… Дополнительным кодом называют ситуацию, когда для задания отрицательного числа… Однако дополнительный код имеет недостаток, заключающийся в том, что для его преобразования необходимо использование…

Форма представления чисел с фиксированной запятой

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

Форма представления чисел с плавающей запятой

В формуле M – является мантиссой числа, представляющая собой дробь со знаком. p – величина, указывающая позицию запятой в числе. s – основание системы счисления.

Дешифраторы

Таблица истинности 3-х входового дешифратора имеет вид. x3 x2 x1 y0 y1 y2 y3 y4 …   Функционирование дешифратора описывается логическими функциями вида:

Шифраторы

Таблица истинности шифратора имеет вид. x7 x6 x5 x4 x3 x2 x1 x0 y2 y1 …   Функционирование шифратора описывается логическими функциями вида:

Мультиплексоры

  Функционирование мультиплексора описывается логическими функциями вида:

Демультиплексоры

При передаче данных по общему каналу с разделением времени (последовательным методом) нужны не только мультиплексоры, но и устройства, выполняющие обратное преобразование. Эта задача реализуется демультиплексорами.

Демультиплексор имеет один информационный вход, n адресных входов, и 2n выходов. Он обеспечивает коммутацию информационного входа на тот выход, номер которого задается кодом, поданному на адресные входы демультиплексора.

Описание логической функции может быть задано только аналитическим способом.

Графическое изображение демультиплексора задается следующим образом.

6 Лекция 6 – Комбинационные схемы и цифровые автоматы

6.1 Тема 1: "Комбинационные схемы"

Сумматоры

Таблица истинности одноразрядного сумматора имеет вид. pi ai bi Pi+1 Si …   Логическое выражение, описывающее работу сумматоров, имеет вид.

Асинхронный RS-триггер с прямыми входами

  Графическое изображение RS-триггера и его эквивалентная схема на…

Синхронный RS-триггер со статическим управлением

Функционирование синхронного RS-триггера может быть описано таблицей перехода. C S R Q   …   Графическое изображение синхронного RS-триггера и его эквивалентная схема на комбинационных устройствах имеет вид. …

Универсальный JK-триггер

Пока на входе C присутствует 1, информация с входов J и K записывается в синхронный триггер 1-ой ступени. Триггер 2-ой ступени заблокирован, то есть… Важным достоинством JK-триггеров является отсутствие запрещенной входной…  

Регистры

- сдвиг хранимого в регистре кода на некоторое число разрядов вправо или влево; - преобразование формы представления кода из последовательной в параллельную… По способу ввода/вывода двоичного кода регистры подразделяются на:

Программируемые логические матрицы

Графическая схема программируемой логической матрицы показана на следующем рисунке. При записи программы в ПЛМ высоким напряжением выжигаются диоды или транзисторы, находящиеся в соответствующих узлах.…

Счетчики

Счетчики характеризуются модулем счета М. При поступлении очередного входного сигнала, счетчики переходят в новое состояние. После поступления М… Счетчики классифицируются по значению модуля счета, направления счета, способу… По значению модуля различают двоичные (М=2n) и двоично-кодированные счетчики (М≠2n).

Суммирующий и вычитающий счетчик с последовательным переносом

При этом необходимо отметить, что значения на инверсных выходах T-триггеров…  

Суммирующий счетчик с параллельным переносом

Для повышения быстродействия используется параллельный счетчик. В параллельном счетчике включение очередного разряда определяется логическим элементом "И".

 

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

Счетчики с последовательно-параллельной передачей переноса

7.3.4 Счетчики с модулем счетчика, не равным 2n Принцип построения подобного класса счетных устройств состоит в исключении нескольких состояний обычного двоичного…

Пример реверсивного счетчика с предварительной установкой

 

Входы D предназначены для инициализации счетчика начальным значением. Начальное значение устанавливается при подаче положительного сигнала "R" (Reset), и разрешении изменения состояния счетчика "PE".

Для увеличения значения счетчика на единицу подается положительный импульс на вход "+1". Для уменьшения счетчика на единицу подается положительный импульс на вход "-1". В обоих случаях значение "PE" должно быть установлено в "0" (Изменение разрешено).

При достижении счетчиком значения 0 или 15 на соответствующем выходе переполнения устанавливается значение логического нуля.

8 Лекция 9 – Микропроцессорные системы. Однокристальные микропроцессоры

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

Для работы микропроцессора требуется ряд вспомогательных устройств – оперативная память, устройства вода-вывода, постоянная память. Совокупность указанных элементов, совместимых по архитектуре, электрическим параметрам и конструктивному исполнению называют микропроцессорным комплектом или микропроцессорной системой.

В МПС организуется процесс выполнения заданной программы. Универсальность МПС определяется тем, что для смены решаемых им задач достаточно внести изменение в программное, а не аппаратное обеспечение. Действия, которые могут быть заданы для МПС, называются системой команд микропроцессора.

Для МПС типичной является трехшинная структура:

 

Обозначения

CLK Clock
ЦПУ Центральное процессорное устройство
CPU Central Processing Unit
ПЗУ Постоянное запоминающее устройство
ROM Read Only Memory
ОЗУ Оперативное запоминающее устройство
RAM Random Access Memory
УВВ Устройство ввода вывода
I/O Input/Output

 

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

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

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

Задающий генератор предназначен для синхронизации работы всех элементов.

Последовательность команд, выполняемых микропроцессором одна за другой, называется микропрограммой. Начальная микропрограмма, устанавливающая состояние МПС в момент ее включения, хранится в ПЗУ, не зависящей от электропитания. Данные, необходимые для выполнения текущей микропрограммы, хранятся в ОЗУ. При выключении питания данные из ОЗУ стираются.

Шины представляют собой набор параллельных электрических цепей, число которых означает разрядность МПС. Первый в истории калькулятор, разработанный на базе МПС был 4-х разрядный. Системы на базе процессоров Pentium являются 64-х разрядными.

Для взаимодействия с внешними устройствами МПС могут использовать четыре режима:

- синхронный режим с устройствами, всегда готовыми к обмену (ПЗУ, ОЗУ);

- асинхронный, предполагающий ожидание специального управляющего сигнала готовности;

- программный, реализованный в программном обеспечении с помощью функций прерывания;

- обмен в режиме прямого доступа в память, когда процессор приостанавливает работу, и данные из внешнего устройства поступают в ОЗУ минуя процессор.

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

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

Основными типами микропроцессоров являются:

- однокристальные;

- с разрядно-модульной организацией (секционные).

Однокристальные микропроцессоры имеют фиксированную разрядность и фиксированную систему команд.

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

Одним из первых доступных процессоров, получивших широкое распространение, стал процессор 8080 компании Intel (отечественный аналог КР 580 ВМ 80А).

Этот микропроцессор имеет 8-и разрядную шину данных и 16-и разрядную шину адреса. Содержит примерно 5000 транзисторов. Структура микропроцессора показана на следующем рисунке.

 

АЛУ Арифметическое логическое устройство обеспечивает выполнение логических и арифметических операций над восьмиразрядными числами. Результат операции при этом помещается в аккумулятор
А Аккумулятор – основной регистр процессора, над которым возможно совершение арифметических и логических операций.
Рг1, Рг2 Внутренние регистры АЛУ, предназначенные для хранения результатов промежуточных операций
РгП Внутренний регистр признака – используется для хранения различной информации – переноса битов, знака, позиции запятой.
BC, DE, HL Регистры общего назначения
SP Указатель стека. Стек – область памяти, предназначенная для временного хранения часто используемых данных или промежуточных результатов.
РгА Регистр содержит адрес, по которому осуществляется выборка данных
РгК Внутренний регистр, в котором хранится текущая команда. После ее дешифрации, она поступает в соответствующий обработчик устройства АЛУ
Устр. управления Блок обеспечивает взаимодействие с внешними устройствами.

 

9 Лекция 10 – Принципы работы микропроцессоров

9.1 Тема 1: "Последовательность выполнения операций"

В микропроцессорных системах имеется 10 видов взаимодействия с ОЗУ или внешними устройствами.

- Выборка команды.

- Чтение из памяти.

- Запись в память.

- Чтение из стека.

- Запись в стек.

- Чтение из устройства ввода/вывода.

- Запись в устройство ввода-вывода.

- Прерывание

- Останов.

- Прерывание во время останова.

Вид операции кодируется одним байтом. Дополнительно могут использоваться один или два байта в качестве значения операции. Код операции совместно с управляющими сигналами вырабатывает на выходах микропроцессора сигналы управления внешними модулями МПС.

Процесс выполнения одной операции называется машинным циклом. Машинные циклы делятся на такты. Один цикл составляет от 3 до 5 тактов. Такты представляет собой последовательность прямоугольных импульсов, синхронизирующих работу МПС. Число тактов в секунду называется частотой работы МПС. Частота работы МПС 580 составляет 5 МГц, что в среднем, составляет, около 300 тыс. операций в секунду.

Возможен запрет тактирования МПС в случаях захвата шины внешними устройствами, или ожидания действий от них.

Первые три такта машинного цикла одинаковы в каждом из них, и образуют фазу адресации.

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

В такте 2 происходит дешифрация кода операции и установка внутренней логики процессора. Если внешнее устройство не успело подготовить необходимые данные, процессор переход в состояние "ожидания", иначе – переходит к такту 3.

В такте 3 осуществляется пересылка в процессор данных с шины данных.

Далее, загруженная операция выполняется, что может потребовать от 4 до 18 тактов.

Основная форма предоставления чисел в процессорах серии 580 – 8-и разрядная. Существует возможность выполнять операции над 16-и разрядными числами.

Система команд состоит из команд длиной 1, 2 или 3 байта.

 

В первом байте всегда содержится код операции.

Во втором байте указывается либо 8-и разрядное данное, то есть значение, подлежащее логическо-арифметической обработке, либо адрес устройства ввода/вывода.

Во втором и третьем байтах указывается либо 16-и разрядное данное, подлежащее логическо-арифметической обработке, либо адрес ячейки памяти.

9.2 Тема 2: "Система команд микропроцессора 580 ВМ80"

Система команд микропроцессора состоит из операций, обеспечивающих:

- пересылку данных;

- арифметические и логические операции;

- управление, ввод/вывод и работу со стеком.

Команды пересылки данных предусматривают передачу данных меду регистрами, или между регистрами и памятью. Названия команд пересылки данных обозначаются буквенными обозначениями, производными от слов MOVE, STORE, LOAD.

Арифметические и логические операции предусматривают выполнение соответствующих операций над регистрами или данными в памяти. Команды, по своему звучанию соответствуют английским обозначениям соответствующих команд – например, SUB – вычитание, ADD – сложение, OR – логическое или и пр.

Команды управления предусматривают прерывание последовательного выполнения программы, и переход к другому участку кода. Например – команда JMP обеспечивает переход выполнения программы на новый фрагмент. Команда CALL обеспечивает вызов подпрограммы, с последующим возращением в основную программу и продолжение ее выполнения.

Команды ввода/вывода предназначены для чтения и записи данных во внешние устройства, например, чтение кода нажатой клавиши на клавиатуре. Команды обозначаются словами IN для ввода данных, и OUT для вывода.

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

Всего система команд микропроцессора 580 состоит из 57 команд.

9.3 Тема 3: "Способы адресации"

В микропроцессоре серии 580 предусмотрено три способа адресации:

- прямая адресация;

- непосредственная адресация;

- косвенная адресация.

Прямая адресация предусматривает передачу данных между регистрами процессора. При этом каждый регистр кодируется 3-я битами.

A B C D E H L Кос. адр.

 

Пара регистров кодируется двумя битами

BC DE HL APS (A, PS)

 

Примеры кодирования команд с прямой адресацией представлены в следующей таблице

MOV C, D 01 001 010 Пересылка из регистра D в регистр C
ADD D 10 000 010 Прибавить к регистра А значение регистра D и результат занести в А

 

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

MOV A, 5Fh B1: 01 000 110 B2: 1011 1111 Запись в регистр А значения 5Fh
LDA C465h B1: 00 111 010 B2: 0110 0101 B3: 1100 0100 Запись в регистр А значения, расположенного по адресу C465h

 

Косвенная адресация предусматривает загрузку данного из ячейки памяти, адрес которой записан в один из регистров общего назначения.

DCX D B1: 00 01 1011 Вычитание единицы из ячейки памяти, адрес которой содержится в паре регистров DE
LDAX 34E0h B1: 00 00 1010 B2: 1000 0000 B3: 1101 0011 Запись в регистр А значения, адрес которого содержится в паре регистров BC

9.4 Тема 4: "Программирование микропроцессора серии К580"

Программирование возможно осуществлять на:

- в машинных кодах;

- ассемблере;

- языках высокого уровня (C, Pascal, Java, UML);

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

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

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

Программирование на языке высокого уровня позволяет осуществлять быструю разработку программного обеспечения, за счет легкого восприятия исходного кода разработчиками. Кроме того, значительно легче осуществляется коллективная разработка программного обеспечения. Однако после компиляции программа имеет размер на 10-100% больше, чем при программировании на ассемблере.

10 Лекция 11 – Программирование микропроцессора серии К580

10.1 Тема 1: "Пример программы на ассемблере"

Задание на разработку.

В памяти записан массив 8-и разрядных данных, начинающийся с ячейки 2210h, длиной 10 байт. Составить программу вывода элементов массива в устройство ввода/вывода с адресом F4h. Программу расположить в памяти, начиная с ячейки 2220h.

Сначала составляется блок-схема.

Затем, составляется программа на языке ассемблера. При этом, формат записей при программировании на ассемблере следующий.

Метки Операция Параметры Комментарий
  MOV A, 10h ; загрузить в регистр А значение 10
  CALL funcCalc ; вызвать арифметическую функцию, результат вернется в регистре B
label_1: CMP A, B ; сравнить результат со значением в регистре А
  JNZ label_1 ; при положительном сравнении – перейти на label_1

Затем, составляется программа на языке ассемблера.

  LXI H, 2210h ; Устанавливаем указатель на начало массива
  MVI B, 0Ah ; Указываем, что ожидается загрузка 10 чисел
Lab1: MOV A, M ; M – Memory. Загружаем в регистр А значение, расположенное по адресу, указанному в HL
  OUT F4h ; Выводим в УВВ № F4 загруженное в регистр А значение
  INX H ; Сдвигаем указатель на следующий элемент массива
  DCR B ; Уменьшаем счетчик загруженных данных
  JNZ Lab1 ; Если не достигнут 0 – повторяем цикл

 

В памяти устройства данная программа будет представлена в виде последовательности 8-и разрядных чисел.

Команда Адрес Коды Такты Байты
LXI H, 2210h 2220h 2221h 2222h
MVI B, 0Ah 2223h 2224h 0A
MOV A,M 2225h 7E
OUT F4h 2226h 2227h D3 F4
INX H 2228h
DCR B 2229h
JNZ Lab1 222Ah 222Bh 222Ch C2

 

Таким образом, данная программа занимает в памяти 13 байт и выполняется за 370 + 17, то есть за 387 тактов.

10.2 Пример электронного табло – бегущей строки

Задание на разработку.

Имеется электронное табло длиной 10 знакомест. В памяти записана фраза, которую требуется вывести. Фраза записана в массив 8-и разрядных данных, начинающийся с ячейки 2210h, длиной 100 байт. Незанятые байты массива содержат нули. Составить программу вывода бегущей строки в электронное табло. При этом по адресу F3h задается позиция знакоместа на табло (отсчет начинается с 0), а по адресу F4h задается выводимый символ.

Программа будет состоять из нескольких вспомогательных функций.

Функция pause – определяет задержку сдвига выводимого текста.

Функция fill_tablo – заполняет табло значениями из массива со сдвигом, указанным в регистре B.

Функция char_out – выводит один символ, расположенный по адресу HL в позицию табло, заданную в регистре C.

Сначала рисуем блок-схему основного цикла программы и вспомогательных функций.

 

 

Основной цикл Функция вывода на табло Функция паузы Вывод символа

 

Паузу в 1 секунду формируем за счет выполнения операции вычитания, занимающей 5 машинных тактов. Учитывая, что производительность процессора составляет 300 тыс. операций (тактов) в секунду, требуется 60 тыс. циклов вычитания.

Затем, составляется программа на языке ассемблера.

  LXI H, 2210h ; Устанавливаем указатель на начало массива
  MVI B, 00h ; Устанавливаем позицию первого выводимого символа
Out_1: Call Fill_Tablo ; Записываем 10 символов фразы на табло
  Call Pause ; Выдерживаем паузу в 1 секунду
  INC B ; Сдвигаем указатель начала выводимой фразы
  PUSH H ; Сохраняем указатель на начало массива
  MOV A, B  
  ADD L ; Прибавляем к HL значение аккумулятора
  MOV A, M ; M – Memory. Загружаем в регистр А значение, расположенное по адресу, указанному в HL
  JNZ NotZero ; Если не достигнут последний символ, выводим очередной
  MOV B, 00h ; Если достигнут 0 – выводим фразу с начала
NotZero: POP H ; Восстанавливаем начало массива
  JMP Out_1 ; Повторяем цикл вывода фразы бесконечно
       
; Fill_Tablo – вывод 10-и символов фразы на экран
       
Fill_Tablo: PUSH H ; Сохраняем указатель на начало массива
  MOV A, B ; Сохраняем в аккумулятор рабочее значение сдвига вывода фразы
  MVI C, 0Ah ; Будем выводить 10 символов из массива
  ADD L ; Прибавляем к HL значение аккумулятора
NextChar: MOV A, M ; M – Memory. Загружаем в регистр А значение, расположенное по адресу, указанному в HL
  JNZ NotZero1 ; Если не достигнут последний символ, выводим очередной
  LXI H, 2210h ; Устанавливаем указатель на начало массива
NotZero1: Call Char_Out ; Выводим символ
  INX H ; Подготавливаем следующий символ для вывода
  DCR C ; Подготавливаем следующее знакоместо
  JNZ NextChar ; Делаем 10 циклов
  POP H ; Восстанавливаем значение начала массива
  RET   ; Возвращаемся в основную программу
       
; Функция вывода символа на экран. Адрес символа – в HL, номер знакоместа в C
       
Char_Out: MOV A, C ; Загружаем номер знакоместа
  OUT F3h ; Устанавливаем во внешнем устройстве вывода номер знакоместа
  MOV A, M ; Загружаем символ, находящийся по адресу HL
  OUT F4h ; Выводим на табло загруженный в регистр А символ
  RET   ; Возвращаемся в функцию Fill_Tablo
       
; Функция установки паузы продолжительностью 1 секунду
       
Pause: PUSH B ; Регистр BC временно нужен для другой цели, поэтому сохраняем его в стеке
Label1: LXI B, EA60h ; 60000 циклов по 5 тактов обеспечат секундную паузу
  DCX B ; Вычитаем до тех пор…
  JNZ Label1 ; … пока значение не станет равно 0
  POP B ; Восстанавливаем значение регистра BC
  RET   ; Возвращаемся в основную программу

10.3 Тема 2: "Кодировка алфавитно-цифровой информации"

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

Первой таблицей, разработанной в мире, была таблица ASCII, где было определено 127 символов. Для их кодирования было достаточно 7 бит, при этом 8-ой бит (бит четности) использовался для контроля корректности передачи символов по сети передачи данных.

С развитием компьютеров, и их распространении по европейским странам, потребовалось добавить в таблицы так называемые диактрические знаки – например, Ú, ý, á и др. Для этого было решено использовать 8-ой бит. В результате таблица стала 255-и символьной и получила название Latin-1.

Впоследствии, таблицы были адоптированы под национальные особенности различных языков. Например, в России наибольшую популярность снискали таблица win-1251, используемая в операционной системе Windows, и таблица koi-8r, используемая в операционной системе Unix. Таблицы различаются расположением русских букв.

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

Пример кодировки некоторых символов в кодировке win-1251

Символ Десятичный код Шестнадцатиричный код Код Unicode Описание
Tab - Задание красной строки абзаца
Cr 0A - Перевод строки
Lf 0D - Возврат каретки
Space Пробел
A Латинская буква A
a Латинская буква a
A C0 Русская буква А
a E0 Русская буква a
Z 5A 005A Латинская буква Z
z 7A 007A Латинская буква z
Ц D6 Русская буква Ц
ц F6 Русская буква ц

 

11 Лекция 12 – Элементы микропроцессорного комплекта серии 580

Все ИМС, входящие в МПС 580, выполнены по n-МОП технологии. При этом уровни сигналов ввода/вывода соответствуют уровням ТТЛ, что позволяет использовать дополнительные логические ИМС.

Состав микропроцессорной системы КР 580 представлен в следующей таблице.

К 580 ВМ80 центральный процессор
К 580 ВИ53 программируемый таймер
К 580 ВК28 (ВК38) системный контроллер
К 580 ВВ51 последовательный интерфейс (RS-232)
К 580 ВВ53 интервальный таймер
К 580 ВВ55А 3 параллельных интерфейса Centronix (LPT)
К 580 ВТ57 контроллер прямого доступа в память
К 580 ВН59А контроллер прерываний
К 580 ВГ72 контроллер накопителя на гибких дисках
К 580 ВГ75 контроллер электронно-лучевой трубки
К 580 ВГ79 контроллер клавиатуры
К 580 ВК91А контроллер канала общего пользования
К 580 ВК92А контроллер приборных интерфейсов

 

Общие принципы взаимодействия процессора с элементами микропроцессорного комплекта следующие.

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

Системный контроллер 580 ВК 28 (Intel 8228)

Структурная схема системного контроллера, К 580 ВК28 имеет вид.

Шифратор является буферным элементом, включаемым между шиной данных микропроцессора и системной шиной данных. Данный элемент, в начале каждого цикла принимает слово состояния процессора, и устанавливает на выходах сигналы управления им.

Программируемый таймер К 580 ВИ53 (Intel 8253)

Таймер имеет три программируемых канала. Каждый канал может работать… - режим 0 - прерывание терминального счета: после вычитания числа N, загруженного в счетчик, на выходе формируется…

Параллельный интерфейс К 580 ВВ55 (Intel 8255)

Выбор внешнего канала, в который, или из которого будут записываться или… Указание режима работы контролера – запись или чтение данных из внешних устройств определяется входов "ВВ" и…

Последовательный интерфейс К 580 ВВ 51 (Intel 8251)

Особенностью устройства является необходимость предварительного… Асинхронный режим предусматривает задействование всех выходных сигналов: приема, передачи, сигнала готовности приема и…

Контроллер прерываний К 580 ВН 59 (Intel 8259)

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

Контроллер прямого доступа к памяти К 580 ИК 57 (Intel 8257)

Чтобы ускорить выполнение таких операций, используется метод ПДП – прямой доступ в память. В английском варианте этот метод называется DMA (Direct… Метод предусматривает, указание программным способом адреса памяти, откуда… Реализация данного метода осуществляется контроллерами ПДП, например К 580 ИК57 (ВТ57).

Контроллер клавиатуры и дисплея К 580 ВВ 79 (Intel 8279)

Контроллер ВД79 освобождает микропроцессор от задач постоянного сканирования клавиатуры и поддержания изображения на дисплее. В процессе выполнения программы периодически опрашивается слово состояния контроллера с целью определения состояния…

– Конец работы –

Используемые теги: Лекция, Представление, информации, ЭВМ, Позиционные, системы, счисления0.093

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

Что будем делать с полученным материалом:

Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Еще рефераты, курсовые, дипломные работы на эту тему:

Практическая работа №1-3 Представление информации в ЭВМ. Кодирование и подсчет количества информации. Приобретение навыков представления двоичной информации в ЭВМ
ЦЕЛЬ РАБОТЫ... Приобретение навыков представления двоичной информации в... ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ...

Лекции 1.ОСНОВНЫЕ ПОНЯТИЯ И КАТЕГОРИЯ ИНФОРМАТИКИ. 2 ЛЕКЦИИ 2. МАТЕМАТИЧЕСКИЕ ОСНОВЫ ИНФОРМАТИКИ. СИСТЕМЫ СЧИСЛЕНИЯ. 12 ЛЕКЦИЯ 3. АППАРАТНОЕ ОБЕСПЕЧЕНИЕ ЭВМ. 20 ЛЕКЦИЯ 4. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЬЮТЕРОВ.. 49 Широко распространён также англоязычный вар
gl ОГЛАВЛЕНИЕ... Лекции ОСНОВНЫЕ ПОНЯТИЯ И КАТЕГОРИЯ ИНФОРМАТИКИ... ЛЕКЦИИ МАТЕМАТИЧЕСКИЕ ОСНОВЫ ИНФОРМАТИКИ СИСТЕМЫ СЧИСЛЕНИЯ...

Кодирование числовой информации: позиционные и непозиционные системы счисления. Двоичная система счисления
Основные достоинства любой позиционной системы счисления простота выполнения арифметических операций и ограниченное количество символов цифр... Арифметические операции во всех позиционных системах счисления выполняются по...

Лекция 1. Тема: Операционная система. Определение. Уровни операционной системы. Функции операционных систем. 1. Понятие операционной системы
Понятие операционной системы... Причиной появления операционных систем была необходимость создания удобных в... Операционная система ОС это программное обеспечение которое реализует связь между прикладными программами и...

Лекция: Архитектура компьютерной системы В лекции подробно рассмотрена архитектура компьютерной системы: управление прерываниями
В лекции подробно рассмотрена архитектура компьютерной системы управление прерываниями памятью вводом выводом иерархия памяти ассоциативная... Содержание Введение Архитектура компьютерной системы... Введение...

Лекция первая. ИСТОРИЯ СОЦИОЛОГИИ КАК ОБЛАСТЬ ЗНАНИЯ Лекция вторая. ИЗ КАКИХ ИДЕЙ РОДИЛАСЬ СОЦИОЛОГИЯ: ИНТЕЛЛЕКТУАЛЬНЫЕ ИСТОКИ НОВОЙ НАУКИ Лекция третья. СОЦИОЛОГИЯ ОГЮСТА КОНТА ЛЕКЦИИ
Оглавление... ОТ АВТОРА... Лекция первая ИСТОРИЯ СОЦИОЛОГИИ КАК ОБЛАСТЬ ЗНАНИЯ Лекция вторая ИЗ КАКИХ ИДЕЙ РОДИЛАСЬ СОЦИОЛОГИЯ ИНТЕЛЛЕКТУАЛЬНЫЕ ИСТОКИ НОВОЙ НАУКИ...

Учебная программа курса. 4. Лекция 1. История психологии как наука. 5. Лекция 2. Античная философия и психология. 6. Лекция 3. Развитие психологии в Средневековый период. 19. Лекция 16. Тревога и защита
Введение... Учебная программа курса... Рабочая программа курса Лекция История психологии как наука...

ЛЕКЦИЯ № 1. Факторы выживания в природной среде ЛЕКЦИЯ № 2. Обеспечение водой ЛЕКЦИЯ № 3. Обеспечение питанием ЛЕКЦИИ по ОБЖ
КЛАСС Содержание Стр I четверть ЛЕКЦИЯ Факторы выживания в природной среде ЛЕКЦИЯ... ЛЕКЦИЯ Факторы выживания в природной... ЛЕКЦИЯ Обеспечение питанием...

Позиционные системы счисления
Любая позиционная сиситема характеризуется своим основанием. Основание позиционной системы счисления - это количество различных знаков или символов,… В этой системе всего две цифры - 0 и 1. Особую роль здесь играет число 2 и его… В двоичном виде можно представлять не только числа, но и любую другую информацию тексты, картинки, фильмы и…

0.036
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам