Программирование в компьютерных системах

Автор работы: Пользователь скрыл имя, 28 Апреля 2015 в 22:04, отчет по практике

Описание

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

Содержание

1. Специальность "Программирование в компьютерных системах" 2
Область профессиональной деятельности: 2
Объекты профессиональной деятельности: 2
Задачи профессиональной деятельности 2
Общие компетенции 4
Основные виды профессиональной деятельности: 4
2.Автоматизированные информационные системы и технологии 6
3.Квалификационные требования к оператору ЭВМ 9
4. Системное и прикладное программирование 11
Этапы развития ПО 11
Общие понятия об алгоритмизации. 27
Основные понятия системного и прикладного программирования. 35
Этапы подготовки программы 40
Основные задачи системного и прикладного программирования. 45
Процесс создания программы. 46
Назначение и характеристика современных языков программирования. 48
5. Основы программирования на языке VBA 58
Программирование линейных алгоритмов. 59
Организация ввода-вывода информации. 65
Программы разветвляющих алгоритмов. 70
Программирование циклических алгоритмов. 76
Программирование алгоритмов с массивами. 82
Изучение объектной модели. 87
Использование элементов управления 99

Работа состоит из  1 файл

учебная практика 3 курс.doc

— 892.00 Кб (Скачать документ)

АСНИ — автоматизированная система управления научными исследованиями, охватывает деятельность научных подразделений, входящих в состав предприятия.

САПР — система автоматизированного проектирования, обеспечивает деятельность проектно-конструкторских подразделений предприятия.

АСТПП — автоматизированная система технологической подготовки производства, обеспечивает основную деятельность технологических подразделений предприятия.

АСУ ГПС — автоматизированная система управления гибкой производственной системой (ГПС), обеспечивает основную производственную деятельность предприятия.

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

3.Квалификационные требования к оператору ЭВМ

Должность «Оператор электронно-вычислительных и вычислительных машин» относится к категории "Рабочие".

Знает и применяет в деятельности:

- технико-эксплуатационные  характеристики вычислительных  машин;

- строение пульта управления  и правила технической эксплуатации  ЭВМ;

- руководящие материалы, которые определяют последовательность  и содержание выполняемых операций технологического процесса;

- действующие шифры и  коды;

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

- основы коммутации и  простые блок-схемы настройки  машин;

- формы выходных и тех, выпускаемых документов;

- основы программирования  в объеме специальной или общего  образования и курсовой подготовки.

Характеристика работ, задачи и должностные обязанности

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

Вводит информацию в электронно-вычислительные машины (ЭВМ) с технических носителей информации и каналов связи и выводит ее из машины.

Передает по каналам связи полученные на машинах расчетные данные в следующих операций.

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

Выписывает счета-фактуры составляет ведомости, таблицы, сводки, отчеты механизированным способом с выводом информации на перфоленту.

Контролирует исчисления, выверяет разногласия с первичным документом.

Готовит машины к работе, устанавливает шины управления или блок-схемы на данную работу.

Работает с математическими справочниками, таблицами.

Оформляет сопроводительный документ и рабочий наряд на выполненные работы.

Знает, понимает и применяет действующие нормативные документы, касающиеся его деятельности.

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

4. Системное и прикладное программирование

Этапы развития ПО

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

В истории развития программного обеспечения можно выделить следующие поколения:

Первое поколение – зарождение ПО.

Второе поколение – развитие ПО: использование алгоритмических языков и библиотек стандартных программ.

Третье поколение – широкое использование ПО, появление развитых операционных систем.

Четвертое поколение – ПО, дающее возможность коллективного использования ЭВМ.

Первое поколение

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

Таким образом, первое поколение программного обеспечения характеризуется программированием на языке машины с использованием стандартных программ, компилирующих и интерпретирующих систем, символического программирования, макрокоманд и ручного режима отладки. Стандартные программы и системы их использования, появившиеся на первом этапе развития ПО, до сих пор не утратили своего назначения.

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

Второе поколение

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

Третье поколение

Попытки превращения разрозненного программного обеспечения в единую систему, путем создания всевозможных, связующих программ и частичной переработки некоторых из имеющихся, не могли серьезно продвинуть решение проблемы. Стало ясно, что основой ПО должен быть некоторый общий программный комплекс. Такие комплексы программ стали называть операционными системами (ОС). Операционная система — это совокупность программ для управления оборудованием, данными, вычислительным процессом и связи оператора с машиной. То есть, это организованный набор программ и данных, разработанный специально для управления ресурсами вычислительной системы облегчения создания программ и управления процессом их выполнения с помощью вычислительной системы. Таким образом, эволюция программного обеспечения ЭВМ привела к возникновению операционных систем, которые не позволяют рядовому пользователю общаться непосредственно с ЭВМ, но предоставляют ему большое количество самых разнообразных удобств. Пользователь уже работает не просто на ЭВМ, а в вычислительной среде «ЭВМ – операционная система». Операционная система представляет собой программное продолжение устройств управления. Программное обеспечение машин второго поколения содержало 350-400 тысяч команд, а только дисковая операционная система для ЕС ЭВМ содержала порядка 1 млн. команд. В 1975 г. закончена разработка операционной системы ОС – 4.0, позволяющей подключать к ЭВМ и обслуживать многих абонентов, оснащенных алфавитно-цифровыми графическими дисплеями. В 1976 году операционные системы содержали программы, общий объем которых превышает миллион машинных слов. Операционная система позволяет использовать наиболее распространенные языки программирования того времени: фортран, Алгол-60, Кобол, ПЛ/1, РПГ. Для каждого из них создаются трансляторы и библиотеки стандартных программ. Использование названных языков и трансляторов открывает доступ к ЭВМ непрофессиональным пользователям. Трансляторы подробно сообщают об ошибках, обнаруженных как в процессе трансляции, так и при выполнении оттранслированных программ. Они имеют также развитые средства отладки. Кроме языков высокого уровня, операционная система позволяет применять машинно-ориентированный язык Ассемблер со средствами макроязыка (в результате чего максимально используется все возможности технических средств), а также системные макрокоманды и макрокоманды пользователя. Программное обеспечение ЭВМ строится открытым, т.е. его состав может постоянно расширятся, включать новые компоненты (модули), обеспечивающие развитие технических средств, методов обработки информации и расширение сфер применения. Этим созданы необходимые предпосылки для дальнейшего развития и совершенствования ПО. Таким образом, постепенно машины из детерминированного устройства обработки заранее введенной информации все более превращаются в автомат, реагирующий на ситуации, возникшие во внешней, среде. Соответственно в программном обеспечении появились специальные программы, реагирующие на внешние события и события, происходящие в машине. Функции управления прохождением задач, организации ввода-вывода, трансляции и ряд других, позволяющих расширить возможность обработки данных и повысить эффективность обработки, были переданы операционной системе. В отличие от ЭВМ первых поколений более поздние машины выпускаются уже не в виде отдельной вычислительной установки, а создаются семейства моделей разной конфигурации и производительности, снабженные соответствующей операционной системой.

Четвертое поколение

Этапы эволюции взаимоотношения «человек-машина» представляются следующими: от прямого использования ЭВМ одним программистом, в распоряжении которого представлены все ресурсы машины, – через мультипрограммирование, когда программист полностью отстранен от машины, – к системам разделения времени и разговорному режиму, когда много программистов, сидя за своими индивидуальными пультами, управляют ходом решения своих задач независимо друг от друга и одновременно используют мощности ЭВМ. Особенности ЭВМ четвертого поколения позволяют значительно расширить состав программного обеспечения и перейти к программному обеспечению (ПО), позволяющему отказаться от традиционного программирования и организовать работу с машиной в форме диалога между потребителем и ЭВМ. Это дает возможность значительно расширить круг решаемых задач, включив в него проектирование предприятий, технологических линий больших систем. При этом результаты решения выдаются в виде комплектов чертежей, технологических карт, инструкций и описаний. Поставлена задача о необходимости как можно скорее переходить к практике разработки, поставки, сборки и наладки у потребителей полных комплексов технических и программных средств, составляющих законченные автоматизированные системы обработки данных различного класса. Одним из наиболее перспективных направлений в развитии общего программного обеспечения ЭВМ этого поколения является разработка пакетов программ, расширяющих функции операционных систем. С этих позиций следует отметить разработанные в 1976 г. пакеты KAMA (для управления телеобработкой данных) и ОКА (для управления базами данных). В ВЦ АН СССР разработана диалоговая информационно-логическая система ДИЛОС. Эффективность использования средств вычислительной техники в значительной степени зависит от того, насколько совершенны способы разработки программ. Особого внимания заслуживает разработанный в 1976 году пакет программ, позволяющий автоматизировать технологию разработки программ – пакет RTK. Структурные особенности машин четвертого поколения должны обеспечивать возможность объединения ЭВМ в многомашинные комплексы с развитыми устройствами обмена информацией внутри системы с большим количеством внешних каналов, с телефонными и телеграфными линиями, прямой связью с источниками информации. Они будут способствовать дальнейшему развитию понятий виртуальной памяти и усложнению ее структуры, улучшению способов отображения виртуальной памяти на физическую. Встают задачи создания архивов данных и средств визуального отображения, организации сложных операционных систем, организации поиска, хранения и зашиты данных. Программное обеспечение усложняется в связи с повсеместным введением интерактивных вычислений – использование режима разделения времени, В целом, программное обеспечение четвертого поколения предусматривает обеспечение телеобработки, разработку диалоговых систем коллективного пользования, совершенствование систем управления данными путем обеспечения создания банка данных, обеспечения типовых многопроцессорных и многомашинных систем. Программное обеспечение содержит программы автоматического программирования. То есть специалист будет задавать задачу машине примерно так, как он ее обычно задает программисту, и не будет знать истинного алгоритма решения. Истинный алгоритм ее решения будет строить машина. От поколения к поколению ЭВМ, стоимость электронных компонентов в вычислительных системах постоянно уменьшается, а затраты на программную часть неуклонно возрастают. По данным американских специалистов в 1965 году доля программного обеспечения составляла 5% от общей стоимости вычислительной системы, в 1976 г. – 75%, а к 1985 г., порой, превышала 90%. Стоимость выполнения одной команды за 10 лет, начиная с 1977г., снизилась на два порядка, а производительность программистов по-прежнему возрастала мало: примерно на З% в год. Стала проявляться обратная тенденция замена как можно большей части программных средств аппаратными средствами. Простые и часто повторяющиеся программные процедуры оказываются кандидатами на аппаратную реализацию. Системы программного обеспечения, базирующиеся на новом, более сложном оборудовании, также постоянно усложняются, поскольку в них включаются все новые и новые возможности. Поначалу аппаратная часть новых поколений вычислительных машин росла за счет блоков деления, арифметики с плавающей запятой, косвенной адресации и каналов внешних устройств. В последующий период были добавлены: схемы для преобразования адресов по описателям (дескрипторам); средства для мультипрограммирования и многопроцессорности; разнообразные (реализованные, как правило, микропрограмм образом) макрокоманды; аппаратное управление памятью иерархической структуры; аппаратура для примитивного планирования. Вопросы системного программирования достигли предела сложности и трудоемкости, что начинает тормозить создание современных вычислительных комплексов. Поэтому принимается единый интегральный подход к проектированию новых ЭВМ и их программного обеспечения. Главная задача состоит в оптимальном сбалансировании аппаратных и программных возможностей для обеспечения наибольшей производительности работы системы «человек-машина». Основным путем сокращения затрат и сроков создания программного обеспечения является усиление технических возможностей самих ЭВМ за счет аппаратной реализации более сложных элементов алгоритмических процессов. В ЭВМ иногда стала чаще использоваться интерпретация, при которой программа, в процессе ее выполнения, остается записанной в исходном языке, а специальная программа-интерпретатор просматривает кусок за куском исходную программу и формирует последовательности машинных команд, выполняющих работу. Преимущества интерпретации проявляются особенно заметно, когда интерпретирующая система встраивается в конструкцию ЭВМ, а не прикладывается к ней в виде специальных программ. Были сконструированы в ЭВМ серии «Мир». При создании 4-го поколения ЭВМ это направление становится все более популярным. Его реализации фактически приводит к тому, что машинные языки подтягиваются на уровень языков пользователя, открывая новые возможности их развития. Основным средством общения с ЭВМ являются алгоритмические языки. Их количество и разнообразие неуклонно возрастает: уже в 1977 г. их было несколько тысяч. Все больше сил уделяется созданию программных процессоров реализации языков. Наиболее крупным проектом является проект многоязыковой системы программирования БЕТА, разработанной коллективом ВЦ СО АН СССР под руководством А.П. Ершова. Система ориентирована на языки Алгол-68, PL/1, SIMULA и др. В производстве ЭВМ освоен и широко применяется метод микропрограммной реализации команд высокого уровня. Бурно развивается система памяти ЭВМ, претерпела существенные изменения их общая архитектура и организация. Введена и реализована во многих ЭВМ виртуальная память наряду со страничной (сегментной) ее организацией. От программной страничной организации памяти постепенно идет переход к ее аппаратной реализации. В целом, совершенствование программного обеспечения ставит перед собой следующие задачи: диалог человек-машина на любом языковом уровне; автоматическое исправление ошибок пользователей; получение пользователем информации любой степени подробности о состоянии вычислительного процесса и обрабатываемых данных; широкое использование принципа самоопределяемости данных; почти полное отсутствие ограничений на выбор удобного для пользователей представления предложений языка; объединение и упрощение языков программированием, их ориентация на структурное программирование; схемная реализация программного обеспечения (его наиболее часто используемой части); изменение структуры операционной системы с целью создания ее иерархической конфигурации, включающей ядро; использование проблемно-ориентированных систем программирования; генерация программного обеспечения для решения классов задач; оптимизация программного обеспечения; комплексное рассмотрение проблем предприятия. Все это значительно упрощает работу программиста, сокращая время трансляции, позволяет создавать многопультовый режим объединения, отладки и составления программы непосредственно за пультом. Время на отладку в машинах 4-го поколения сокращается примерно в 4 раза. Подводя итоги, можно отметить следующие основные особенности поколений ЭВМ и их программного обеспечения. Первое поколение характеризуется решением одной задачи в данный момент времени в пассивном режиме (без вмешательства в процесс ее решения пользователя). Алгоритм решения задачи – последовательный с фиксированной структурой. Второе поколение – решением набора задач в пассивном режиме. Третье – решением набора задач в активном режиме. Второе и третье поколения реализуют последовательно-параллельный алгоритм (т.е. допускается совмещение операций ввода-вывода с другими операциями). Появление четвертого поколения связано с переходом от решения одной задачи (или их набора) к решению сложной задачи-системы, т.е. совокупности задач, связанных друг с другом, которые не допускают представления в виде набора простых задач, и задача может быть решена лишь целиком. Вычислительные средства реализуют параллельно-последовательный алгоритм с автоматическим изменением их структуры. Изменение структуры вычислительных средств задается до начала решения задачи. Пятое поколение позволяет решать еще более сложные системные задачи, известные под названием проблем искусственного интеллекта. Для их решения требуются вычислительные средства, способные обеспечить функционирование самоорганизующихся алгоритмов. Структура вычислительных средств должна допускать изменения алгоритма управления процессом вычислений в течение времени решения задачи.

Информация о работе Программирование в компьютерных системах