- •4. Теория кодирования. Виды кодирования. Оптимальные коды.
- •5. Теория распознавания. Общая характеристика задач распознавания и их типы. Математическая теория распознавания образов.
- •6. Математическая кибернетика. Информация и управление. Математические аспекты кибернетики.
- •7. Понятие «модель». Модел-ние как метод познания. Натурные и абстрактные модели. Виды модел-ния в естественных и технических науках.
- •8. Компьютерная модель. Абстрактные модели и их классификация. Вербальные модели. Информационные модели.
- •9. Объекты и их связи. Основные структуры в информационном моделировании. Примеры информационных моделей. Математические модели.
- •12. Различные подходы к классификации математических моделей. Модели с сосредоточенными и распределенными параметрами. Дескриптивные, оптимизационные, многокритериальные, игровые модели.
- •13. Системный подход в научных исследованиях. Численный эксперимент. Его взаимосвязи с натурным экспериментом и теорией. Достоверность численной модели. Анализ и интерпретация модели.
- •15. Специфика использования компьютерного моделирования в педагогических программных средствах.
- •16. История развития компьютерной техники. Поколения эвм и их классификация.
- •17. Центральные и внешние устройства эвм, их характеристики. Канальная и шинная системотехника.
- •18. Микропроцессор и память компьютера. Система прерываний, регистры и модель доступа к памяти. Защищенный режим работы процессора как средство реализации многозадачности.
- •19. Принципы управления внешними устройствами персонального компьютера. Базовая система ввода/вывода.
- •21. Понятие об информационных процессах. Принципы организации информационных процессов.
- •23. Прикладное программное обеспечение общего назначения. Системы обработки текстов. Системы машинной графики.
- •Сист-ы машинной графики на пк
- •24. Базы данных и сист-ы управления базами данных. Представление о языках управления реляционными базами данных. Табличные процессоры.
- •25. Интегрированные программные средства. Прикладное программное обеспечение пользователя. Собственная инструментальная среда. Автоматизированное рабочее место.
- •27. Компьютерные вирусы и приемы борьбы с ними.
- •28. Информационные модели данных: фактографические, реляционные, иерархические, сетевые.
- •29. Последовательность создания информационной модели. Взаимосвязи в модели. Типы моделей данных.
- •Связь "многие ко многим"
- •30. Проектирование бд. Концептуальная модель предметной области. Логическая модель предметной области.
- •Модель сущность-связь
- •31. Определение взаимосвязи между элементами бд. Первичные и альтернативные атрибуты данных. Приведение модели к требуемому уровню нормальной формы. Физическое описание модели.
- •32. Администрирование базы данных. Обзор возможностей и особенностей различных сбд. Методы хранения и доступа к данным. Работа с внешними данными с помощью технологии odbc (bde).
- •33. Основные направления исследований в области ии. Сист-а знаний. Модели представления знаний: логическая, сетевая, фреймовая, продукционная.
- •36. Глобальные компьютерные сети. Предпосылки и история возникновения Интернет. Интернет как технология и информационный ресурс (сеть).
- •37. Технология электронной почты. Технология обмена файлами (ftp).
- •38. Технология www. Поиск информации в Интернет.
- •39. Понятие мультимедиа. Мультимедиа как средство и технология. Создание мультимедийных приложений. Мультимедиа и Интернет.
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 не совпадают…Лишь после этого транслятор переводит операторы программы в машинный код.
