Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций по Информатике.doc
Скачиваний:
49
Добавлен:
15.04.2015
Размер:
257.54 Кб
Скачать

5. Рекомендуемая последовательность работ при разработке алгоритма.

1). Описание общего замысла алгоритма и выбор путей его построения. Желательно построить несколько вариантов структуры алгоритма и провести их анализ. Цель - найти наиболее простой путь решения задачи.

2). Математическая формализация задачи. Необходимо подробно выписать соотношения между входными и выходными данными - т.е. записать математическую модель. При выборе математической модели стараться использовать стандартные методы.

3). Разработка обобщенной схемы алгоритма. Согласование входов, выходов, логических связей укрупненных блоков (модулей) алгоритма.

4). Определение возможности использования стандартных процедур.

5). Разработка подробной блок-схемы.

6). Разработка блоков логического контроля для защиты алгоритма от различных недопустимых ситуаций (в основном - контроль входной информации). Обычно такой контроль включает:

- недостаточность или избыточность входной информации;

- диапазон изменения входной информации;

- заданную последовательность входной информации.

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

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

Рис. 6. Типовые схемы алгоритмов расчетных задач.

V Программное обеспечение эвм

1. Общая классификация

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

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

2. Языки программирования

Языком (в вычислительной технике) называется совокупность символов, соглашений и правил для описания данных и алгоритмов решения задач.

1. Классификация

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

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

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

Машинно-зависимые языки носят название ассемблеров.

Примерами реализаций машинно-зависимых языков для ПЭВМ являются макроассемблеры MASM (Microsoft) и TASM (Borland).

Строение ассемблеров опирается на архитектуру и наборы команд каждого типа ЭВМ.

Из машинно-независимых языков, реализованных на ПЭВМ можно отметить Бейсик, Паскаль, Си, Фортран-77, Пролог, Лисп, Смолток, Модула-2, Ада. Наибольшее распространение получили первые 4 из этого списка.