Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
41-45.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
119.81 Кб
Скачать

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

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

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

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

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

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

С учетом зависимости от ЭВМ языки программирования подразделяются на машинно-зависимые и машинно-независимые.

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

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

К машинно–ориентированным языкам относятся: автокоды, языки символического кодирования и ассемблеры. Особое место в системе программирования занимают ассемблеры.

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

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

Машинно-независимые языки классифицируются на процедурно – ориентированные, проблемно – ориентированные и объектно-ориентированные.

Процедурно–ориентированные (универсальные) языки эффективны для описания алгоритмов решения широкого класса задач. Это языки: Фортран, Кобол, ПЛ/1, Бейсик, Паскаль, Ада и др.

Проблемно–ориентированные языки предназначены для описания процессов обработки информации в более узкой, специфической области. Языками этой группы являются: РПГ, Лисп, АПЛ, GPSS и др.

Объектно-ориентированные языки ориентированы на разработку программных приложений для широкого круга разнообразных по сфере приложения задач, имеющих общность в реализуемых компонентах (например, при взаимодействии с БД, работе в условиях функционирования корпоративных сетей организаций или взаимодействия с глобальной сетью Internet). Объектно-ориентированный подход в программировании позволяет применять одни и те же (типовые) архитектурные и концептуальные решения для быстрого создания эффективных программных приложений. Наиболее известные языки этого класса – Delphi, Visual Basic, Java и др.

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

  • компилятор или интерпретатор;

  • интегрированная среда разработки;

  • средства создания и редактирования текстов программ;

  • обширные библиотеки стандартных программ и функций;

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

  • "дружественная" к пользователю диалоговая среда;

  • многооконный режим работы;

  • мощные графические библиотеки; утилиты для работы с библиотеками

  • встроенный ассемблер;

  • встроенная справочная служба;

  • другие специфические особенности.

Популярные системы программирования — Turbo Basic, Quick Basic, Turbo Pascal, Turbo C.

В последнее время получили распространение системы программирования, ориентированные на создание Windows-приложений:

  • пакет Borland Delphi (Дельфи) — блестящий наследник семейства компиляторов Borland Pascal, предоставляющий качественные и очень удобные средства визуальной разработки. Его исключительно быстрый компилятор позволяет эффективно и быстро решать практически любые задачи прикладного программирования.

  • пакет Microsoft Visual Basic — удобный и популярный инструмент для создания Windows-программ с использованием визуальных средств. Содержит инструментарий для создания диаграмм и презентаций.

  • пакет Borland C++ — одно из самых распространённых средств для разработки DOS и Windows приложений.

42) Прикладное программное обеспечение предназначено для разработки и выполнения конкретных задач (приложений) пользователя. Прикладное программное обеспечение работает под управлением базового программного обеспечения, в частности, операционных систем. В состав прикладного программного обеспечения входят: пакеты прикладных программ различного назначения и рабочие программы пользователя и ИС в целом.

Пакет прикладных программ (ППП) – это комплекс программ, предназначенный для решения задач определенного класса.

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

Различают следующие виды ППП:

  • общего назначения (универсальные),

  • методо-ориентированные,

  • проблемно-ориентированные,

  • глобальных сетей,

  • организации вычислительного процесса.

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

  • редакторы текстовые и графические,

  • электронные таблицы,

  • системы управления базами данных (СУБД),

  • интегрированные пакеты,

  • CASE-технологии,

  • оболочки экспертных систем и систем искусственного интеллекта.

Редакторы – ППП, предназначенные для создания и изменения текстов документов, графических данных и иллюстраций. Они применяются, в основном, для автоматизации документооборота в фирме. Редакторы бывают текстовые, графические и издательские системы. Это Microsoft Word, Word Perfect, Chi writer, CorelDraw, Adobe Photoshop, Page Maker и др.

Электронной таблицей называется ППП, предназначенный для обработки таблиц. К наиболее популярным ППП относятся такие, как Microsoft Excel, Lotus 1-2-3, Quarto Pro и др.

Для управления базой данных используется СУБД. Управление базой данных включает в себя ввод данных, их коррекцию и манипулирование данными, т. е. добавление, удаление, извлечение, обновление и т. д. Развитые СУБД обеспечивают независимость прикладных программ, работающих с ними, от конкретной организации в базах данных. Из имеющихся СУБД наибольшее распространение получили Microsoft Access, Visual FoxPro, Paradox, Oracle, SQL Server.

Интегрированные пакеты ППП - это объединяющие в себе функционально-различные программные компоненты ППП общего назначения. Современные интегрированные пакеты могут включать в себя:

  • текстовый редактор,

  • электронную таблицу,

  • графический редактор,

  • СУБД,

  • коммуникационный модуль.

CASE-технологии – это совокупность средств автоматизации разработки информационной системы, включающей в себя методологию анализа предметной области, проектирования, программирования и эксплуатации ИС. В настоящее время CASE – технология одна из наиболее динамично развивающихся отраслей, объединяющая сотни компаний. Из имеющихся на рынке CASE – технологий можно выделить: Bruin, CDEZ, Tads.

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

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

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

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

  • средства доступа и навигации,

  • электронная почта.

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

Разрабатываемые в настоящее время ППП основываются на концепции организации информационных систем на базе синтеза централизованной и рас­пределенной обработки информации и предполагают соблюдение следующих основных принципов:

  • полного использования потенциала настольных систем и среды распре­ деленной обработки;

  • интеграции различных архитектурных решений без каких-либо ограничений, т. е. построения абсолютно открытой системы;

  • обеспечения максимальной экономичности системы;

  • достижения качественно нового уровня производительности, гибкости, динамичности организации системы;

  • параллельной организации структуры информационной системы;

  • «бизнес - приложений» (ППП функциональных подсистем), поддер­живаемых с помощью ресурсов ИС.

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

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

Возможности табличных процессоров:

  • создание, редактирование, оформление и печать ЭТ;

  • создание многотабличных документов, объединенных формулами;

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

  • построение диаграмм, их модификация и решение экономических задач графическими методами;

  • работа с ЭТ как с базами данных (списки): сортировка таблиц, выборка данных по запросам;

  • создание итоговых и сводных таблиц;

  • использование сценарии – поименованных массивов исходных данных, по которым формируются конечные итоговые значения в одной и той же таблице;

  • выполнение автоматизированного поиска ошибок вычислений по формулам.

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

  • решение экономических задач типа «что-если» путем подбора параметров;

  • использование таблицы подстановки, которые могут содержать одну или две переменные с произвольным количеством их значений. Эти значения переменных используются при вычислении результатов по одной и той формуле. Результат отображаться в виде массива данных;

  • решение оптимизационных задач;

  • статистическая обработка данных;

  • создание слайд-шоу;

  • разработка макрокоманд, настройка среды под потребности пользователя и т.д.

Табличные процессоры различаются набором выполняемых функций и удобством интерфейса. Наиболее популярными электронными таблицами для персональных компьютеров являются табличные процессоры:

- Excel (фирма Microsoft),

- Lotus 1-2-3 (фирма Lotus Developnet),

- Quattro Pro (фирма WordPerfekt – Novell Application Group).

Если после появления в 1982 г. пакет Lotus 1-2-3 был практически эталоном для разработчиков электронных таблиц, то в настоящее время он утратил свои лидирующие позиции, а ее место занял пакет Excel.

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

Фирма Microsoft уделяет первостепенное внимание совершенствованию набора функциональных средств Excel. В Excel многие функции разработаны более тщательно, чем в других электронных таблицах. Кроме того, возможность использования массивов в Excel обеспечивает большую гибкость при работе с таблицами.

Фирма Lotus основные усилия сконцентрировала на разработке инструментов групповой работы: использование Team Consolidate предоставит возможность группе пользователей редактировать копии электронных таблиц, а затем их объединить. Lotus 1-2-3 имеет простоту создания и редактирования графиков, а также наиболее логическую структуру трехмерных таблиц.

Пакет Quattro Pro обладает возможностями сортировки данных, а также удобством эксплуатации. В то же время отмечались сложности при освоении графических возможностей Quattro Pro, недостаточный объем справочной информации.

44) Существуют два способа представления графического изображения:

- растровый (изображение со сложными гаммами цветов оттенков и форм: фотографии, рисунки, отсканированные данные);

- векторный (чертежи, изображения с простыми формами, тенями, окраской).

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

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

Разрешающая способность – это количество элементов в заданной области.

Имеются:

  • разрешающая способность графического изображения;

  • разрешающая способность принтера как устройства вывода;

  • разрешающая способность мыши как устройства ввода.

Растр или растровый массив (bitop) представляет совокупность битов, расположенных на сетчатом поле-канве. Бит может быть включен (единичное состояние) или выключен (нулевое состояние).

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

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

Разрешение – это плотность размещения пикселов, которая измеряется в точках на дюйм (dpi). Эта величина представляет собой расстояние между соседними пикселами. Чем больше битов используется для этого, тем большее количество оттенков цветов для каждого пиксела можно получить. Число битов используемых компьютером для хранении информации о каждом пикселе, называется битовой глубиной или глубиной цвета.

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

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

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

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

  • одновременное изменение размеров всех пикселов (в большую или меньшую сторону);

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

Простейший способ изменения масштаба растрового рисунка состоит в изменении размера всех его пикселов.

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

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

- по первому – дублируется или удаляется необходимое количество пикселов. При этом в результате масштабирования ухудшается качество изображения.

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

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

Векторное представление изображения кардинально отличается от растрового. Его принцип состоит в том, что описываются только основные точки изображения, а промежуточные достраиваются между ними по определенным математическим законам. Например, если необходимо нарисовать прямую, то можно указать только координаты концов отрезка, а также сделать пометку, что соединяющая их линия — прямая. Для описания окружности достаточно задать ее центр, указать радиус и сделать пометку «окружность». Аналогичным образом кодируются цвет объекта, толщина линий и пр. В таком виде информация хранится в файле, а когда приходит время отобразить графический элемент на мониторе, на бумаге или ином носителе, выводное устройство строит недостающие элементы изображения в соответствии с инструкциями.

Для описания векторного графического объекта существует множество способов. Самый удобный и распространенный из них — так называемые кривые Безье. Придумал эту модель в 1968 году французский инженер-математик Пьер Безье для решения узкоспециальной задачи — простого описания сложных двумерных фигур для машин по обработке листового металла. Способ оказался настолько удачным, что завоевал популярность далеко за пределами инженерной графики. Его суть сводится к следующему. Любая геометрическая фигура (традиционно она называется Path (Путь)) разбивается на несколько относительно простых участков (сегментов). Каждый сегмент начинается и заканчивается особой (якорной) точкой. В файле явно описываются координаты якорных точек, а также первая и вторая производные выходящего из них сегмента. Векторное представление определяет описание изображения в виде линий и фигур, возможно, с закрашенными областями, заполняемыми сплошным или градиентным цветом. В векторной графики для описания объектов используются комбинации компьютерных команд и математических формул для описания объектов.

Векторную графику называется объектно-ориентированной или чертежной графикой. Достоинствами векторной графики являются: