Понятие структурного программирования



I. Введение.
II. Понятие, назначение и составные элементы.
1. Машинно.ориентированные системы программирования.
2. Машинно.независимые системы программирования.
3. Процедурно.ориентированные системы.
III. Основные критерии оценки качества программы для ЭВМ.
IV. Заключение.
V. Список литературы.
Традиционная технология программирования формировалась на заре вычислительной техники, когда в распоряжении пользователей были ограниченные ресурсы ЭВМ, а разработчик программ был в то же время и главным ее пользователем. В этих условиях главное внимание обращалось на получение эффективных программ в смысле оптимального использования ресурсов ЭВМ.
В настоящее время, когда сфера применения ЭВМ чрезвычайно расширилась, разработка и эксплуатация программ осуществляется, как правило, разными людьми. Поэтому наряду с эффективностью на первый план выдвигаются и другие важные характеристики программ такие, как понятность, хорошая документированность, надежность, гибкость, удобство сопровождения и т.п. Проблема разработки программ, обладающих такими качествами, объясняется трудоемкостью процесса программирования и связанным с этим быстрым ростом стоимости программного обеспечения.
Для создания "хорошей" программы появляется необходимость придерживаться определенных принципов или определенной дисциплины программирования. Значительный прогресс в области программирования достигается с использованием так называемого структурного программирования.
1. В.Ю. Демьяненко. «Программные средства создания и ведения баз данных» – М.: Финансы и статистика, 1984.
2. В.А. Мясников, С.А. Майоров, Г.И. Новиков. « ЭВМ для всех» – М.: Знание, 1985.
3. А.Г. Гейн. «Основы информатики и вычислительной техники» – М., 1997.
4. В.Ф. Ляхович. «Основы информатики». – Ростов-на-Дону: Феникс, 1996.
5. А.В. Петрова «Вычислительная техника и программирование» – М., 1990.
6. С.В. Симонович «Информатика: Базовый курс» – СПб, 1999.

Дисциплина: Информатика, Программирование, Базы данных
Тип работы:  Реферат
Бесплатно:  Антиплагиат
Объем: 14 страниц
В избранное:   
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН

КУРСОВАЯ РАБОТА

на тему:

Понятие структурного программирования

План:

I. Введение.

II. Понятие, назначение и составные элементы.
1. Машинно-ориентированные системы программирования.
2. Машинно-независимые системы программирования.
3. Процедурно-ориентированные системы.
III. Основные критерии оценки качества программы для ЭВМ.
IV. Заключение.
V. Список литературы.

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

Неотъемлемая часть современных ЭВМ – системы программного обеспечения,
являющиеся логическим продолжением логических средств ЭВМ, расширяющим
возможности аппаратуры и сферу их использования. Система программного
обеспечения, являясь посредником между человеком и техническими
устройствами машины, автоматизирует выполнение тех или иных функций в
зависимости от профиля специалистов и режимов их взаимодействия с ЭВМ.
Основное назначение программного обеспечения – повышение эффективности
труда пользователя, а также увеличение пропускной способности ЭВМ
посредством сокращения времени и затрат на подготовку и выполнение
программ. Программное обеспечение ЭВМ можно подразделить на общее и
специальное программное обеспечение.
Общее программное обеспечение реализует функции, связанные с работой
ЭВМ, и включает в себя системы программирования, операционные системы,
комплекс программ технического обслуживания.
Специальное программное обеспечение включает в себя пакеты прикладных
программ, которые проблемно ориентированы на решение вполне определенного
класса задач.
Системой программирования называется комплекс программ,
предназначенный для автоматизации программирования задач на ЭВМ. Система
программирования освобождает проблемного пользователя или прикладного
программиста от необходимости написания программ решения своих задач на
неудобном для него языке машинных команд и предоставляют им возможность
использовать специальные языки более высокого уровня. Для каждого из таких
языков, называемых входными или исходными, система программирования имеет
программу, осуществляющую автоматический перевод (трансляцию) текстов
программы с входного языка на язык машины. Обычно система программирования
содержит описания применяемых языков программирования, программы-
трансляторы с этих языков, а также развитую библиотеку стандартных
подпрограмм. Важно различать язык программирования и реализацию языка.
Язык – это набор правил, определяющих систему записей, составляющих
программу, синтаксис и семантику используемых грамматических конструкций.
Реализация языка – это системная программа, которая переводит
(преобразует) записи на языке высокого уровня в последовательность машинных
команд.
Имеется два основных вида средств реализации языка: компиляторы и
интерпретаторы.
Компилятор транслирует весь текст программы, написанной на языке
высокого уровня, в ходе непрерывного процесса. При этом создается полная
программа в машинных кодах, которую затем ЭВМ выполняет без участия
компилятора.
Интерпретатор последовательно анализирует по одному оператору
программы, превращая при этом каждую синтаксическую конструкцию, записанную
на языке высокого уровня, в машинные коды и выполняя их одна за другой.
Интерпретатор должен постоянно присутствовать в зоне основной памяти вместе
с интерпретируемой программой, что требует значительных объемов памяти.
Следует заметить, что любой язык программирования может быть как
интерпретируемым, так и компилируемым, но в большинстве случаев у каждого
языка есть свой предпочтительный способ реализации. Языки Фортран, Паскаль
в основном компилируют; язык Ассемблер почти всегда интерпретирует; языки
Бейсик и Лисп широко используют оба способа.
Основным преимуществом компиляции является скорость выполнения готовой
программы. Интерпретируемая программа неизбежно выполняется медленнее, чем
компилируемая, поскольку интерпретатор должен строить соответствующую
последовательность команд в момент, когда инструкция предписывает
выполнение.
В то же время интерпретируемый язык часто более удобен для
программиста, особенно начинающего. Он позволяет проконтролировать
результат каждой операции. Особенно хорошо такой язык подходит для
диалогового стиля разработки программ, когда отдельные части программы
можно написать, проверить и выполнить в ходе создания программы, не
отключая интерпретатора.
По набору входных языков различают системы программирования одно- и
многоязыковые. Отличительная черта многоязыковых систем состоит в том, что
отдельные части программы можно составлять на разных языках и помощью
специальных обрабатывающих программ объединять их в готовую для исполнения
на ЭВМ программу.
Для построения языков программирования используется совокупность
общепринятых символов и правил, позволяющих описывать алгоритмы решаемых
задач и однозначно истолковывать смысл созданного написания. Основной
тенденцией в развитии языков программирования является повышение их
семантического уровня с целью облегчения процесса разработки программ и
увеличения производительности труда их составителей.
По структуре, уровню формализации входного языка и целевому назначению
различают системы программирования машинно-ориентированные и машинно-
независимые.

Машинно-ориентированные системы программирования имеют входной язык,
наборы операторов и изобразительные средства которых существенно зависят от
особенностей ЭВМ (внутреннего языка, структуры памяти и т.д.). Машинно-
ориентированные системы позволяют использовать все возможности и
особенности машинно-зависимых языков:
высокое качество создаваемых программ;
возможность использования конкретных аппаратных ресурсов;
предсказуемость объектного кода и заказов памяти;
для составления эффективных программ необходимо знать систему команд и
особенности функционирования данной ЭВМ;
трудоемкость процесса составления программ (особенно на машинных
языках и ЯСК), плохо защищенного от появления ошибок;
низкая скорость программирования;
невозможность непосредственного использования программ, составленных
на этих языках, на ЭВМ других типов.
Машинно-ориентированные системы по степени автоматического
программирования подразделяются на классы:
1. Машинный язык. В таких системах программирования отдельный
компьютер имеет свой определенный Машинный Язык (далее МЯ), ему
предписывают выполнение указываемых операций над определяемыми ими
операндами, поэтому МЯ является командным. Однако, некоторые семейства ЭВМ
(например, ЕС ЭВМ, IBM370 и др.) имеют единый МЯ для ЭВМ разной мощности.
В команде любого из них сообщается информация о местонахождении операндов и
типе выполняемой операции. В новых моделях ЭВМ намечается тенденция к
повышению внутренних языков машинно-аппаратным путем реализовывать более
сложные команды, приближающиеся по своим функциональным действиям к
операторам алгоритмических языков программирования.
2. Система Символического Кодирования. В данных системах используются
Языки Символического Кодирования (далее ЯСК), которые так же, как и МЯ,
являются командными. Однако коды операций и адреса в машинных командах,
представляющие собой последовательность двоичных (во внутреннем коде) или
восьмеричных (часто используемых при написании программ) цифр, в ЯСК
заменены символами (идентификаторами), форма написания которых помогает
программисту легче запоминать смысловое содержание операции. Это
обеспечивает существенное уменьшение числа ошибок при составлении программ.
Использование символических адресов – первый шаг к созданию ЯСК. Команды
ЭВМ вместо истинных (физических) адресов содержат символические адреса. По
результатам составленной программы определяется требуемое количество ячеек
для хранения исходных промежуточных и результирующих значений. Назначение
адресов, выполняемое отдельно от составления программы в символических
адресах, может проводиться менее квалифицированным программистом или
специальной программой, что в значительной степени облегчает труд
программиста.
3. Автокоды. Существуют системы программирования, использующие языки,
которые включают в себя все возможности ЯСК, посредством расширенного
введения макрокоманд – они называются Автокоды. В различных программах
встречаются некоторые достаточно часто использующиеся командные
последовательности, которые соответствуют определенным процедурам
преобразования информации. Эффективная реализация таких процедур
обеспечивается оформлением их в виде специальных макрокоманд и включением
последних в язык программирования, доступный программисту. Макрокоманды
переводятся в машинные команды двумя путями – расстановкой и
генерированием. В постановочной системе содержатся остовы – серии команд,
реализующие требуемую функцию, обозначенную макрокомандой. Макрокоманды
обеспечивают передачу фактических параметров, которые в процессе трансляции
вставляются в остов программы, превращая её в реальную машинную
программу. В системе с генерацией имеются специальные программы,
анализирующие макрокоманду, которые определяют, какую функцию необходимо
выполнить и формируют необходимую последовательность команд, реализующих
данную функцию. Обе указанных системы используют трансляторы с ЯСК и набор
макрокоманд, которые также являются операторами автокода. Развитые автокоды
получили название Ассемблеры. Сервисные программы и пр., как правило,
составлены на языках типа Ассемблер.
4. Макрос. В таких системах язык, являющийся средством для замены
последовательности символов описывающих выполнение требуемых действий ЭВМ
на более сжатую форму – называется Макрос (средство замены). В основном,
Макрос предназначен для того, чтобы сократить запись исходной программы.
Компонент программного обеспечения, обеспечивающий функционирование
макросов, называется макропроцессором. На макропроцессор поступает
макросопределяющий и исходный текст. Реакция макропроцессора на вызов –
выдача выходного текста. Макрос одинаково может работать, как с
программами, так и с данными.

Машинно-независимые системы программирования – это средство описания
алгоритмов решения задач и информации, подлежащей обработке. Они удобны в
использовании для широкого круга пользователей и не требуют от них знания
особенностей организации функционирования ЭВМ. В таких системах программы,
составляемые языках, имеющих название высокоуровневых языков
программирования, представляют собой последовательности операторов,
структурированные согласно правилам рассматривания языка (задачи, сегменты,
блоки и т.д.). Операторы языка описывают действия, которые должна выполнять
система после трансляции программы на МЯ. Таким образом, командные
последовательности (процедуры, подпрограммы), часто используемые в машинных
программах, представлены в высокоуровневых языках отдельными операторами.
Программист получил возможность не расписывать в деталях вычислительный
процесс на уровне машинных команд, а сосредоточиться на основных
особенностях алгоритма.
Среди машинно-независимых систем программирования следует выделить:
1. Процедурно-ориентированные системы. Входные языки программирования
в таких системах служат для записи алгоритмов (процедур) обработки
информации, характерных для решения задач определенного класса. Эти языки,
должны обеспечить программиста средствами, позволяющими коротко и четко
формулировать задачу и получать результаты в требуемой форме. Процедурных
языков очень много, например: Фортран, Алгол – языки, созданные для решения
математических задач; Simula, Слэнг - для моделирования; Лисп, Снобол – для
работы со списочными структурами.
2. Проблемно-ориентированные системы в качестве входного языка
используют язык программирования с проблемной ориентацией. С расширением
областей ... продолжение

Вы можете абсолютно на бесплатной основе полностью просмотреть эту работу через наше приложение.
Похожие работы
Автоматизация работы администратора гостиницы
CASE-технологии. Современные методы и средства проектирования информационных систем
Автоматизированный справочник отдела кадров
Автоматизация учета основных средств
Автоматизация работы отдела кадров
Автоматизация выдачи справок по товарам в универмаге
Анализ процесса даталогического моделирования и автоматизированные системы ее реализации
Операционная система unix: основные понятия
Информационные системы
Создание автоматизированной информационной системы для организации выдачи кредита банка
Дисциплины