Информатика и программирование

Основы информатики: предмет и задачи, информационные системы, классификация информации. Развитие и классификация ЭВМ, локальные и глобальные сети. Классы программных продуктов, алгоритмизация вычислительных процессов, элементы языка программирования.

Рубрика Программирование, компьютеры и кибернетика
Вид курс лекций
Язык русский
Дата добавления 14.06.2009
Размер файла 288,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Информация, хранящаяся во множестве компьютерных сетей, связанных между собой Интернетом, образует гигантскую электронную библиотеку. Огромное количество данных, распределенных между компьютерными сетями, затрудняет поиск и получение желаемой информации. Для облегчения поиска в Интернете развивались все более совершенные средства. Среди них нужно отметить такие как Archie, Gopher и WAIS, коммерческие поисковые машины (search engines, indexes), которые представляют собой программы, использующие алгоритм поиска среди большого обьема документов по ключевым словам. Результаты поиска пользователь получает в виде списка заголовков и описаний документов, содержащих ключевые слова, отсортированные по степени релевантности. Такая программа как Telnet позволяет пользователям соединяться с одного компьютера с другим удаленным компьютером другой сети. FTP (протокол передачи файлов) используется для пересылки информации между компьютерами различных сетей.

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

История возникновения. Интернет появился в результате секретного исследования, проводимого Министерством обороны США в 1969 г. с целью тестирования методов, позволяющих компютерным сетям выжить во время военных действий с помощью динамической перемаршрутизации сообщений. Первой такой сетью была ARPAnet, обьединившая три сети в Калифорнии с сетью в штате Юта по набору правил, названных Интернет-протоколом (Internet Protocol или, сокрашенно, IP).

В 1972 г., с открытием доступа для университетов и исследовательских организаций, выросла до сети, объединяющей 50 университетов и исследовательских организаций, имевших контракты с Министерством обороны США.

В 1973 г. сеть выросла до международных масштабов, объединив сети, находящиеся в Англии и Норвегии. Десять лет спустя Интернет-протокол был расширен за счет набора коммуникационных протоколов, поддерживающих как локальные, так и глобальные сети (TCP/IP). Вскоре после этого, National Science Foundation (NSF) открыла NSFnet c с целью связать 5 суперкомпьютерных центров. Одновременно с внедрением протокола TCP/IP новая сеть вскоре заменила ARPAnet в качестве «хребта» (backbone) Интернета.

Мощный толчок к популяризации и развитию Интернета, а также к превращению его в среду для ведения бизнеса дало появление World Wide Web (Всемирная Паутина, WWW) - системы гипертекста (hypertext), которая cделала путешествие по сети Интернет быстрым и интуитивно понятным.

Идея связывания документов через гипертекст впервые была предложена и продвигалась Тедом Нельсоном (Ted Nelson) в 1960-е годы, однако уровень существующих в то время компьютерных технологий не позволял воплотить ее в жизнь.

Основы того, что мы сегодня понимаем под WWW, заложил в 1980-е годы Тим Бернерс-Ли (Tim Berners-Lee) в процессе работ по созданию системы гипертекста в Европейской лаборатории физики элементарных частиц (European Laboratary for Particle Physics, Европейский центр ядерных исследований).

В результате этих работ в 1990 научному сообществу был представлен первый текстовый браузер (browser), позволяющий просматривать связанные гиперссылками (hyperlinks) текстовые файлы онлайн. В 1991 доступ к этому браузеру был предоставлен и широкой публике, однако распространение его вне научных кругов шло медленно.

Новый исторический этап в развитии Интернета берет начало с выхода первой Unix-версии графического браузера Mosaic в 1993 году, разработанного в 1992 Марком Андресеном (Marc Andreessen), студентом, стажировавшимся в Национальном центре суперкомпьютерных приложений (National Center for Supercomputing Applications, NCSA), США.

С 1994 г., после выхода версий браузера Mosaic для операционных систем Windows и Macintosh, а вскоре вслед за этим -- браузеров Netscape Navigator и Microsoft Internet Explorer, берет начало взрывообразное распространение популярности WWW, и как следствие Интернета, среди широкой публики сначала в США, а затем и по всему миру

В 1995 г. NSF передала ответственность за Интернет в частный сектор, и с этого времени Интернет существует в том виде, каким мы знаем его сегодня.

Наиболее популярные Интернет-сервисы включают:

-- электронную почту (e-mail);

-- поиск и просмотр текстовой и мультимедийной информации с помощью браузера (Web-browser) в World Wide Web (WWW);

-- электронную коммерцию (e-commerce);

-- переговоры в режиме online (чаты, chats);

-- конференции (discusion groups, Usenet), в которых можно публиковать сообщения и проглядывать ответы на них;

-- ролевые игры.

World Wide Web ( WWW или W3, Мировая Паутина). Объединение глобально распространяемых текстовых и мультимедийных документов и файлов, а также других сетевых сервисов, связанных друг с другом таким образом, что поиск и получение информации, а также интерактивное взаимодействие между пользователями осуществляется быстрыми и интуитивно понятными способами. Тим Бернерс-Ли определил это понятие еще шире: «World Wide Web - это Универсум доступной через сеть информации, воплощение человеческого знания».

Web представляет собой графический интерфейс к Интернету, позволяющий доставлять и обрабатывать информацию, содержащуюся в специально отформатированных документах и включает в себя три основных компонента: Hypertext Markup Language (HTML), HyperText Transfer Protocol (HTTP), Universal Resource Locator (URL).

Гипертекст (hypertext) -- способ организации документов или баз данных, при котором соответствующие фрагменты документов или информации связываются друг с другом ссылками (links, hyperlinks), позволяющими пользователю мгновенно переходить по ним к соответствующим документам или информации, следуя по ассоциативному пути.

Ссылки могут быть представлены в текстовом, графическом, аудио- или видео-формате.

HTML (Hypertext Markup Language) включает в себя программные коды разметки файла (markup symbols) или тэги (tags), которые определяют шрифты, слои, графику и ссылки на другие Web-документы.

HTML - формат, рекомендуемый Консорциумом World Wide Web и принят в качестве стандарта большинством разработчиков программного обеспечения. Развитие коммерции в сети и новые требования к Web привели к модификации HTML и появлению расширенной формы HTML - Extensible Hypertext Markup Language ( XHTML или XML).

HTTP (HyperText Transfer Protocol) определяет набор стандартов по передаче Web-страниц через Интернет.

URL (Universal Resource Locator) представляет собой стандарт для определения местонахождения (адреса) файла или ресурса в Интернете. Тип ресурса зависит от используемого протокола. В случае Web, протоколом является HTTP, ресурсом может быть HTML-страница, графический файл, программа, выполнямая на удаленном компьютере.

URL содержит название протокола, требующегося для доступа к ресурсу, доменное имя, определяющее конкретный компьютер в Интернете и иерархическое описание местоположения файла на этом компьютере. Например, URL «Мегаэнциклопедия Кирилла и Мефодия» в Интернете, выглядит так: http://www.km.ru/mega/. Доменное имя www.km.ru содержит название ресурса km и указывает на Интернет-адрес (Internet Protocol address, IP address), соответствующий имени km.ru, в данном случае адрес физического компьютера 222.2.2.2, на котором находится Web-сервер www.km.ru., /mega/ указывает точный путь к директории, где на компьютере находится Мегаэнциклопедия.

Web-сервер - это компьютерная программа, которая обслуживает запроcы на HTML- страницы или файлы. Запросы поступают со стороны программы-клиента, находящейся на компьютере или любом другом возможном Интернет-терминале пользователя. Такая программа называется браузером (browser) или Web-браузер (Web-browser). Наиболее распространенными браузерми в настоящее время являются графические браузеры Microsoft Internet Explorer, Netscape Navigator и Opera, а также текстовый броузер Lynx. Система, которая локализует доменные имена и переводит их в IP-адреса носит название Domain Name System (DNS).

km.ru является доменом второго уровня (second-level domain, SLD) и идентифицирует административного владельца - компанию «Кирилл и Мефодий». Домены второго уровня могут быть иерархически разделены на домены третьего и т.д. уровней, например, mega.km.ru - домен третьего уровня в зоне km.ru. Доменом верхнего уровня (top level domain, TLD) в данном случае является домен.ru, указывающий на географическую принадлежность сети - RU (Russia). Домены верхнего уровня указывают как на географическую принадлежность, так и на тип домена (в основном, в США):

com - коммерческий

edu - образовательный

gov - правительственный

org - некоммерческие организации

net - сети и сервис-провайдеры

mil - вооруженные силы

Наиболее востребованным доменами в сети являются домены второго уровня в зоне.com. Рост спроса на дополнительные доменные имена в зоне.com привел к введению дополнительного домена-заменителя верхнего уровня.cc, а также расширению списка доменов верхнего уровня по типам, например.firm,.info.

Как правило, по адресу, указываемому URL, располагается Web-сайт (Web site).Web-сайт - это тесно связанная совокупность World Wide Web файлов, которая включает стартовый файл (стартовую или главную страницу), именуюмую home page. В действительности, адрес home page включает специфический файл index.html, который обычно необязательно указывать в адресной строке Как правило, в качестве адреса сайта используется адрес home page. C home page можно получить доступ к любой другой странице на сайте. В браузере пользователь может настроить home page любого сайта как стартовую страницу при выходе в Интернет.

Web-сайты делятся по типам на десятки категорий и сотни подкатегорий в зависимости от системы классификации. Наиболее посещаемые пользователями сайты - это поисковые машины, каталоги и Web-магазины.

Для крупнейших сайтов в настоящее время происходит слияние в одну категорию порталов с последующей классификацией на их типы. Порталом называют определяющий Web-сайт как постоянный стартовый сайт Интернет-пользователя при доступе к World Wide Web. Порталы подразделяются на две крупные подкатегории порталов общего назначения (general portals) и специализированных тематических или нишевых порталов (niche portals).

Среди крупнейших в мире порталов общего назначения - AOL, Yahoo, MSN, Lycos и Excite, месячная аудитория которых исчисляется десятками миллионов. В России такими порталами являются Rambler, Яndex, KM.RU, Aport, Port.Ru, List.Ru, eStart, месячная аудитория которых исчисляется сотнями тысяч посетителей и уже превышает миллионную отметку.

Лекция 3. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ЭВМ

Вопросы:

1. Классы программных продуктов

2. Системное программное обеспечение

3. Инструментарий технологии программирования

4. Прикладные программные продукты

1. Классы программных продуктов

Возможности компьютера как технической основы системы обработки данных связаны с используемым программным обеспечением (программами).

Программа (program, routine) -- упорядоченная последовательность команд (инструкций) компьютера для решения задачи.

Программное обеспечение (sowtware) ? совокупность программ обработки данных и необходимых для их эксплуатации документов.

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

? аппаратная часть автономных компьютеров и сетей ЭВМ;

? функциональные задачи различных предметных областей;

? технология разработки программ.

Для поддержки информационной технологии в этих областях выделим соответственно три класса программного обеспечения, представленных на рисунке:

? системное программное обеспечение;

? пакеты прикладных программ;

? инструментарий технологии программирования.

Системное программное обеспечение направлено:

? на создание операционной среды функционирования других программ;

? на обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;

? на проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей;

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

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

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

Системное программное обеспечение (System Software) ? совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ.

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

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

Пакет прикладных программ (application program package) ? комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области.

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

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

2. Системное программное обеспечение

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

Базовое программное обеспечение (base software) -- минимальный набор программных средств, обеспечивающих работу компьютера.

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

В базовое программное обеспечение входят:

? операционная система;

? операционные оболочки (текстовые и графические);

? операционная система.

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

В секторе программного обеспечения и операционных систем ведущее положение занимают фирмы IBM, Microsoft, UNISYS, Novell. Рассмотрим наиболее распространенные типы операционных систем.

Операционные системы для персональных компьютеров делятся на:

? одно- и многозадачные (в зависимости от числа параллельно выполняемых прикладных процессов);

? одно- и многопользовательские (в зависимости от числа пользователей, одновременно работающих с операционной системой);

? непереносимые и переносимые на другие типы компьютеров;

? несетевые и сетевые, обеспечивающие работу в локальной вычислительной сети ЭВМ.

Наиболее распространенными операционными системами для ПК, совместимыми IBM PC, в настоящее время являются: Windows 95 (98, ME), Windows 2000 (ХР), UNIX (Linux). Гораздо реже используются MS DOS, Windows NT, OS/2, Novell NetWare. Встроенную сетевую поддержку имеют все перечисленные системы. Компьютеры Macintosh фирмы Apple используют собственное системное ПО.

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

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

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

? программы диагностики работоспособности компьютера;

? антивирусные программы, обеспечивающие защиту компьютера, обнаружение и восстановление зараженных файлов;

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

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

? программы обслуживания сети.

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

3. Инструментарий технологии программирования

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

В рамках этих направлений сформировались следующие группы программных продуктов.

? средства для создания приложений, включающие:

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

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

? СASE-технология (Computer-Aided System Engineering), представляющая методы анализа, проектирования и создания программных систем и предназначенная автоматизации процессов разработки и реализации информационных систем.

Средства для создания приложений

Локальные средства разработки программ. Эти средства на рынке программных продуктов наиболее представительны и включают языки и системы программирования, а также I инструментальную среду пользователя.

Язык программирования ? формализованный язык для описания алгоритма решения задачи на компьютере.

Средства для создания приложений ? совокупность языков и систем программирования, а также различные программные комплексы для отладки и поддержки создаваемых программ.

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

? машинные языки (computer language) ? языки программирования, воспринимаемые аппаратной частью компьютера (машинные коды);

? машинно-ориентированные языки (computer-oriented language) ? языки программирования, которые отражают структуру конкретного типа компьютера (ассемблеры);

? алгоритмические языки (algorithmic language) ? не зависящие от архитектуры компьютера языки программирования для отражения структуры алгоритма (Паскаль. Фортран, Бейсик и др.);

? процедурно-ориентированные языки (procedure-oriented language) ? языки программирования, где имеется возможность описания программы как совокупности процедур (подпрограмм);

? проблемно-ориентированные языки (universal programming language) -- языки программирования, предназначенные для решения задач определенного класса (Лисп, РПГ, Симула и др.);

? интегрированные системы программирования.

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

Программа, подготовленная на языке программирования, проходит этап трансляции, когда происходит преобразование исходного кода программы (source code) в объектный код (object code), который далее пригоден к обработке редактором связей. Редактор связей ? специальная программа, обеспечивающая построение загрузочного модуля (load module), пригодного к выполнению.

Трансляция может выполняться с использованием средств компиляторов (compiler) или интерпретаторов (interpreter). Компиляторы транслируют всю программу без ее выполнения. Интерпретаторы, в отличие от компиляторов, выполняют операторную обработку и выполнение программы.

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

Системы программирования (programmingsystem) включают:

? компилятор;

? интегрированную среду разработчика программ;

? отладчик;

? средства оптимизации кода программ;

? набор библиотек (возможно с исходными текстами программ);

? редактор связей;

? сервисные средства (утилиты) для работы с библиотеками, текстовыми и двоичными файлами;

? справочные системы;

? документатор исходного кода программы;

? систему поддержки и управления проектом программного комплекса.

Инструментальная среда пользователя представлена специальным средствами, встроенными в пакеты прикладных программ, такими, как:

? библиотека функций, процедур, объектов и методов обработки;

? макрокоманды;

? клавишные макросы;

? языковые макросы;

? программные модули-вставки;

? конструкторы экранных форм и отчетов;

? генераторы приложений;

? языки запросов высокого уровня;

? языки манипулирования данными;

? конструкторы меню и многое другое.

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

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

CASE-технология создания информационных систем

Средства CASE-технологии ? относительно новое, сформировавшееся на рубеже 80-х гг. направление. Массовое применение затруднено крайне высокой стоимостью и предъявляемыми требованиями к оборудованию рабочего места разработчика.

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

Средства CASE-технологии делятся на две группы:

? встроенные в систему реализации ? все решения по проектированию и реализации привязаны к выбранной системе управления базами данных (СУБД);

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

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

4. Прикладные программные продукты

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

Классификация прикладного программного обеспечения представлена на рисунке.

Проблемно-ориентированные ППП. Это самый представительный класс программных продуктов, внутри которого проводите! классификация по разным признакам:

? типам предметных областей;

? информационным системам;

? функциям и комплексам задач, реализуемых программным способом, и др.

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

? ППП автоматизированного бухгалтерского учета;

? ППП финансовой деятельности;

? ППП управления персоналом (кадровый учет);

? ППП управления материальными запасами;

? ППП управления производством;

? банковские информационные системы и т.п.

Основные тенденции в области развития проблемно-ориентированных программных средств:

? создание программных комплексов в виде автоматизированных рабочих мест (АРМ) управленческого персонала;

? создание интегрированных систем управления предметной областью на базе вычислительных сетей, объединяющих АРМы в единый программный комплекс с архитектурой клиент-сервер;

? организация данных больших информационных систем в виде распределенной базы данных на сети ЭВМ;

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

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

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

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

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

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

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

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

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

Представители данного класса программных продуктов:

I. Настольные системы управления базами данных (СУБД), обеспечивающие организацию и хранение локальных баз данных на автономно работающих компьютерах либо централизованное хранение баз данных на файл-сервере и сетевой доступ к ним.

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

Многопользовательские СУБД (типа Paradox, Access, FoxPro и др.) в сетевом варианте обработки данных хранят информацию на файл-сервере -- специально выделенном компьютере в централизованном виде, но сама обработка данных ведется на рабочих станциях. Серверы баз данных, напротив, всю обработку (хранение, поиск, извлечение и передачу данных клиенту) данных выполняют самостоятельно, одновременно обеспечивая данными большое число пользователей сети.

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

Сервер отчетов подключается к серверу баз данных, используя все уровни передач и драйверы сервера баз данных.

4. Текстовые процессоры ? автоматическое форматирование документов, вставка рисованных объектов и графики, составление оглавлений и указателей, проверка орфографии, шрифтовое оформление, подготовка шаблонов документов.

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

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

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

Наиболее распространены интегрированные пакеты, компонентами которых является: СУБД; текстовый редактор; табличный процессор; органайзер; средства поддержки электронной почты; программы создания презентаций; графический редактор.

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

Наиболее распространены методы математического программирования, решения дифференциальных уравнений, имитационного моделирования, исследования операций:

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

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

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

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

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

3. Коммуникационные ППП ? предназначены для организации взаимодействия пользователя с удаленными абонентами или информационными ресурсами сети. В условиях развития глобальной информационной сети Internet появился новый класс программного обеспечения ? браузеры, средства создания WWW-страниц.

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

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

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

Лекция 4. АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ ДЛЯ ЭВМ

Вопросы: 1. Основы алгоритмизации вычислительных процессов

2. Программирование на алгоритмическом языке Бейсик

2.1. Основные элементы языка

2.2. Данные

2.3. Переменные

2.4. Стандартные функции

2.5. Арифметические выражения

2.6. Основные операторы

1. Основы алгоритмизации вычислительных процессов

Составление программы для на ЭВМ ? сложный, трудоемкий процесс, состоящий из ряда этапов:

постановки задачи. На этом этапе осуществляются сбор, изучение и анализ информации, относящейся к задаче, изучаются и анализируются существующие методы решения задачи, производится формулировка задачи;

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

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

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

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

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

конечность. Алгоритм должен всегда записываться после конечного числа шагов операций;

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

ввод. Алгоритм имеет некоторое число входных данных, т. е. величин, заданных ему до начала работы. Входные данные могут отсутствовать;

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

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

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

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

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

Операция

Графическое

обозначение

Функция

Процесс

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

Решение

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

Ввод-вывод

Преобразование данных в форму, пригодную для ввода или вывода

Дисплей

Ввод данных с помощью дисплея или вывод данных на дисплей

Документ

Ввод или вывод данных, носителем которых служит бумага

Линия потока

??????????

Указание на последовательность связей между блоками

Соединитель

Указание на связь между прерванными линиями потока, соединяющими блоки

Пуск-останов

Начало, конец, прерывание процесса обработки данных или выполнения программы

Рассмотрим запись алгоритма решения задачи в виде блок-схемы на примере. Хозяйство часть молока продает государству в виде сливок. Составить блок-схему расчета количества молока, подлежащего зачету. Базисная жирность молока установлена в размере 3,5%.

Для расчета используется формула

где М ? количество молока, подлежащего зачету, ц; С ? фактическое количество проданных сливок, ц; ЖС ? процент жира в сливках, %; ЖО ? процент жира в обрате, %; ЖМ ? базисная жирность молока, %.

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

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

2. Программирование на алгоритмическом языке Бейсик

2.1 Основные элементы языка

Программа на языке Турбо Бейсик записывается в виде последовательности строк, содержащих операторы и команды. Как в большинстве версий языка Бейсик строки могут нумероваться целыми числами, изменяющимися в пределах от 0 до 65535. Однако на языке Турбо Бейсик номера строк можно опускать. В этом случае при записи операторов, требующих переходов внутри программы, используются метки. Собственно номера строк также являются метками. В отдельных строках программы можно ставить или номера, или метки. Причем номера строк могут следовать в любой последовательности. В качестве символов языка Турбо Бейсик используются буквы латинского алфавита от А до Z или от а до z, цифры от 0 до 9 и ряд других символов:

= ? равно;

+ ? плюс;

? ? минус;

* ? звездочка;

/ ? дробная черта;

\ ? обратная дробная черта;

^ ? каре;

% ? процент;

& ? амперсанд;

! ? восклицательный знай;

# ? номер;

$ ? знак денежной единицы;

( ) ?скобки;

[ ] ? квадратные скобки;

, ? запятая;

. ? точка;

; ? точка с запятой;

: ? двоеточие;

' ? апостроф;

" ? кавычки;

? ? вопросительный знак;

< ? меньше;

> ?больше;

_ ? знак подчеркивания.

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

2.2 Данные

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

Целые числа могут быть одинарной или двойной точности. Диапазон изменения целых чисел одинарной точности от ?32768 до +32767, двойной точности от ?2147483648 до +2147483647. Целые числа записываются в обычном виде: 15, ?648, +1267.

Вещественные числа также могут быть представлены с различной точностью: одинарной и двойной. Вещественные числа одинарной точности могут изменяться от 10?38 до 10+38, двойной точности от 10?308 до 10+308. Для их записи используются соответственно до 6 и 16 значащих цифр. Форма записи близка к естественной. Отличие в том, что вместо десятичной запятой используется десятичная точка. Например: ?3.42, 0.543, 1425.64, 427 (одинарная точность); 382157.4467101456, ?0.4532178 (двойная точность).

При записи строковых данных используются любые символы, заключенные в кавычки. Например: "Вычислительная техника", "Турбо Бейсик". Строка ограничивается 32767 символами.

2.3 Переменные

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

% ? для целочисленных переменных одинарной точности;

& ? для целочисленных переменных двойной точности;

! ? для вещественных переменных одинарной точности;

# ? для вещественных переменных двойной точности;

$ ? для строковых переменных.

По умолчанию, т. е. при отсутствии знака, тип переменной определяется как вещественный с одинарной точностью. Например: DATA%, А&, В142!, Е #, А2$, X.

Тип переменной «по умолчанию» (может быть задан с помощью оператора DEF... (DEFine -- определить). Данный оператор указывает, что тип переменной будет определяться по первой букве имени переменной. Явное задание типа переменной оператор не отменяет. Тип переменной определяется:

DEFINT (INTeger ? целый) ? для целочисленных переменных одинарной точности;

DEFLNG (LeNGth ? длинный) ?для целочисленных переменных двойной точности;

DEFSNG (SiNGle ? одиночный) ? для вещественных переменных одинарной точности;

DEFDBL (DouBLe ? двойной) ? для вещественных переменных двойной точности;

DEFSTR (STRign ? строковый) ? для строковых переменных.

Например, оператор DEFDBL А?Е, Z объявляет все переменные, начинающиеся с букв А, В, С, D, Е, Z вещественными двойной точности.

2.4 Стандартные функции

В языке Турбо Бейсик предусмотрено обращение к стандартным программам для вычисления математических функций:

ABS(X) ? абсолютное значение;

SQR(X) ? квадратный корень;

SIN(X) ? синус угла;

COS(X) ? косинус угла;

ТАN(Х) ? тангенс угла;

ATN(X) ? арктангенс угла;

ЕХР(Х) ? ех;

ЕХР10(Х) ? 10х;

ЕХР2 (Х) ? 2х;

LOG(X) ? натуральный логарифм;

LOGIO(X) ? десятичный логарифм;

LOG2(X) ? логарифм по основанию 2;

SGN(X) ? знак выражения (1 при Х>0, 0 при Х=0, ?1 при Х<0);

INT(X) ? максимальное целое число, меньшее или равное X;

FIX(X) ? отбрасывание дробной части числа;

RND(X) ? датчик случайных чисел в интервале от 0 до 1.

В качестве аргумента X в функциях можно использовать любое арифметическое выражение. В тригонометрических функциях аргумент X задается в радианах. Для перевода градусов в радианы используется формула:

.

Для арктангенса значение угла находится в интервале от до .

2.5 Арифметические выражения

Арифметические выражения в языке Турбо Бейсик соответствуют общепринятым математическим выражениям. Для их записи используются следующие символы:

+ ? сложение;

? ? вычитание;

* ? умножение;

/ ? деление;

\ ? целочисленное деление;

MOD ? деление по модулю (остаток от деления);

^ ? возведение в степень;

( ) ? скобки.

При вычислении арифметических выражений соблюдается следующий приоритет:

1) вычисление выражений в скобках;

2) вычисление функций;

3) возведение в степень;

4) умножение и деление;

5) целочисленное деление;

6) деление по модулю;

7) сложение и вычитание.

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

Примеры записи арифметических выражений:

Математическая запись

Запись на языке Турбо Бейсик

1)

TAN(X+Y)^2

2)

1/SQR(2)*EXP2(?z^2/2)

3)

LOG(Y+SQR(Y^2+1))

Строковые выражения состоят из строковых констант, строковых переменных и строковых функций, разделяемых знаком операций. При оперировании со строковыми переменными производится только сложение (конкатенация). Результат вычислений ? строка символов. В качестве знака используется «+». Например:

PRINT "при"+"соединение"

Сообщение:

присоединение

2.6 Основные операторы

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

В одной строке можно записывать несколько операторов, разделяя их символом «:».

Оператор-комментарий REM. Комментарий в программе помещаются с помощью оператора REM (REMark ? примечание). В этом операторе за словом REM могут быть записаны любые символы, которые воспринимаются как комментарий и при выполнении программы игнорируются. Например:

REM Программа симплексного метода

При записи в одной строке нескольких операторов оператор REM должен быть последним. Например:

X=А*B : REM Расчет произведения двух чисел

При записи комментария вместо оператора REM можно использовать знак апострофа «'». В этом случае при записи нескольких операторов в строке разделительный знак «:» можно опустить. Например:

Х=А*В 'Расчет произведения двух чисел

Оператор присваивания LET. B результате выполнения оператора LET (LET ? пусть) переменной присваивается значение некоторого выражения. Например, оператор

LET А = 4.5

предписывает присвоить значение 4,5 вещественной переменной А, а с помощью оператора

LET B = C

вещественной переменной В присваивается значение вещественной переменной С.

Слово LET при записи оператора присваивания можно не записывать. Например:

X%=Y%+Z%

Р$="Турбо Бейсик"

Оператор ввода INPUT. Оператор INPUT (INPUT ? ввод) предназначен для ввода данных с клавиатуры. Например, оператор

INPUT А,В%,С$

предписывает ввод вещественной переменной А, целочисленной переменной В и строковой переменной С с помощью клавиатуры.

Встретив оператор INPUT, машина выводит на экран дисплея знак «?» и ждет ввода значения каждой переменной.

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

?35.6,671,IBM или

?35.6 671 IBM

Оператор INPUT может организовывать ввод данных с подсказкой. В этом случае в оператор включается текст, заключенный в кавычки. Например, оператор

INPUT "Ввести А, В%, С$";A,B%,C$

предписывает ввод переменных с подсказкой «Ввести А, В%, С$». В этом случае на экран дисплея выводится сообщение

Ввести A, В%, C$?

В данном примере после текста на экран дисплея выводится знак вопроса. Чтобы данный знак не выводился, после текста подсказки следует поставить запятую:

INPUT "Ввести А, В%, С$",A,B%,C$

Если непосредственно за словом INPUT поставить точку с запятой, то при нажатии клавиши ввода после окончания ввода данных курсор останется в той же строке. Например:

INPUT;MAX

Операторы задания значений переменных DATA, READ, RESTORE. Оператор DATA (DATA ? данные) является средством запоминания ограниченного числа данных в самой программе для последующего использования. Например, оператор

DATA 1,2,3,4

позволяет сохранить числа 1, 2, 3, 4 в программе. Во время чтения данные выбираются начиная с первого оператора DATA. В случае если все данные исчерпаны, дальнейшее чтение невозможно до появления оператора RESTORE. Операторы DATA можно помещать в любое место программы.

Обращение к данным, сохраняемым оператором DATA, осуществляется с помощью оператора READ (READ ? читать). Например:

DATA 1,2,3,4,5,6

READ А,В,С,D

READ E,G

После выполнения первого оператора READ А=1, В=2, С=3, D=4, после выполнения второго оператора READ Е=5, G=6. To есть после выполнения первого оператора READ положение последних считанных данных запоминается и второй оператор READ начинает выбирать данные с той позиции, которая была установлена предыдущим оператором.


Подобные документы

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

    шпаргалка [584,9 K], добавлен 09.03.2010

  • Арифметические и логические основы персонального компьютера. Работа персонального компьютера. Программные средства реализации информационных процессов. Алгоритмизация и программирование. Моделирование и формализация. Локальные и глобальные сети ЭВМ.

    методичка [112,9 K], добавлен 10.12.2011

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

    учебное пособие [1,4 M], добавлен 25.12.2009

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

    реферат [40,9 K], добавлен 16.11.2009

  • Разработка теории и методики преподавания раздела "Алгоритмизация и программирование" в школьном курсе информатики. Методические проблемы изучения алгоритмов работы с величинами. Требования к знаниям учащихся по линии алгоритмизации и программирования.

    курсовая работа [70,2 K], добавлен 09.07.2012

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

    реферат [19,5 K], добавлен 17.03.2011

  • Создание программы для автоматизации продаж программных продуктов, ведение базы данных по клиентам, формирование отчетов по реализованным товарам и вырученным средствам. Алгоритмизация задачи. Аномалии и защитное программирование. Тестирование и отладка.

    курсовая работа [2,9 M], добавлен 17.07.2014

  • Исторические аспекты развития линии "Алгоритмизация и программирование" в старшей школе. Изучение языка программирования Python с применением дистанционных курсов Coursera. Методическая система обучения программированию с использованием Coursera.

    дипломная работа [808,8 K], добавлен 13.12.2017

  • Появление и развитие информатики. Ее структура и технические средства. Предмет и основные задачи информатики как науки. Определение информации и ее важнейшие свойства. Понятие информационной технологии. Основные этапы работы информационной системы.

    реферат [127,4 K], добавлен 27.03.2010

  • Информационные процессы в организационно–экономической сфере, технологии и методы обработки экономической информации. Локальные и глобальные сети в экономике. Информационные системы в бухгалтерском учете и аудите, в административном управлении.

    контрольная работа [325,1 K], добавлен 02.05.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.