ЗНАЕТЕ ЛИ ВЫ?

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



В состав микропроцессорного комплекта входит большая интегральная схема УСАПП (универсальный синхронно-асинхронный приемопередатчик) или 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; Нарушение авторского права страницы

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