Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры по информатике часть 1.doc
Скачиваний:
3
Добавлен:
01.05.2025
Размер:
676.35 Кб
Скачать

21. Понятие об информационных процессах. Принципы организации информационных процессов.

Информация проявляется в информационных процессах. Под инф-ионными процессами понимаются любые действия с инф-ией. В структуре возможных операций с инф-ией можно выделить следующие:

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

Существуют три основных типа инф-ионных процессов, которые присутствуют в любых других более сложных процессах. Это хранение инф-ии, передача инф-ии и обработка инф-ии.

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

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

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

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

Можно выделить два типа обработки инф-ии: 1: обработка, связанная с получением новой инф-ии, нового содержания знаний. К этому типу обработки относится решение различных задач путем применения логических рассуждений.

2: обработка, связанная с изменением формы, но не изменяющая содержания. Например, перевод текста с одного языка на другой.

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

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

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

Для передачи инф-ии необходимы: источник и получатель инф-ии, а канал.

В таком процессе инф-ия представляется и передается в форме некоторой последовательности сигналов, символов, знаков.

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

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

Скорость передачи инф-ии — это инф-ионный объем сообщения, передаваемого в единицу времени. Единицы измерения скорости инф-ионного потока: бит/с, байт/с и др. Технические линии инф-ионной связи (телефонные линии, радиосвязь, оптико-волоконный кабель) имеют предел скорости передачи данных, называемый пропускной сп-бностью инф-ионного канала. Ограничения на скорость передачи носят физический характер.

*22. Понятие о системе программирования, ее основные функции и компоненты. Интерпретаторы и компиляторы. Трансляция программ и сопутствующие процессы.

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

• трансляторы с языков высокого уровня; • средства редактирования, компоновки и загрузки программ; • макроассемблеры (машинно-ориентированные языки);

• отладчики машинных программ.

Сист-ы программирования включают в себя:• текстовый редактор (Еdit); • загрузчик программ (Load); • запускатель программ (Run); • компилятор (Сompile) (компиляция или интерпретация исходного текста программы в машинный код с диагностикой синтаксических и семантических (логических) ошибок); • отладчик (Debug)(отладка и тестирование); • диспетчер файлов (File) (операции с файлами): сохранение, поиск, уничтожение и т.п. Ядро сист-ы программирования сост-ет язык. Существующие языки программирования можно разделить на две группы: процедурные и непроцедурные. Процедурные (или алгоритмические) языки программирования представляют собой сист-у предписаний для решения конкретной задачи. Роль компьютера сводится к механическому выполнению этих предписаний. Процедурные языки разделяют на языки низкого и высокого уровня. Языки низкого уровня (машинно-ориентированные) позволяют создавать программы из машинных кодов, обычно в шестнадцатеричной форме. С ними трудно работать, но программы занимают меньше места в памяти и работают быстрее. С помощью этих языков удобнее разрабатывать сист-ные программы, драйверы (программы для управления устройствами компьютера). Программы на языках высокого уровня близки к естественному (английскому, языку) и представляют набор заданных команд.

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

2. Бейсик - универсальный символический код инструкций для начинающих;

З. Алгол - сыграл большую роль в теории.

5. Си - сист-ное прогр-ое обеспечение.

6. Паскаль - На его базе созданы более мощные языки (Модула, Ада, Дельфи).

7. Кобол (язык, ориентированный на общий бизнес).

8. дельфи — язык объектно-ориентированного «визуального» программирования;

9. джава (Jаvа) — платформенно-независимый язык объектно-ориентированного программирования, создание интерактивных веб-страниц.

Непроцедурные языки: 1) Лисп; 2) Пролог; 3) Оккам.

Трансляция программ и сопутствующие процессы. Интерпретаторы и трансляторы. С появлением первых компьютеров программисты серьезно задумывались над проблемой кодирования компьютерных программ. Конец 40-х гг. - стали появляться первые примитивные языки программирования высокого уровня. В них программист записывал решаемую задачу в виде математических формул, а затем, используя специальную таблицу, переводил символ за символом, преобразовывая эти формулы в двухлитерные коды. В дальнейшем специальная программа (впоследствии названная интерпретатором) превращала эти коды в двоичный машинный код. Г. Хоппер разработал первый компилятор в начале 1950-х гг.; он осуществлял функцию объединения команд и в ходе трансляции производил организацию подпрограмм, выделение памяти компьютера, преобразование команд высокого уровня (в то время псевдокодов) в машинные команды. В дальнейшем компиляторы и интерпретаторы для машинно-ориентированных языков (низкого уровня) стали развиваться и прочно вошли в практику компьютерного дела.

Идеи трансляции (перекодирования) одних символов в другие легли в основу создания различных языков программирования с соответствующими трансляторами — компиляторами и/или интерпретаторами. Отличие компиляторов от интерпретаторов заключается в процедуре трансляции текста в машинный код. Компилятор преобразует весь текст программы в последовательный набор машинных команд, который в дальнейшем отправляется на выполнение. Интерпретатор же осуществляет трансляцию по принципу синхронного перевода. Каждая отдельная строка прогр-ого текста транслируется, а затем, после ее интерпретации, команды этой строки выполняются. Современные трансляторы с языков программирования высокого уровня, сист- управления базами данных интегрируют в себе возможности и достоинства компиляторов и интерпретаторов, а в сист-ы программирования добавляют различные сервисные угилиты по трансляции и отладке создаваемых программ. Важнейшим элементом в развитии сист- программирования выступили подпрограммы. Появление аппарата подпрограмм существенно облегчило процесс разработки сист-ных и прикладных программ. Подпрограммы позволили формировать библиотеки из наиболее часто употребляемых в программах алгоритмов процедур и функций. В сист-ах программирования обязательно присутствуют стандартные (встроенные в сист-у) библиотеки подпрограмм. Например, в их число входят подпрограммы вычисления математических функций sinх, cosx, absx и др. В настоящее время распространены пользовательские и прикладные библиотеки подпрограмм; их число увеличивается; меняется структура библиотечных подпрограмм. В современных языках получили распространение модули (Unit), представляющие специализированные пакеты взаимосвязанных подпрограмм определенного назначения, например по работе с клавиатурой, с графикой и пр. Развитие объектно-ориентированного программирования позволило создавать библиотеки объектов и подпрограмм с объектными типами данных (ОЬjесt). Примером могут служить оболочки типа ТиrbоVision .

Современная программа представляет набор команд, операторов и выражений в которых имеются ссылки (прямые или косвенные) на различные подпрограммы из существующих в сист-е программирования библиотек, модулей, объектов. В этой связи исходный текст программы, как правило, занимает по объему места в памяти в несколько раз меньше, чем его оттранслированный вариант в машинных кодах Следующий шаг трансляции — компоновка — заключается в подключении к исходному объектному модулю объектных модулей соответствующих подпрограмм в места ссылок на них (исходные тексты этих подпрограмм в сист-е вовсе отсутствуют). Таким образом, после компоновки (редактирования связей) возникает абсолютный модуль, намного превышающий по объему размер исходного текста программы. Он и является исполняемым компьютером после его запуска. Расширениями его файлового имени, как правило, являются .соm или .ехе. Коротко об отладчиках. Эти программы входят в современные сист-ы программирования и предоставляют средства для просмотра и изменения значений переменных в ходе отладки программы, поиска ошибок и т.д. Использование отiадчиков значительно облегчает процесс доводки больших программ. В сист-е программирования встроены описания всех синтаксически разрешенных конструкций, и транслятор применяет их к исходной программе. Первой фазой синтаксического анализа является лексический анализ. Он заключается в просмотре литер исходной программы и построении из них лексически допустимых единиц идентификаторов, ключевых слов языка, чисел и т.д. Во второй фазе эти единицы уже рассматриваются как неделимые и проверяется допустимость их сочетания. Даже если в синтаксическом смысле исходная программа верна, это не означает, что она имеет смысл в рамках данного языка программирования. На следующем этапе семантического анализа транслятор ищет ошибки такого рода: переменные не описаны, числа употребления слов bеgin и end не совпадают…Лишь после этого транслятор переводит операторы программы в машинный код.