🗊 Учебный курс Введение в цифровую электронику Лекция 6 Программирование микропроцессорной системы кандидат технических н

Категория: Информатика
Нажмите для полного просмотра!
  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №1  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №2  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №3  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №4  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №5  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №6  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №7  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №8  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №9  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №10  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №11  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №12  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №13  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №14  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №15  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №16  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №17  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №18  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №19  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №20  
  Учебный курс   Введение в цифровую электронику     Лекция 6   Программирование микропроцессорной системы   кандидат технических н, слайд №21

Содержание

Вы можете ознакомиться и скачать Учебный курс Введение в цифровую электронику Лекция 6 Программирование микропроцессорной системы кандидат технических н. Презентация содержит 21 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Учебный курс

Введение в цифровую электронику 
 
Лекция 6 
Программирование микропроцессорной системы

кандидат технических наук, доцент 
Новиков Юрий Витальевич
Описание слайда:
Учебный курс Введение в цифровую электронику Лекция 6 Программирование микропроцессорной системы кандидат технических наук, доцент Новиков Юрий Витальевич

Слайд 2





Языки программирования
Языки высокого уровня — удобные для разработчика, не зависят от аппаратуры, имеют развитые готовые средства обработки и отображения, программы легко переносятся на другую аппаратуру; но формируют большие и медленные программы (Си, Паскаль, Фортран и т.д.);
Языки низкого уровня — максимально приближены к аппаратуре, трудно писать сложные программы обработки, программы могут не работать на другой аппаратуре; но формируют максимально компактные и быстрые программы (язык машинных кодов, Ассемблер);
Сочетание языков высокого и низкого уровней даёт оптимальные результаты.
Описание слайда:
Языки программирования Языки высокого уровня — удобные для разработчика, не зависят от аппаратуры, имеют развитые готовые средства обработки и отображения, программы легко переносятся на другую аппаратуру; но формируют большие и медленные программы (Си, Паскаль, Фортран и т.д.); Языки низкого уровня — максимально приближены к аппаратуре, трудно писать сложные программы обработки, программы могут не работать на другой аппаратуре; но формируют максимально компактные и быстрые программы (язык машинных кодов, Ассемблер); Сочетание языков высокого и низкого уровней даёт оптимальные результаты.

Слайд 3





Команды процессора
Могут состоять из одного или нескольких байт; сколько именно байт команды читать процессору — указано в первом байте (слове). Короче команда — быстрее, длиннее команда — сложнее операция.
Включают в себя код операции, которую должен выполнить процессор, а также указания на операнды, с которыми надо выполнять операцию.
Образуют систему команд, сложность и полнота которой определяет быстродействие процессора, его универсальность и удобство использования.
Преобразуются процессором в последовательность внутренних микрокоманд.
Описание слайда:
Команды процессора Могут состоять из одного или нескольких байт; сколько именно байт команды читать процессору — указано в первом байте (слове). Короче команда — быстрее, длиннее команда — сложнее операция. Включают в себя код операции, которую должен выполнить процессор, а также указания на операнды, с которыми надо выполнять операцию. Образуют систему команд, сложность и полнота которой определяет быстродействие процессора, его универсальность и удобство использования. Преобразуются процессором в последовательность внутренних микрокоманд.

Слайд 4





Операнды
Операнды — это коды данных, с которыми производятся операции при выполнении программы (входные и выходные);
Расположение операндов: 
Во внутренних регистрах процессора — самое удобное и легкодоступное, но недостаточно места;
В ячейках памяти — самое часто встречающееся и достаточно удобное (доступно большое количество ячеек) — массивы;
В устройствах ввода/вывода — самый редкий случай, при обмене с внешними устройствами.
Адресация операндов — это способ указания процессору на место расположения операндов (присутствует в каждой команде).
Описание слайда:
Операнды Операнды — это коды данных, с которыми производятся операции при выполнении программы (входные и выходные); Расположение операндов: Во внутренних регистрах процессора — самое удобное и легкодоступное, но недостаточно места; В ячейках памяти — самое часто встречающееся и достаточно удобное (доступно большое количество ячеек) — массивы; В устройствах ввода/вывода — самый редкий случай, при обмене с внешними устройствами. Адресация операндов — это способ указания процессору на место расположения операндов (присутствует в каждой команде).

Слайд 5





Непосредственная адресация и прямая адресация операндов
Описание слайда:
Непосредственная адресация и прямая адресация операндов

Слайд 6





Регистровая адресация и косвенная адресация операндов
Описание слайда:
Регистровая адресация и косвенная адресация операндов

Слайд 7





Автоинкрементная адресация и автодекрементная адресация
Автоинкрементная адресация: похожа на косвенную, но после выполнения операции содержимое регистра увеличивается на 1 или на 2 (инкрементируется — постинкремент);
Автодекрементная адресация работает, как косвенная, но перед выполнением операции содержимое регистра уменьшается на 1 или на 2 (декрементируется — предекремент);
Оба типа адресации применяются для работы с массивами данных (последовательного их сканирования вверх или вниз);
Если оба типа адресации используются одновременно, то мы получаем буфер типа LIFO (например, в стеке).
Описание слайда:
Автоинкрементная адресация и автодекрементная адресация Автоинкрементная адресация: похожа на косвенную, но после выполнения операции содержимое регистра увеличивается на 1 или на 2 (инкрементируется — постинкремент); Автодекрементная адресация работает, как косвенная, но перед выполнением операции содержимое регистра уменьшается на 1 или на 2 (декрементируется — предекремент); Оба типа адресации применяются для работы с массивами данных (последовательного их сканирования вверх или вниз); Если оба типа адресации используются одновременно, то мы получаем буфер типа LIFO (например, в стеке).

Слайд 8





Адресация слов и байтов
Описание слайда:
Адресация слов и байтов

Слайд 9





Сегментирование памяти
Описание слайда:
Сегментирование памяти

Слайд 10





Вычисление адреса в памяти при сегментировании
Описание слайда:
Вычисление адреса в памяти при сегментировании

Слайд 11





Основные группы команд процессора
Команды пересылки данных — данные пересылаются (копируются) между  памятью, регистрами процессора и УВВ. Не требуют выполнения каких-нибудь операций над данными;
Арифметические команды — выполнение арифметических операций (сложение, вычитание, и т.д.). Один или два входных операнда и один выходной;
Логические команды — выполнение логических операций (И, ИЛИ, инверсия, очистка, сдвиги). Один или два входных операнда и один выходной;
Команды переходов — условные и безусловные. Операндов нет. Изменяется состояние регистра-счётчика команд. Вызов подпрограмм, ветвление алгоритмов.
Описание слайда:
Основные группы команд процессора Команды пересылки данных — данные пересылаются (копируются) между памятью, регистрами процессора и УВВ. Не требуют выполнения каких-нибудь операций над данными; Арифметические команды — выполнение арифметических операций (сложение, вычитание, и т.д.). Один или два входных операнда и один выходной; Логические команды — выполнение логических операций (И, ИЛИ, инверсия, очистка, сдвиги). Один или два входных операнда и один выходной; Команды переходов — условные и безусловные. Операндов нет. Изменяется состояние регистра-счётчика команд. Вызов подпрограмм, ветвление алгоритмов.

Слайд 12





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

Слайд 13





Арифметические команды
Команды операций с фиксированной запятой (сложение, вычитание, умножение, деление) — числа как со знаком, так и без знака;
Команды операций с плавающей запятой (сложение, вычитание, умножение, деление) — операнды в двух или более ячейках памяти, в сложных процессорах: тригонометрические, логарифмические, мультимедийные и т.д.;
Команды очистки (выполняются быстрее команд пересылок, иногда считаются логическими командами);
Команды инкремента и декремента — увеличение на 1 или уменьшение на 1;
Команда сравнения — формирует флаги результата на основании сравнения (вычитания) операндов.
Описание слайда:
Арифметические команды Команды операций с фиксированной запятой (сложение, вычитание, умножение, деление) — числа как со знаком, так и без знака; Команды операций с плавающей запятой (сложение, вычитание, умножение, деление) — операнды в двух или более ячейках памяти, в сложных процессорах: тригонометрические, логарифмические, мультимедийные и т.д.; Команды очистки (выполняются быстрее команд пересылок, иногда считаются логическими командами); Команды инкремента и декремента — увеличение на 1 или уменьшение на 1; Команда сравнения — формирует флаги результата на основании сравнения (вычитания) операндов.

Слайд 14





Логические (побитовые) команды
Логическое И, логическое ИЛИ, сложение по модулю 2 (Исключающее ИЛИ) — маскирование битов в 0 или 1, побитная инверсия по маске;
Логические, арифметические и циклические сдвиги — вправо или влево с разными значениями вдвигаемых битов;
Проверка битов и операндов — устанавливает флаги состояния на основании проверки (на нуль, на знак);
Установка и очистка битов (флагов) регистра состояния процессора (PSW) — для принудительного перевода процессора в тот или иной режим.
Описание слайда:
Логические (побитовые) команды Логическое И, логическое ИЛИ, сложение по модулю 2 (Исключающее ИЛИ) — маскирование битов в 0 или 1, побитная инверсия по маске; Логические, арифметические и циклические сдвиги — вправо или влево с разными значениями вдвигаемых битов; Проверка битов и операндов — устанавливает флаги состояния на основании проверки (на нуль, на знак); Установка и очистка битов (флагов) регистра состояния процессора (PSW) — для принудительного перевода процессора в тот или иной режим.

Слайд 15





Выполнение сдвигов (вправо)
Описание слайда:
Выполнение сдвигов (вправо)

Слайд 16





Команды переходов
Команды безусловных переходов (независимо ни от чего);
Команды переходов с возвратом в исходную точку;
Команды условных переходов (в зависимости от значений флагов регистра состояния процессора):
Переход, если равно нулю;
Переход, если не равно нулю;
Переход, если есть переполнение;
Переход, если нет переполнения;
Переход, если больше нуля;
Переход, если меньше или равно нулю и т.д.;
Для проверки условий перехода можно применять команду сравнения, но флаги устанавливаются и любой другой командой, кроме команд переходов.
Описание слайда:
Команды переходов Команды безусловных переходов (независимо ни от чего); Команды переходов с возвратом в исходную точку; Команды условных переходов (в зависимости от значений флагов регистра состояния процессора): Переход, если равно нулю; Переход, если не равно нулю; Переход, если есть переполнение; Переход, если нет переполнения; Переход, если больше нуля; Переход, если меньше или равно нулю и т.д.; Для проверки условий перехода можно применять команду сравнения, но флаги устанавливаются и любой другой командой, кроме команд переходов.

Слайд 17





Регистр состояния (FLAGS) процессора Intel 8086
CF — флаг переноса при арифметических операциях, 
PF — флаг четности результата, 
AF — флаг дополнительного переноса, 
ZF — флаг нулевого результата, 
SF — флаг знака (старший бит результата), 
TF — флаг пошагового режима (для отладки), 
 IF — флаг разрешения аппаратных прерываний, 
DF — флаг направления при строковых операциях, 
OF — флаг переполнения.
Описание слайда:
Регистр состояния (FLAGS) процессора Intel 8086 CF — флаг переноса при арифметических операциях, PF — флаг четности результата, AF — флаг дополнительного переноса, ZF — флаг нулевого результата, SF — флаг знака (старший бит результата), TF — флаг пошагового режима (для отладки), IF — флаг разрешения аппаратных прерываний, DF — флаг направления при строковых операциях, OF — флаг переполнения.

Слайд 18





Реализация разветвления на две ветки
Описание слайда:
Реализация разветвления на две ветки

Слайд 19





Реализация разветвления на три ветки
Описание слайда:
Реализация разветвления на три ветки

Слайд 20





Команды перехода с возвратом в исходную точку (прерывания)
Используются для вызова часто выполняемых подпрограмм;
Обслуживаются по механизму прерываний (сохранение в стеке параметров возврата);
Требуют задания входного числа — смещения в памяти для адреса начала подпрограммы или номера прерывания (номера элемента в таблице векторов прерываний) — программные прерывания;
Для возврата в исходную точку используется специальная команда (безусловный переход) в конце подпрограммы, которая извлекает из стека параметры возврата.
Упрощают написание программ, но замедляет их исполнение.
Описание слайда:
Команды перехода с возвратом в исходную точку (прерывания) Используются для вызова часто выполняемых подпрограмм; Обслуживаются по механизму прерываний (сохранение в стеке параметров возврата); Требуют задания входного числа — смещения в памяти для адреса начала подпрограммы или номера прерывания (номера элемента в таблице векторов прерываний) — программные прерывания; Для возврата в исходную точку используется специальная команда (безусловный переход) в конце подпрограммы, которая извлекает из стека параметры возврата. Упрощают написание программ, но замедляет их исполнение.

Слайд 21





Методы увеличения быстродействия программ
Использование вставок на языках низкого уровня в наиболее критичных местах;
Минимизация количества команд в программе — рациональное построение алгоритма;
Использование команд с минимальным временем исполнения (например, очистка, инкремент, декремент);
Минимизация количества команд переходов;
Минимизация количества подпрограмм, вызываемых по механизму прерываний — только самые необходимые и часто используемые;
Оптимизация обращений к устройствам ввода/вывода;
Рациональное расположение данных в памяти.
Описание слайда:
Методы увеличения быстродействия программ Использование вставок на языках низкого уровня в наиболее критичных местах; Минимизация количества команд в программе — рациональное построение алгоритма; Использование команд с минимальным временем исполнения (например, очистка, инкремент, декремент); Минимизация количества команд переходов; Минимизация количества подпрограмм, вызываемых по механизму прерываний — только самые необходимые и часто используемые; Оптимизация обращений к устройствам ввода/вывода; Рациональное расположение данных в памяти.



Похожие презентации
Mypresentation.ru
Загрузить презентацию