Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств
58 Микроконтроллеры AVR от азов программирования... 2.2. Алгоритм работы микропроцессорной системы Возможности процессора Мы узнали, как микропроцессор осуществляет работу с периферий ными устройствами — процессор читает числа из этих устройств и запи сывает информацию. Однако, кроме чтения и записи, процессор произво дит множество других операций по обработке полученной информации. С электронными числами процессор способен производить любые виды преобразований, которые вообще возможны с числами. Может складывать числа, вычитать, сравнивать между собой. Кроме того, он способен производить сдвиг разрядов двоичного числа вправо или влево, поразрядные логические операции. К логическим операциям относятся: ♦ логическое умножение (операция «И»); ♦ логическое сложение (операция «ИЛИ»); ♦ инверсия (операция «НЕ»). Некоторые процессоры умеют производить также умножение и деле ние. Однако нужно понимать, что все эти операции микропроцессор проделывает с простыми восьмиразрядными (иногда с шестнадцатираз рядными) двоичными числами. Все перечисленные выше операции про изводятся аппаратным образом. Для этого микропроцессор содержит ряд логических модулей, подоб ных тем, которые мы рассматривали в предыдущем Шаге. Все они состоят из набора логических элементов, регистров и т. п. Примером может слу жить рассмотренный выше сумматор. Главная же особенность микро процессора в том, что все эти операции выполняются между простыми двоичными числами размером в один (иногда два) байта. Но этого вполне достаточно. Любую более сложную задачу всегда можно разложить на более про стые составляющие и свести к операциям с байтами. Например, для того, чтобы перемножить два многоразрядных десятичных числа, их можно сначала перевести в двоичный вид и записать каждое такое число в несколько ячеек памяти. Затем составить небольшую программку, кото рая будет перемножать эти числа байт за байтом, а результаты склады вать с учетом разрядности. Главное — составить правильный алгоритм. Программа Как же заставить процессор выполнять все эти операции в нужной нам последовательности? Для этого нужно создать программу. Каждая
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==