Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Микропроцессорные системы (книга Комаров) / Проектирование МП систем (ч 1).doc
Скачиваний:
142
Добавлен:
08.03.2015
Размер:
2.92 Mб
Скачать

Алгоритмизация программы

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

Массовость это способность алгоритма выполнять преобразование при изменении входных данных в заданных пределах. Если в данных могут появляться недопустимые значения, то для обеспечения массовости необходимо выявлять их до выполнения преобразования и формировать результат в случае их обнаружения принудительным образом. Например, пусть необходимо выполнить операцию деления на число, вводимое из порта. Если во входных данных невозможно появление нулевого значения, то никаких мер по обеспечению массовости принимать не надо. Однако, если это возможно, то до выполнения операции деления необходимо анализировать введенное число на нуль и при его обнаружении формировать принудительный результат: "Деление невозможно" или "Результат операции равен 1" и т.д. и т.п.,не выполняя операцию деления.

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

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

Для описания алгоритмов могут использоваться различные средства: логические схемы, матричные схемы, графические схемы алгоритмов (ГСА) и т.п. При программировании на ассемблере наибольшее распространение получил язык ГСА, обеспечивающий высокую наглядность.

Любая ГСА может быть изображена с помощью следующих элементов (рис.6.31):

1) оператор начала; 4) оператор безусловного перехода;

2) оператор конца; 5) оператор условного перехода;

3) оператор действия; 6) оператор комментария.

Рис. 6.31. Элементы графических схем алгоритмов:

а) оператор начала; б) оператор конца; в) оператор действия;

г) оператор безусловного перехода; д) оператор условного перехода;

е) оператор комментария

Операторы "Начало" и "Конец" являются неисполняемыми и обозначают лишь начало и конец алгоритма.

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

Оператор комментария может присоединяться к любому из операторов ГСА, и в него помещается текст, раскрывающий функции этого оператора.

Таким образом, ГСА отражает логическую структуру алгоритма и устанавливает взаимосвязь между отдельными программными исполнителями во времени.