Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Основные алгоритмические структуры

Булева алгебра и логические схемы компьютера | Основные узлы ЭВМ | Базовая аппаратная конфигурация ПК | Устройства вывода информации | Программные средства общего назначения | Программные средства специального назначения | Системные программы | Операционные системы Windows. | Системы программирования | Основные функциональные возможности Еxcel |


Читайте также:
  1. I. Основные богословские положения
  2. I. Основные положения
  3. I. Основные темы курса.
  4. I. Основные цели фестиваля и конкурса
  5. III. Основные мероприятия на территории ЗСО
  6. LII. ОСНОВНЫЕ ПРАВИЛА РУССКОГО ЛИТЕРАТУРНОГО ПРОИЗНОШЕНИЯ
  7. V. Основные этапы и ожидаемые результаты реализации демографической политики в Ульяновской области на период до 2025 года

 

Изображены следующие блок-схемы: а - композиция, или следование; б - альтернатива, или развилка, в и г - блок-схемы, каждую из которых называют итерацией, или циклом (с предусловием (в), с постусловием (г)). S1 и S2 представляют собой в общем случае некоторые серии команд для соответствующего исполнителя, В - это условие, в зависимости от истинности (Т) или ложности (F) которого управление передаётся по одной из двух ветвей. Можно доказать, что для составления любого алгоритма достаточно представленных выше четырех блок-схем, если пользоваться их последовательностями и/или суперпозициями.

Блок-схема «альтернатива» может иметь и сокращенную форму, в которой отсутствует ветвь S2. Развитием блок-схемы типа альтернатива является блок-схема «выбор».

Развитие структуры типа «альтернатива»;

а) - неполная развилка; б) - структура «выбор»

 

Мы завершили рассмотрение основных структурных элементов алгоритмов: следования, развилки и цикла (повторения), являющихся базовыми элементами. Еще в 1966 году К. Бойм и Д. Якопини доказали, что алгоритм решения любой логической задачи можно составить из этих трех структур. С их помощью можно представлять любые линейные, разветвляющиеся и циклические алгоритмические процессы

Алгоритмические языки. Классификация

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

Правила преобразования информации в различных алгоритмах могут быть самыми различными. Однако все алгоритмы могут быть составлены из сравнительно небольшого числа элементарных команд.

Все многообразие существующих в настоящее время алгоритмических языков обычно классифицируют по степени их зависимости от типа машин, от ориентации на сферу применения, по специфике организационной структуры языковых конструкциий.

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

В мнемокоде цифровой код операции заменен буквенным (мнемоническим), а цифровые адреса - буквенными именами.

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

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

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

Машинно-независимые языки в последние годы обычно разделяют на: п роцедурно-ориентированные (Бейсик, Паскаль, Фортран, Кобол, ПЛ/1), проблемно-ориентированные (РПГ, Лисп, АПЛ), объектно-ориентированные (ADA, JAVA, Delpi, Visual Basic,Си++).

Каждая группа языков характеризуется некоторым уровнем. Считается, что уровень языка тем выше, чем более он абстрагирован от конкретного машинного языка. Иначе, говоря, язык принадлежит к более высокому уровню, если его операторы инициируют большее число машинных команд, чем операторы другого языка.


Дата добавления: 2015-11-03; просмотров: 69 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Словесная запись алгоритмов.| Структура алгоритмического языка

mybiblioteka.su - 2015-2024 год. (0.006 сек.)