Главная Кремниевые микросхемы 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 [ 50 ] 51 52 53 54 55 56 57 58 59 60 контрольный разряд четности, в каждом слове было четным. На рис. 10.3, а приведена схема контроля четности для четного числа входов. В этой схеме единичный сигнал на выходе указывает на наличие нечетного числа единиц в слове ОоО[02000ф^Оу и может использоваться при посылке сигнала корректировки. Та же схема может быть использована для определения ошибки в передаче, так как сформирует единичный сигнал на выходе, если слово данных содержит нечетное число единиц. В правильности работы схемы нетрудно убедиться путем подачи на входы нескольких различных слов. Для удобства на рис. 10.3, б приведена таблица истинности для элемента ИСКЛЮЧАЮЩЕЕ ИЛИ. При применении подобных схем производится проверка кода передаваемого знака. Если общее число единиц нечетное, то посылка не принимается, и выдается сообщение об ошибке. Иногда применяется контроль по нечетности, т. е. передача организуется так, чтобы общее число единиц в каждом коде было нечетным. Микро-ЭВМ настолько надежны по сравнению с прежними вычислительными машинами, что проверяющие ошибки коды ке применяются для внутренней передачи данных, а используются только для связи с внешними устройствами. Иногда нрименяется синхронная передача данных между микропроцессором и внешними устройствами, такими, например, как устройство управления флоппи-диском. Здесь не используются стартовые и стоповые разряды, а периферийные устройства синхронизируются с микропроцессором. Применяется и универсальный синхронный/асинхронный приемопередатчик (USART)-устройство, способное преобразовывать параллельные данные фактически в любой требуемый формат последовательной передачи, синхронной или асинхронной. ГЛАВА ОДИННАДЦАТАЯ Краткое введение в технику программирования Ранее упоминалось, что характерной особенностью микропроцессора, делающей его столь мощным вычислительным средством, является его способность следовать не только строго фиксированному порядку выполне- ния команд, но и при определенных обстоятельствах осуществлять условные и безусловные переходы. Как микропроцессор реализует переход в программе? Организовать переходы в программе позволяет применение специальных команд такого типа, как: BRANCH unconditional - ПЕРЕХОД безусловный. Эта команда устанавливает счетчик команд в состояние, соответствующее адресу в памяти, выпадающему из общей последовательности адресов. При этом очередная команда программы выбирается из памяти по новому адресу (другое название команды JUMP unconditional). BRANCH conditional - ПЕРЕХОД условный. Если встречается особое условие, на которое есть ссылка в команде (обычно проверка установки определенного флага), счетчик команд при этом устанавливается так же, как описывалось в предыдущем случае. Очередная команда выбирается из памяти тоже по новому адресу (другое название этой команды JUMP conditional). CALL subroutine-ВЫЗОВ подпрограммы. По этой команде содержимое счетчика команд получает приращение, а адрес следующей команды запоминается в стеке. Он служит адресом возврата из подпрограммы. Счетчик команд далее загружается адресом подпрограммы, и процедура продолжается. CONDITIONAL CALL .subroutine - УСЛОВНЫЙ ВЫЗОВ подпрограммы. (Вызов в зависимости от состояния соответствующего флага условия). RETURN -ВОЗВРАТ. По этой команде осуществляется выборка адреса возврата, находящегося в стеке, и загрузка его в счетчик команд с тем, чтобы после возвращения из подпрограммы могла далее выполняться основная программа. CONDITIONAL RETURN - УСЛОВНЫЙ ВОЗВРАТ (возврат в зависимости от состояния соответствующего флага условия). Какие этапы необходимо выполнить при составлении сложной программы? Основные этапы составления программы показаны на рнс. 11.1. При программировании на языке высокого уровня трансляция и загрузка выполняются по специ.- 7* . 155 альным программам. При отладке программ существенную помощь оказывает управляющая программа (монитор). Прежде чем приступить к написанию программы, необходимо сформулировать основную идею построения схемы вычислений, называемой схемой алгоритма. Ранее Алгоритм (основная идея) Символьный язык Машинный . язык В память Планируемая программа Написанная программа Грансляи,ия Загрузка Отладка Найдена ошибка Найдена ошибка Запись на ленту и/или прогон (реализация) Рис. 11.1. Основные этапы составления программы рассматривалась программа сложения двух чисел. Предположим, что теперь нужно сложить все целые числа в интервале от 1 до 200, т. е. получить сумму 1+2--3---.-. ...+199 + 200, Чтобы вычислить эту сумму непосредственно, потребуется очень большое число шагов в программе и записывать все это будет слишком утомительно. Можно, однако, составить программу с использованием команд перехода, что существенно сократит число шагов, необходимых для еа выполнения. Основную идею алгоритма, реализуемого программой, можно было бы выразить следующим образом. Необходимо получить результат, который назовем SUM (сум-.мой). Обозначим его через S. Пусть имеется число N, равное, как и сумма S, 0. Найдем число S+N и назовем |
© 2007 EPM-IBF.RU
Копирование материалов разрешено в случае наличия письменного разрешения |