Последовательный и параллельный интерфейсы ввода-вывода 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Последовательный и параллельный интерфейсы ввода-вывода



В состав микропроцессорного комплекта входит большая интегральная схема УСАПП (универсальный синхронно-асинхронный приемопередатчик) или UART (Universal Asynchronous Receiver Transmitter), предназначенная для реализации интерфейса типа RS-232 (V24).

УСАПП является программируемой микросхемой, преобразующей парал­лельный код, получаемый от шины данных системной магистрали, в после­довательный, для передачи по двухпроводной линии связи. В качестве УСАПП используются БИС i8250, i16450, i16550А и др. Функции, выполняемые эти­ми микросхемами, одинаковы. Различия заключаются в обеспечиваемом ими быстродействии.

Типовая структурная схема УСАПП приведена на рис.13.5. От микропроцессора передаваемый байт данных поступает по шинам данных (ШД) в буфер данных УСАПП на входной регистр (РгВх), затем че­рез внутреннюю шину передается в регистр передатчика (РгПд). В момент передачи содержимое РгПд серией сдвигов выдвигается в канал с преобразо­ванием в последовательный код.

В синхронном режиме передаваемые данные сопровождаются управля­ющими сигналами, называемыми синхронизирующими словами (СС). Для хранения СС используются специальный регистр РгСС на входе УСАПП и регистр состояния (РгС) - на выходе. Из РгС информация в виде байта со­стояния передается в микропроцессор по его запросу.

Устройство управления (УУ) содержит регистр режима (РгР), предназ­наченный для хранения передаваемой из микропроцессора информации о режиме работы, и регистр команд (РгК) для хранения принимаемой из мик­ропроцессора команды на обмен данными.

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

Рис. 13.6. Кодовая посылка УСАПП

Старт-бит всегда имеет единичное значение, отличное от состояния "мол­чащего" канала. Вслед за старт-битом расположены информационные биты, принятые от шины данных системной магистрали. В зависимости от настрой­ки УСАПП в одной посылке может содержаться от 5 до 8 информационных битов. Значение этих битов в каждой посылке непредсказуемо. В процессе передачи они могут быть искажены помехами. Поэтому в посылке должны содержаться не только биты, говорящие о начале и конце посылки, но и биты для контроля правильности передачи.

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

При программировании УСАПП программист выбирает: использовать режим контроля или отказаться от него. Он может отказаться от контроля, и бит паритета всегда будет нулевым; может включить контроль на четность или контроль на нечетность. Выбор, что необходимо - контроль на четность или на нечетность, осуществляется в зависимости от характера возможных помех. Если воздействие возможных помех будет проявляться преимуществен­но в появлении лишних единиц, необходим контроль на четность. Если же воздействие помех будет проявляться преимущественно в исчезновении еди­ниц, то необходим контроль на нечетность (чтобы отличать передаваемый О от полной потери информации из-за помех).

После бита паритета в кодовой посылке следуют стоп-биты. Для стоп-битов в кодовой посылке отводятся два двоичных знакоместа. Если выбран режим " 1 стоп-бит", то после бита паритета всегда (в каждой посылке) будет следовать комбинация 01. Если выбран режим "1,5 стоп-бита", то после бита паритета всегда будет следовать комбинация 10. Если же выбирается режим "2 стоп-бита", то каждая посылка будет завершаться цифрами 11.

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

Настраиваться УСАПП-приемник и УСАПП-передатчик, работающие в паре, должны согласованно.

Программирование УСАПП может вестись на физическом или логичес­ком уровне. Программирование на физическом уровне производится на язы­ках низкого уровня или в машинных кодах. Логический уровень программи­рования обеспечивается алгоритмическими языками высокого уровня, ком­муникационными программами, некоторыми пакетами прикладных программ.

Параллельный интерфейс представлен в микропроцессорном комплекте микросхемой типа i8255- контроллером параллельного интерфейса или про­граммируемым интерфейсным адаптером.

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

 


Контрольные вопросы

Что означает термин "автономность внешних устройств"?

Какие виды интерфейсов используются в электронных вычислитель­ных машинах?

Какие способ ы управления обменом нашли применение в интерфей­сах?

Для чего необходим прямой доступ к памяти?

По каким параметрам можно определить, совместимы ли интерфейсы системной шины?

Какие черты характеризуют различные виды программ, используемых для управления ЭВМ?

Каким образом можно создать благоприятную для пользователя опера­ционную обстановку?

Чем различаются протоколы обмена информацией DTR/DSR и XON/ XOFF?

Какую структуру имеет кодовая посылка, используемая в RS-232?


 

Лекция №14. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

14.1. Структура программного обеспечения ЭВМ

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

 
 

Программное обеспечение ЭВМ разделяют на общее, или системное (general Software), и специальное, или прикладное (application or special Software) (рис.14.1).

Рис. 14.1. Структура программного обеспечения

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

Общее ПО обычно поставляется потребителям комплектно с ЭВМ. Часть этого ПО может быть реализована в составе самого компьютера. Например, в ПЭВМ часть программ ОС и часть контролирующих тестов записана в ПЗУ этих машин.

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

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

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

СПО ПЭВМ комплектуется в зависимости от места и роли автоматизиро­ванного рабочего места (АРМ) работника, использующего в своей деятельно­сти компьютер. В ПО ПЭВМ обычно включают небольшое число пакетов программ (табличный процессор, текстовый редактор, систему управления ба­зами данных и др.). В последнее время наметилась тенденция к комплексированию и слиянию их в интегрированные программные продукты. Например, пакет MS Office фирмы Microsoft объединяет все перечисленные продукты.

Общее ПО включает в свой состав операционную систему (ОС), сред­ства автоматизации программирования (САП), комплекс программ техничес­кого обслуживания (КПТО), пакеты программ, дополняющие возможности ОС (ППос), и систему документации (СД).

Операционная система служит для управления вычислительным процес­сом путем обеспечения его необходимыми ресурсами.

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

Модули КПТО предназначены для проверки работоспособности вычис­лительного комплекса.

Важной частью ПО является система документации, хотя она и не явля­ется программным продуктом. СД предназначается для изучения программ­ных средств, она определяет порядок их использования, устанавливает тре­бования и правила разработки новых программных компонентов и особен­ности их включения в состав ОПО или СПО.

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

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

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

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

Ярким примером подобных систем могут служить пакеты Norton Commander, Volkov Commander, DOS Navigator и другие, завоевавшие заслу­женную популярность у пользователей. С помощью этих систем трудоем­кость работы с компьютером значительно сокращается. Работа пользователя при этом заключается в выборе определенных рубрик меню. Механизм обра­щения к модулям ОС упрощается. Развитие и усложнение средств обработки ОС и командных систем привело к появлению операционных сред (напри­мер, Microsoft Window 3-х, Windows 95), обеспечивающих графический ин­терфейс с широчайшим спектром услуг.

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

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

 

14.2. Операционные системы

Центральное место в структуре ПО занимает операционная сис­тема. Она представляет собой "систему программ, предназначенную для обеспечения определенного уровня эффективности цифровой вычислитель­ной системы за счет автоматизированного управления ее работой и предос­тавляемого пользователям набора услуг" (ГОСТ 15971-84). Программные компоненты ОС обеспечивают управление вычисления­ми и реализуют такие функции, как планирование к распределение ресурсов, управление вводом-выводом информации, управление данными. Объем ОС и число составляющих ее программ в значительной степени определяются ти­пом используемых ЭВМ, сложностью режимов работы ЭВМ и ВС, составом технических средств и т.д.

Применение ОС имеет следующие цели:

• увеличение пропускной способности ЭВМ, т.е. увеличение общего объе­ма работы, выполняемой ЭВМ в единицу времени;

• уменьшение времени реакции системы, т.е. сокращение интервала вре­мени между моментами поступления заданий в ЭВМ и моментами получения результатов;

• контроль работоспособности технических и программных средств;

• помощь абонентам и операторам при использовании ими технических и программных средств, облегчение их работы;

• управление программами и данными в ходе вычислений;

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

Любая ОС имеет средства приспособления к классам решаемых пользователями задач и к конфигурации средств, включаемых в ВС. На­значение состава услуг, которыми могут пользоваться абоненты, осуществ­ляется различными методами. В больших ЭВМ формирование конкретной конфигурации ОС осуществляется на нескольких уровнях. Предварительно этот состав определяется при генерации ОС. "Генерация системы - это про­цесс выделения отдельных частей операционной системы и построения час­тных операционных систем, отвечающих требованиям системы обработки данных" (стандарт ISO2382/10-79). Из полного набора программных моду­лей ОС (дистрибутива) формируется специальный набор этих средств, в наибольшей степени отвечающий запросам пользователей. Коррекция же состава используемых услуг может быть выполнена непосредственно перед решением задач операторами вычислительного центра или самими пользо­вателями. Оперативное обращение к средствам ОС возможно и из программ пользователей, путем включения в них специальных директив.

Применительно к ПЭВМ типа IBM PC, у которых пользователь является одновременно и оператором, этот процесс видоизменен. Для каждой ПЭВМ создается так называемый системный диск с соответствующим набором программ дисковой операционной системы (ДОС). При включении компью­тера программой Bios Setup Program (программа начальных установок) обес­печивается запись основных параметров системы, которые сохраняются в CMOS-памяти компьютера. Окончательная настройка ДОС производится файлами autoexec.bat и config.sys, а также выполнением отдельных команд, набираемых в командной строке ДОС.

Для каждого типа ЭВМ возможно использование нескольких типов ОС. Все они имеют несколько версий. Для ЮМ PC распространение получили MS DOS фирмы Microsoft, OS/2Warp и DOS фирмы ЮМ, DR DOS фирмы Digital Research, DOS фирмы Novell. Отличия ОС определяются составом и детализацией системных функций. Более распространенной является MS DOS, она используется в большинстве компьютеров. Система DR DOS имеет очень развитые средства защиты информации и разграничение доступа, что предоп­ределяет ее использование в системах с закрытием обрабатываемой информа­ции. OS/2Warp позволяет более полно использовать возможности самых мощ­ных микропроцессоров при организации вычислительного процесса. Novell DOS ориентирована на работу ЭВМ в сети.

Для уяснения процедур планирования вычислениями конкретизируем по­нятие вычислительного процесса.

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

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

Управление вычислительным процессом практически не может быть оп­тимизировано, если не считать "заложенной стратегии" в саму ОС, так как для этого просто отсутствуют необходимые данные.

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

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

Каждое задание реализуется как определенная последовательность от­дельных программ - задач. Задачи образуют отдельные программы вместе с обрабатываемыми ими данными. Например, типовое задание пользователя включает этапы трансляции, редактирования и собственно выполнения сфор­мированной машинной программы. На каждом из этих этапов выполняется некоторая программа (задача), обрабатывающая определенные данные. Ком­плекс программ управления задачами обеспечивает автоматическое выпол­нение последовательности программ каждого задания пользователя.

Управление задачами требует распределения и назначения ресурсов (уп­равления временем работы процессора, распределения оперативной памяти для программ пользователей и программ ПО, синхронизации выполнения задач и организации связей между ними, управления очередностью задач, внешними устройствами, защиты задач от взаимных помех). Ведущей программой уп­равления задачами является управляющая программа-диспетчер: супервизор, базовый модуль ДОС или др. Часто используемые модули образуют ядро ОС, которое постоянно находится в оперативной памяти и быстро реагирует на изменяющиеся условия функционирования. Примером такой программы мо­жет служить командный процессор command.com для ПЭВМ типа ЮМ PC. Остальные программы ОС вызываются из ВЗУ в оперативную память ЭВМ по мере их надобности в вычислительном процессе.

Набор программ управления данными обеспечивает процессы организа­ции, идентификации, размещения в ОП и на ВЗУ, хранения, построения биб­лиотек и выборки всех данных, которые могут обрабатываться в ЭВМ.

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

 
 

Структурно ОС IBM PC состоит из следующих элементов, представ­ленных на рис.14.3. Кроме программных компонентов, указанных на рисунке, к ДОС относят еще вспомогательные файлы autoexec.bat и config.sys. Они предназначаются для настройки на конкретные режимы работы.

Рис. 14.3. Структура ДОС ПЭВМ

Программа начальной загрузки (Boot Record) находится в первом секторе на нулевой дорожке системного диска. Она занимает объем 512 байт. После включения компьютера и его проверки постоянный модуль BIOS формирует вызов данной программы и ее запуск. Назначением программы начальной загрузки является вызов модуля расширения IO.sys и базового модуля ДОС MS DOS.sys.

Базовая система ввода-вывода (BIOS) является надстройкой аппаратур­ной части компьютера. Постоянный модуль BIOS отвечает за тестирование компьютера после его включения, вызов программы начальной загрузки. Модули BIOS обрабатывают прерывания вычислительного процесса нижне­го уровня и обслуживают стандартную периферию: дисплей, клавиатуру, принтер, дисководы.

Модуль расширения BIOS обеспечивает подключение к компьютеру до­полнительных периферийных устройств, изменение некоторых параметров ДОС, замещение некоторых стандартных функций, загрузку командного про­цессора и его запуск.

Базовый модуль ДОС (MS DOS.sys или IBM DOS.com) отвечает за рабо­ту файловой системы, обслуживает прерывания верхнего уровня (32...63), обеспечивает информационное взаимодействие с внешними устройствами.

Командный процессор (command.com) предназначен для выполнения ко­манд, загружаемых в командную строку ДОС. Все команды ДОС делят на внутренние и внешние. Внутренние команды содержатся внутри самого файла command.com. Внешние команды - это требования запуска каких-либо про­грамм, находящихся на дисках. Кроме этого, командный процессор выпол­няет команды файла autoexec.bat, если он находится на системном диске.

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

Файл config.sys отражает специфические особенности формирования конфигурации компьютера, т.е. состава его технических и программных средств.

В связи с постоянным совершенствованием ПЭВМ и улучшением их ха­рактеристик (быстродействия и емкости памяти) все большее число ЭВМ используют более сложные интегрированные ОС типа MS Windows 95, OS/2 Warp и им подобные.

14.3. Системы автоматизации программирования

К системам (или средствам) автоматизации программирования (САП) относят языки программирования, языковые трансляторы, редакто­ры, средства отладки и другие вспомогательные программы.

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

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

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

Важнейшими характеристиками языка являются трудоемкость програм­мирования и качество получаемого программного продукта. Качество про­грамм определяется длиной программ (количеством машинных команд или емкостью памяти, необходимой для хранения программ), а также временем выполнения этих программ. Для языков различного уровня эти характерис­тики взаимосвязаны. Чем выше уровень языка (рис.14.4), тем меньше трудо­емкость программирования, но тем сложнее средства САП (трансляторы, сред­ства отладки и др.), привлекаемые для получения машинных программ, тем ниже качество генерируемых программных продуктов.

 
 

Рис. 14.4. Классификация языков программирования

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

Особое место имеют машинно-ориентированные языки (язык Ассемблер, автокоды, языки символического кодирования и др.). Несмотря на высокую трудоемкость, ими часто пользуются профессиональные системные програм­мисты, например при разработке программ общего или специального ПО, особенно в тех случаях, когда эти программы должны быть максимально ком­пактными и быстродействующими. Пользователям с недостаточной програм­мистской подготовкой эти языки практически недоступны.

Из процедурно-ориентированных языков широко известны языки Форт­ран, Алгол, Кобол, Basic, Pascal, Ада, Си и др. Спектр языков этой группы очень широк, и среди них существует определенная иерархия. Считается, что язык Basic предназначается для начинающих программистов, язык Pascal - язык для студентов, это язык "правильного", классического программирова­ния, язык СИ - язык квалифицированных программистов и т.д. Существуют определенные соглашения в использовании языков программирования. Так, при создании программ для собственных работ пользователь может исполь­зовать любой язык, даже Basic. При разработке ПО для одного заказчика кор­ректно использовать язык Pascal, при разработке программных средств для многих потребителей целесообразно использование языков Си и Ассемблер.

С появлением ПЭВМ наиболее распространенными языками являются Basic и Pascal. Первоначально они разрабатывались для целей обучения. Их применение обеспечивает быстрый и удобный перенос программ, написан­ных на этих языках, с одной ПЭВМ на другую. Наиболее простым языком является Basic. Трансляторы для этого языка имеются практически на всех ПЭВМ. Язык отличает простота и наличие средств интерактивной работы, что обеспечило ему популярность среди непрофессиональных программис­тов. Однако для построения сложных программ он в силу ограниченных воз­можностей (структурирование программ и данных, идентификация перемен­ных и т.д.) подходит плохо.

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

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

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

Другой интересной тенденцией является появление непроцедурных опи­сательных языков. Конструкции этих языков констатируют, какой результат желателен пользователю, не указывая, каким образом это сделать. Примером такого языка служит язык ПРОЛОГ (ПРОграммирование ЛОГики), который широко используется специалистами в области искусственного интеллекта. Конструкции языка соответствуют не математическим формулам, а опреде­ляют отношения между объектами и величинами. Язык состоит только из описаний и не имеет как таковых команд-инструкций.

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

В состав САП включаются также языковые трансляторы для всех языков, которые используют пользователи при разработке своих программ. В Зависимости от специфики вычислительного центра и контингента пользо­вателей их состав формируется эмпирически. Обычно же он включает транс­ляторы процедурно-ориентированных языков высокого уровня (Pascal, Basic, Си) и машинно-ориентированных языков (Ассемблер).

Различают трансляторы двух типов: интерпретаторы и компиляторы.

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

Трансляторы-компиляторы, напротив, предназначаются для формирования полного загрузочного модуля по исходным программам пользователя. Это позволяет отделить полученный программный продукт от среды его раз­работки и в последующем использовать его автономно.

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

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

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

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

14.4. Пакеты программ

Согласно рис.14.1 в ПО ЭВМ имеются две группы пакетов программ: пакеты прикладных программ (ППП) и пакеты, дополняющие возможности ОС (ППос). С развитием программного обеспечения ЭВМ наметилась тен­денция к слиянию их в единые интегрированные пакеты. Например, опе­рационная среда Windows может подключать и пакеты MS Office, объеди­няющие программы для работы экономиста-делопроизводителя. Однако не всегда централизованные средства обработки удовлетворяют всем требова­ниям пользователей, поэтому многие ЭВМ, наряду с интегрированными пакетами, продолжают использовать и более эффективные специализиро­ванные ППП.

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



Поделиться:


Последнее изменение этой страницы: 2016-04-07; просмотров: 672; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.15.1 (0.083 с.)