Билет № 1
1. Магистрально-модульный принцип построения компьютера.
2. Технология объектно-ориентированного программирования. Объекты и их свойства.
3. Решение расчетной задачи с помощью электронной таблицы.
1.
В основу архитектуры современных персональных компьютеров положен магистрально-модульный принцип. Модульный принцип позволяет потребителю самому комплектовать нужную ему конфигурацию компьютера и производить при необходимости ее модернизацию. Модульная организация компьютера опирается на магистральный (шинный) принцип обмена информацией между модулями.
Обмен информацией между отдельными устройствами компьютера производится по трем многоразрядным шинам (многопроводным линиям), соединяющим все модули: шине данных, шине адресов и шине управления.
Разрядность шины данных связана с разрядностью процессора (имеются 8-, 16-, 32-, 64-разрядные процессоры).
ПроцессорОперативная памятьШина данныхШина адресаМАГИСТРАЛЬШина управленияУстройства ввода:Внешняя память:Устройства вывода:КлавиатураНГМДДисплейМышь или трекболНЖМДПринтерМикрофонCD-ROMАкустические колонкиСканерПлоттер
Данные по шине данных могут передаваться от процессора к какому-либо устройству, либо, наоборот, от устройства к процессору, т.е. шина данных является двунаправленной. К основным режимам работы процессора с использованием шины данных можно отнести следующие: запись/чтение данных из оперативной памяти, запись/чтение данных из внешней памяти, чтение данных с устройства ввода, пересылка данных на устройство вывода.
Выбор абонента по обмену данными производит процессор, который формирует код адреса данного устройства, а для оперативной памяти код адреса ячейки памяти. Код адреса передается по адресной шине, причем сигналы по ней передаются в одном направлении от процессора к оперативной памяти и устройствам, т.е. шина адреса является однонаправленной.
Разрядность шины адреса определяет объем адресуемой процессором памяти. Имеются 16-, 20-, 24-и 32-разрядные шины адреса.
Каждой шине соответствует свое адресное пространство, т.е. максимальный объем адресуемой памяти:
216 = б4Кб 220 = 1 Мб 224 = 16 Мб
232 = 4 Гб
В персональных компьютерах величина адресного пространства процессора и величина фактически установленной оперативной памяти практически всегда различаются.
В первых отечественных персональных компьютерах величина адресного пространства была иногда меньше, чем величина реально установленной в компьютере оперативной памяти. Обеспечение доступа к такой памяти происходило на основе поочередного (так называемого постраничного) подключения дополнительных блоков памяти к адресному пространству.
В современных персональных компьютерах с 32-разрядной шиной адреса величина адресуемой памяти составляет 4 Гб, а величина фактически установленной оперативной памяти значительно меньше и составляет обычно 16 или 32Мб.
По шине управления передаются сигналы, определяющие характер обмена информацией (ввод/вывод), и сигналы, синхронизирующие взаимодействие устройств, участвующих в обмене информацией.
Аппаратно на системных платах реализуются шины различных типов. В компьютерах РС/286 использовалась шина ISA (Industry Standard Architecture), имевшая 16-разрядную шину данных и 24-разрядную шину адреса. В компьютерах РС/386 и РС/486 используется шина EISA (Extended Industry Standard Architecture), имеющая 32-разрядные шины данных и адреса. В компьютерах PC/Pentium используется шина PCI (Peripheral Component Interconnect), имеющая 64-разрядную шину данных и 32-разрядную шину адреса.
Подключение отдельных модулей компьютера к магистрали на физическом уровне осуществляется с помощью контроллеров, адаптеров устройств (видеоадаптер, контроллер жестких дисков и т. д.), а на программном уровне обеспечивается загрузкой в оперативную память драйверов устройств, которые обычно входят в состав операционной системы.
Контроллер жестких дисков обычно находится на системной плате. Существуют различные типы контроллеров жестких дисков, которые различаются по количеству подключаемых дисков, скорости обмена информацией, максимальной емкости диска и др.
ТипКоличество устройствСкорость обменаМакс, емкостьIDE21Мб/с540МбEIDE2 + 23—4 Мб/с80ГбSCSI85—10 Мб/с80Гб
IDE — Integrated Device Electronics
EIDE — Enhanced Integrated Device Electronics,
SCSI — Small Computers System-Interface
В стандартный набор контроллеров, разъемы которых имеются на системном блоке компьютера, обычно входят:
— видеоадаптер (с помощью него обычно подключается дисплей);
— последовательный порт СОМ1 (с помощью него обычно подключается мышь);
— последовательный порт COM2 (с помощью него обычно подключается модем);
— параллельный порт (с помощью него обычно подключается принтер);
— контроллер клавиатуры.
Через последовательный порт единовременно может передаваться 1 бит данных в одном направлении, причем данные от процессора к периферийному устройству и в обратную сторону, от периферийного устройства к процессору, передаются по разным проводам. Максимальная дальность передачи составляет обычно несколько десятков метров, а скорость до 115200 бод. Устройства подключаются к этому порту через стандартный разъем RS-232.
Через параллельный порт может передаваться в одном направлении одновременно 8 бит данных. К этому порту устройства подключаются через разъем Centronics. Максимальное удаление принимающего устройства обычно не должно превышать 3 м.
Подключение других периферийных устройств требует установки в компьютер дополнительных адаптеров (плат).
2.
Объектно-ориентированное программирование (ООП) — это метод программирования, при использовании которого главными элементами программ являются объекты.
Такой подход объективно обусловлен тем, что окружающий нас мир состоит из целостных объектов, которые обладают определенными свойствами и поведением. Ранее при использовании технологии структурного программирования предусматривалось «расчленение» объекта, описание его свойств отдельно от поведения.
В технологии объектно-ориентированного программирования объекты сохраняют свою целостность, все свойства объекта и его поведение описываются внутри самого объекта.
В основе объектно-ориентированного подхода лежат три понятия:
• инкапсуляция: объединение данных с процедурами и функциями в рамках единого целого — объекта;
• наследование: возможность построения иерархии объектов с использованием наследования их характеристик;
• полиморфизм: задание одного имени действию, которое передается вверх и вниз по иерархии объектов, с реализацией этого действия способом, соответствующим каждому объекту в иерархии.
Инкапсуляция. В объектно-ориентированном программировании объект представляет собой запись, которая служит «оболочкой» для соединения связанных между собой данных и процедур. Другими словами, объект обладает определенными свойствами и поведением. Рассмотрим в качестве примера кнопку — типичный объект, присутствующий в интерфейсе большого количества программ. Кнопка обладает определенным поведением: она может быть нажата, после нажатия на кнопку будут происходить определенные события и т. д. Соединение таких свойств и поведения в одном объекте и называется инкапсуляцией.
Наследование. Объекты могут наследовать свойства и поведение от других объектов, которые называются «родительскими объектами». Это понятие можно хорошо проиллюстрировать опять на примере интерфейсной кнопки. Возьмем в качестве «родительского объекта» самую простую квадратную кнопку серого цвета с надписью «Кнопка», при нажатии на которую запускается определенная процедура. На основе этой кнопки можно создать множество кнопок, обладающих различными размерами, цветами и надписями. Нажатие на каждую такую кнопку будет вызывать свою особенную процедуру. Таким образом, все это множество кнопок унаследует свои свойства и поведение от «родительского объекта», простой кнопки.
Полиморфизм — это слово из греческого языка, означающее «много форм». Перечень интерфейсных кнопок различных типов (простая кнопка, радиокнопка, кнопка-переключатель и т. д.) представляет собой хороший пример полиморфизма. Каждый тип объекта в этом перечне представляет собой различный тип интерфейсной кнопки. Можно описать метод для каждой кнопки, который изобразит этот объект на экране. В терминах объектно-ориентированного программирования можно сказать, что все эти типы кнопок имеют способность изображения самих себя на экране.
Однако способ (процедура), которым каждая кнопка должна изображать себя на экране, является различным для каждого типа кнопки. Простая кнопка рисуется на экране с помощью процедуры «вывод изображения простой кнопки», радиокнопка рисуется на экране с помощью процедуры «вывод изображения радиокнопки» и т. д.
Таким образом, существует единственное для всего перечня интерфейсных кнопок действие (вывод изображения кнопки на экран), которое реализуется специфическим для каждой кнопки способом. Это и является проявлением полиморфизма.
В системах объектно-ориентированного программирования обычно используется графический интерфейс, который позволяет визуализировать процесс программирования. Появляется возможность создавать объекты, задавать им свойства и поведение с помощью мыши.
Объектно-ориентированное программирование по своей сути — это создание приложений из объектов, подобно тому, как из блоков и различных деталей строятся дома. Одни объекты приходится полностью создавать самостоятельно, тогда как другие можно позаимствовать в готовом виде из разнообразных библиотек.
Наиболее распространенными системами объектно-ориентированного визуального программирования являются Microsoft Visual Basic и Borland Delphi. Катализатором широкого распространения объектно-ориентированного программирования стала технология World Wide Web. Практически все новейшие разработки для этой системы выполняются с помощью объектно-ориентированных языков (например, языка Java).
Объект — элементарная единица в объектно-ориентированном программировании, заключающая в себе как описывающие объект данные, так и средства обработки этих данных.
Класс — обобщенное описание набора объектов, обладающих некоторыми одинаковыми методами и структурами данных.
Подкласс — более подробное описание, относящееся к какому-либо специализированному подмножеству набора объектов, описанного классом. Иногда подклассы называют также производными или дочерними классами.
Наследование — механизм автоматического включения в состав различных классов, подклассов и объектов одних и тех же методов и структур данных.
Билет № 2
1. Основные характеристики (разрядность, адресное пространство и др.) процессора компьютера.
2. Системы программирования. Интерпретация и компиляция.
3. Разработка программы перемещений и действий исполнителя типа «робот» или «черепашка».
1.
Процессор компьютера предназначен для обработки информации. Каждый процессор имеет определенный набор базовых операций (команд), например, одной из таких операций является операция сложения двоичных чисел.
Технически процессор реализуется на большой интегральной схеме, структура которой постоянно усложняется, и количество функциональных элементов (типа диод или транзистор) на ней постоянно возрастает (от 30 тысяч в процессоре 8086 до 5 миллионов в процессоре Pentium II).
Важнейшей характеристикой процессора, определяющей его быстродействие, является его тактовая частота. От нее, в частности, зависит количество базовых операций, которые производит процессор в секунду. За 20 лет тактовая частота процессора увеличилась почти на два порядка от 4 МГц (процессор 8086, 1978 г.) до 300 МГц (процессор Pentium II, 1997 г.).
Другой характеристикой процессора, влияющей на его производительность, является разрядность. В общем случае производительность процессора тем выше, чем больше его разрядность. В настоящее время используются 8-, 16-, 32- и 64-разрядные процессоры, причем практически все современные программы рассчитаны на 32-и 64-разрядные процессоры.
Часто уточняют разрядность процессора и пишут, например, 16/20, что означает, что процессор имеет 16-разрядную шину данных и 20-разрядную шину адреса. Разрядность адресной шины определяет адресное пространство процессора, т.е. максимальный объем оперативной памяти, который может быть установлен в компьютере.
В первом отечественном персональном компьютере «Агат» (1985 г.) был установлен процессор, имевший разрядность 8/16, соответственно его адресное пространство составляло 64 Кб. Современный процессор Pentium II имеет разрядность 64/32, т.е. его адресное пространство составляет 4 Гб.
Производительность процессора является интегральной характеристикой, которая зависит от частоты процессора, его разрядности, а также особенностей архитектуры (наличие кэш-памяти и др.). Производительность процессора нельзя вычислить, она определяется в процессе тестирования, т.е. определения скорости выполнения процессором определенных операций в какой-либо программной среде.
Увеличение производительности процессоров может достигаться различными путями. В частности, за счет введения дополнительных базовых операций. Так, в процессорах Pentium MMX достигается большая производительность при работе с мультимедиа-приложениями (программами для обработки графики, видео и звука).
Тип процессораЧастота (МГц)Разрядность шины данныхРазрядность шины адресаАдресное пространство80864—1216201Мб802868—20162416Мб8038625—4032324Гб8048633—10032324ГбPentium75—20064324ГбPentium II200—50064324ГбPentium III500—150064324ГбPentium IV1500—250064324Гб
2.
Имеются два основных подхода к реализации языков программирования: компиляция и интерпретация. Компилятор переводит программу на языке программирования в машинный код (последовательность команд и данных) конкретного компьютера, на котором будет выполняться программа. Исполнение этого кода осуществляется под управлением операционной системы и никак не зависит от компилятора. Интерпретатор же является собственно той системой, которая исполняет программу на языке программирования.
Между этими двумя подходами имеется множество промежуточных вариантов: существуют компиляторы, которые компилируют в интерактивном режиме, во время ввода программы. Существуют интерпретаторы, которые компилируют программу в промежуточный код.
Вообще говоря, код, полученный компилятором, будет более эффективным, т.е. программа будет выполняться быстрее. Но полное время, затраченное на проектирование, ввод текста и запуск на выполнение для компилирующей системы, может быть больше, чем для интерпретирующей. Кроме того, компилятор может точно указать место лишь синтаксической ошибки; если же ошибка другого рода, то компилятор может предложить лишь сгенерированный код для определения места вероятной ошибки. Интерпретатор же покажет ошибку в исходном тексте программы.
В самом языке программирования, вообще говоря, не заложен способ его реализации, однако одни языки почти всегда компилируются, например C++, другие, например Smalltalk, почти всегда интерпретируются, Java компилируется в байт-код и затем интерпретируется.
Сейчас практически любая реализация языка представлена как среда разработки, которая включает:
1) компилятор (или интерпретатор);
2) отладчик — специальную программу, которая облегчает процесс поиска ошибок; пользуясь ею, разработчик может выполнять программу «по шагам», отслеживать изменение значений переменных в процессе выполнения и др.;
3) встроенный текстовый редактор;
4) специальные средства для просмотра структуры программы, классов, модулей и проч.;
5) библиотеку готовых модулей, классов, например для создания пользовательского интерфейса (окна, кнопки и т. д.).
В 80-е годы активно прорабатывалась идея визуального программирования, основной смысл которой состоит в том, чтобы процесс «сборки» программы осуществлялся на экране дисплея из программных конструкций — картинок. В результате появились среды разработки 4-го поколения (4GL), в которых разрабатываемый программный продукт строится из готовых крупных блоков при помощи мыши. Примерами таких сред являются: Delphi, Visual Age, Visual Java.
Билет № 3
1. Организация и основные характеристики памяти компьютера.
2. Технология алгоритмического программирования. Основные структуры и средства языка программирования (операторы, функции, процедуры).
3. Создание, редактирование, сохранение и распечатка заданного текста.
1.
Большое количество программ и данных, необходимых пользователю, долговременно хранятся во внешней памяти компьютера (на гибких и жестких магнитных дисках, CD-ROM и др.). В оперативную память компьютера загружаются те программы и данные, которые необходимы в данный момент.
По мере усложнения программ и увеличения их функций, а также появления мультимедиа-приложений растет информационный объем программ и данных. Если в середине 80-х годов обычный объем программ и данных составлял десятки и лишь иногда сотни килобайт, то в середине 90-х годов он стал составлять мегабайты и десятки мегабайт. Соответственно растет объем оперативной памяти. В школьном компьютере БК-0010 (1986 г.) объем оперативной памяти составлял 64 Кб, в современных персональных компьютерах он обычно составляет 16 Мбайт и более.
Логически оперативная память разделена на ячейки объемом 1 байт. Соответственно оперативная память 64 Кб содержит 65 536 ячеек, а память 16 Мб содержит 16 777 216 ячеек.
Каждая ячейка имеет свой уникальный двоичный адрес. При необходимости проведения операции считывания/записи данных из данной ячейки адрес ячейки передается от процессора к оперативной памяти по адресной шине.
Разрядность шины адреса определяет объем адресуемой памяти процессора и, соответственно, максимальный объем оперативной памяти, которую можно непосредственно использовать. Разрядность шины адреса у большинства современных персональных компьютеров составляет 32 разряда, т.е. максимальный объем оперативной памяти может составлять 232 = 4 Гб.
Величина аппаратно установленной оперативной памяти в современных рабочих станциях обычно составляет 16 или 32 Мб, а в серверах 64 или 128 Мб. Таким образом, имеется возможность наращивания объема оперативной памяти компьютеров без увеличения разрядности шины адреса процессора.
Физически оперативная память изготавливается в виде БИС (больших интегральных схем) различных типов (SIMM, DIMM), имеющих различную информационную емкость (1, 4, 8, 16, 32 Мб). Различные системные платы имеют различные наборы разъемов для модулей оперативной памяти.
Модули оперативной памяти характеризуются временем доступа к информации (считывания/записи данных). В современных модулях типа SIMM время доступа обычно составляет 60 нс, в модулях типа DIMM — 10 нс.
Различные операционные системы используют различные способы организации оперативной памяти. В школьных компьютерах с 16-разрядной шиной адреса и, соответственно, максимально с 64 Кб адресуемой памяти («Агат», «Ямаха») реализовывался принцип поочередного (так называемого постраничного) подключения дополнительных блоков физической памяти к адресному пространству процессора. Таким образом, удавалось увеличить объем оперативной памяти таких компьютеров до 128 Кб и более.
Операционная система MS-DOS создает сложную логическую структуру оперативной памяти:
• основная (conventional) память занимает адресное пространство от 0 до 640 Кб, в нее загружаются операционная система, программы и данные;
• верхняя память (UMB — Upper Memory Blocks) занимает адресное пространство от 640 Кб до 1 Мб, в нее могут быть загружены драйверы устройств;
• высокая (high) память начинается после 1 Мб и имеет объем 64 Кб, в нее может быть частично загружена операционная система;
• память, которая располагается в адресном пространстве «выше» высокой памяти, может использоваться в качестве расширенной памяти или дополнительной памяти; однако память остается недоступной для программ и данных.
Таким образом, под управлением операционной системы MS-DOS аппаратно установленная оперативная память используется очень нерационально. Этот недостаток преодолен в операционной системе Windows, в которой используется простая неструктурированная модель памяти и вся память доступна для загрузки программ и данных.
2.
Технология алгоритмического программирования базируется на методе последовательной детализации алгоритмов. Сначала формулируется основной алгоритм, который состоит из «крупных» блоков (команд), часть которых может быть непонятна исполнителю (не входит в его систему команд). В этом случае они записываются как вызовы вспомогательных алгоритмов. Затем происходит детализация, т.е. все вспомогательные алгоритмы подробно расписываются с использованием команд, понятных исполнителю.
Как основной алгоритм, так и вспомогательные алгоритмы могут включать основные алгоритмические структуры: линейную, разветвляющуюся и циклическую. В линейной алгоритмической структуре все команды выполняются в линейной последовательности, одна за другой.
В разветвляющиеся алгоритмы входит условие, в зависимости от выполнения или невыполнения которого выполняется та или иная последовательность команд (серий).
В циклические алгоритмы входит последовательность команд, выполняемая многократно. Такая последовательность команд называется телом цикла.
Алгоритмы могут быть описаны различными способами:
• записаны на естественном языке;
• изображены в виде блок-схемы;
• записаны на алгоритмическом языке;
• закодированы на языке программирования.
Для кодирования алгоритма на языке программирования необходимо знать синтаксис языка, т.е. его основные операторы, типы переменных и др. В школе знакомятся в основном с языком программирования Бейсик.
Язык программирования Basic (Beginner's All-purpose Symbolic Instruction Code — многоцелевой язык для начинающих) был разработан в 1964 году. Языки программирования, в том числе и Basic, развиваются, - обогащаются новыми возможностями, и в результате возникают различные версии языка (Бейсик-Агат, MSX-Basic, QBasic, VisualBasic).
Команды и различные типы алгоритмических структур реализуются на языке программирования с помощью операторов. Каждый оператор имеет свой формат.
КомандаФормат оператораВвод данныхINPUT Вывод данныхPRINT ПрисваиваниеLET = арифметическое выражение>Команда ветвленияIF THEN ELSE Команда циклаFOR FROM ТО NEXT
В формат операторов, кроме ключевых слов, входят переменные и арифметические выражения. Переменные бывают различных типов, тип переменной определяет, какие значения может принимать эта переменная. В Бейсике переменные могут быть следующих типов: целые (А% = 5), вещественные (А = 3.14), символьные (А$ = "информатика") и массивы DIM A(M, N). Массивы представляют собой одномерные или двумерные таблицы.
Арифметические выражения могут включать в себя: числа, переменные, знаки арифметических выражений, стандартные функции и круглые скобки. Например, арифметическое выражение, которое позволяет определить величину гипотенузы прямоугольного треугольника, будет записываться следующим образом: SQR (А*А + В*В).
Стандартные функции позволяют вычислить значения математических функций, например стандартная функция SIN(X) позволяет вычислить значения математической функции sin x.
Вспомогательные алгоритмы реализуются на Бейсике с помощью подпрограмм. Для перехода на подпрограмму используется специальный оператор, его формат: GOSUB . Возврат из подпрограммы реализуется с помощью оператора RETURN.
В некоторых других языках программирования, в частности в Паскале, вспомогательные алгоритмы реализуются с помощью процедур.
Билет № 4
1. Внешняя память компьютера. Носители информации (гибкие и жесткие диски, CD-ROM-диски).
2. Технология логического программирования. Основные структуры и средства логического программирования (язык ПРОЛОГ).
3. Определение результата выполнения алгоритма по его блок-схеме (записи на алгоритмическом языке или на языке программирования).
1.
Основное назначение внешней памяти компьютера — долговременное хранение большого количества различных файлов (программ, данных и т. д.). Устройство, которое обеспечивает запись/считывание информации, называется накопителем, а хранится информация на носителях. Наиболее распространенными являются накопители следующих типов:
— накопители на гибких магнитных дисках (НГМД) двух различных типов, рассчитанные на диски диаметром 5,25" (емкость 1,2 Мб) и диски диаметром 3,5" (емкость 1,44 Мб);
— накопители на жестких магнитных дисках (НЖМД) информационной емкостью от 4 до 80 Гб;
— накопители CD-ROM для CD-ROM-дисков емкостью 640 Мб.
Для пользователя имеют существенное значение некоторые технико-экономические показатели: информационная емкость, скорость обмена информацией, надежность ее хранения и, наконец, стоимость накопителя и носителей к нему.
Тип накопителяЕмкость носителяСкорость обменаОпасные воздействияОриентировочная стоимость накопителя в у. е.Ориентировочная стоимость носителя в у. е.НГМД 5,25"1,2 МбНизкаяМагнитные поля, нагревание120,5НГМД 3,5"1,44 МбНизкаяНЖМДДо 80 Гбот 3 до 10 Мб/сУдары200CD-ROM640 Мбдо 6-8 Мб/сЗагрязнение404
В основу записи, хранения и считывания информации положены два физических принципа, магнитный и оптический. В НГМД и НЖМД используется магнитный принцип. При магнитном способе запись информации производится на магнитный носитель (диск, покрытый ферромагнитным лаком) с помощью магнитных головок.
В процессе записи головка с сердечником из магнитомягкого материала (малая остаточная намагниченность) перемещается вдоль магнитного слоя магнитожесткого носителя (большая остаточная намагниченность). Электрические импульсы создают в головке магнитное поле, которое последовательно намагничивает (1) или не намагничивает (0) элементы носителя.
При считывании информации намагниченные участки носителя вызывают в магнитной головке импульс тока (явление электромагнитной индукции).
Носители информации имеют форму диска и помещаются в конверт из плотной бумаги (5,25") или пластмассовый корпус (3,5"). В центре диска имеется отверстие (или приспособление для захвата) для обеспечения вращения диска в дисководе, которое производится с постоянной угловой скоростью 300 об/с.
В защитном конверте (корпусе) имеется продолговатое отверстие, через которое производится запись/ считывание информации. На боковой кромке дискет (5,25") находится маленький вырез, позволяющий производить запись, если вырез заклеить непрозрачной наклейкой, запись становится невозможной (диск защищен). В дискетах 3,5" защиту от записи обеспечивает предохранительная защелка в левом нижнем углу пластмассового корпуса.
Диск должен быть форматирован, т.е. должна быть создана физическая и логическая структура диска. В процессе форматирования на диске образуются концентрические дорожки, которые делятся на сектора, для этого головка дисковода расставляет в определенных местах диска метки дорожек и секторов.
Например, на гибком диске формата 3,5":
• размер сектора — 512 байт;
• количество секторов на дорожке — 18;
• дорожек на одной стороне — 80;
• сторон — 2.
Жесткие магнитные диски состоят из нескольких дисков, размещенных на одной оси и вращающихся с большой угловой скоростью (несколько тысяч оборотов в минуту), заключенных в металлический корпус. Большая информационная емкость жестких дисков достигается за счет увеличения количества дорожек на каждом диске до нескольких тысяч, а количества секторов на дорожке — до нескольких десятков. Большая угловая скорость вращения дисков позволяет достигать высокой скорости считывания/записи информации (более 5 Мб/с).
CD-ROM-накопители используют оптический принцип чтения информации. Информация на CD-ROM-диске записана на одну спиралевидную дорожку (как на грампластинке), содержащую чередующиеся участки с различной отражающей способностью. Лазерный луч падает на поверхность вращающегося CD-ROM-диска, интенсивность отраженного луча соответствует значениям 0 или 1. С помощью фотопреобразователя они преобразуются в последовательности электрических импульсов.
Скорость считывания информации в CD-ROM-накопителе зависит от скорости вращения диска. Первые CD-ROM-накопители были односкоростными и обеспечивали скорость считывания информации 150 Кб/с, в настоящее время все большее распространение получают 24-скоростные CD-ROM-накопители, которые обеспечивают скорость считывания информации до 3,6 Мб/с.
Информационная емкость CD-ROM-диска может достигать 640 Мб. Производятся CD-ROM-диски либо путем штамповки (диски белого цвета), либо записываются (диски желтого, голубого и зеленоватого цвета) на специальных устройствах, которые называются CD-recorder.
2.
Язык Пролог хорошо приспособлен для решения тех задач, в которых речь идет об отношениях между различными объектами. Программирование на Прологе состоит в определении отношений и в постановке вопросов, касающихся этих отношений. Классический пример — родственные отношения. Тот факт, что Иван является родителем Петра, записывается на Прологе так:
родитель(иван, петр).
родитель — это имя отношения, иван и петр — аргументы этого отношения. Итак, на Прологе можно определить отношение между двумя и более объектами или унарное отношение, т.е. утверждение относительно одного объекта. Вся система родственных отношение описывается следующей Пролог программой:
родитель(мария, иван).
родитель(василий, иван).
родитель(иван, Клавдия).
родитель(иван, пульхерия).
родитель(клавдия, петр).
Эту программу можно ввести в Пролог-систему и задавать вопросы системе:
? — родитель(иван, клавдия).
На этот вопрос система ответит «да». На вопрос:
? — родитель(иван, петр).
система ответит «нет».
В предложениях можно использовать переменные. Так, вопрос «Кто является родителем Клавдии?» можно записать так:
? — родителя(Х, клавдия).
На этот вопрос система даст ответ:
Х=иван
Вопросы к системе состоят из одного или более целевых утверждений (целей). Такая последовательность целей, как:
родитель(Х, клавдия), родитель(X, пульхерия)
означает конъюнкцию целевых утверждений: «X — родитель Клавдии» и «X» — родитель Пульхерии».
Кроме утверждений, касающихся отношений между конкретными объектами (такие утверждения предполагаются истинными и называются фактами), возможно описать в Пролог-программе правила — утверждения, истинность которых зависит от определённых условий, например отношение бабушкаилидедушка можно записать на Прологе так:
бабушкаилидедушка(Х, Z) — родитель(Х, Y), родитель(Y, Z).
Процесс, в результате которого Пролог-система устанавливает, удовлетворяет ли объект запросу, включает в себя логический вывод и исследование различных вариантов. Все это делается автоматически самой Пролог-системой и, как правило, скрыто от пользователя.
Наиболее часто используемой структурой в Прологе являются списки. Список либо пуст, либо состоит из головы и хвоста, который, в свою очередь, также является списком. Как правило, для списков существует специальная нотация и определены операции: определения принадлежности элемента списку, конкатенация, добавление элемента, удаление элемента, удаление подсписка и т. п.
Билет № 5
1. Операционная система компьютера (назначение, состав, загрузка).
2. Глобальная сеть Интернет и ее информационные ресурсы (файловые архивы, «Всемирная паутина», электронная почта, телеконференции).
3. Создание, преобразование, хранение и распечатка заданного рисунка.
1.
Операционная система является базовой и необходимой составляющей программного обеспечения компьютера (software). Операционная система обеспечивает управление всеми аппаратными компонентами компьютера (hardware). Другими словами, операционная система обеспечивает функционирование и взаимосвязь всех компонентов компьютера, а также предоставляет пользователю доступ к его аппаратным возможностям.
К системному блоку компьютера подключаются через специальные согласующие платы (контроллеры) периферийные устройства (дисковод, принтер и т. д.). Каждое периферийное устройство обрабатывает информацию по-разному и с различной скоростью, поэтому необходимо программно согласовать их работу с работой процессора, Для этого в составе операционной системы имеются специальные программы — драйверы устройств. Каждому устройству соответствует свой драйвер.
Процесс работы компьютера в определенном смысле сводится к обмену файлами между периферийными устройствами, т.е. необходимо уметь управлять файловой системой. Ядром операционной системы является программа, которая обеспечивает управление файловой системой.
Пользователь общается с компьютером через устройства ввода информации (клавиатура, мышь). После ввода команды операционной системы специальная программа, которая называется командный процессор, расшифровывает команды и исполняет их.
Процесс общения пользователя с компьютером должен быть удобным. В состав современных операционных систем (Windows) обязательно входят модули, создающие графический интерфейс.
Таким образом, в структуру операционной системы входят следующие модули:
• базовый модуль, управляющий файловой системой;
• командный процессор, расшифровывающий и выполняющий команды;
• драйверы периферийных устройств;
• модули, обеспечивающие графический интерфейс. Файлы операционной системы находятся на диске (жестком или гибком). Однако программы могут выполняться, только если они находятся в оперативной памяти, поэтому файлы операционной системы необходимо загрузить в оперативную память.
Все файлы операционной системы не могут одновременно находиться в оперативной памяти, т. к. объем современных операционных систем составляет десятки мегабайт. Для функционирования компьютера обязательно должны находиться в оперативной памяти базовый модуль, командный процессор и драйверы подключенных устройств. Модули операционной системы, обеспечивающие графический интерфейс, могут быть загружены по желанию пользователя. В операционной системе Windows 95 выбор варианта загрузки представлен в виде меню.
После включения компьютера производится загрузка операционной системы в оперативную память, т.е. выполняется программа загрузки. Однако для того чтобы компьютер выполнял какую-нибудь программу, эта программа должна уже находиться в оперативной памяти. Выход из этого противоречия состоит в последовательной, поэтапной загрузке.
В соответствии с английским названием этого процесса — bootstrap, — система как бы «поднимет себя за шнурки ботинок». В системном блоке компьютера находится ПЗУ (BIOS), в котором содержатся программы тестирования компьютера и первого этапа загрузки операционной системы. После включения компьютера эти программы начинают выполняться, причем информация о ходе этого процесса высвечивается на экране дисплея.
На этом этапе процессор обращается к диску и ищет на определенном месте (в начале диска) наличие очень небольшой программы-загрузчика BOOT. Программа-загрузчик считывается в память, и ей передается управление. В свою очередь она ищет на диске базовый модуль операционной системы, загружает его в память и передает ему управление.
В состав базового модуля операционной системы входит основной загрузчик, который ищет остальные модули операционной системы и загружает их в оперативную память.
В случае, если в дисковод вставлен несистемный диск или диск вообще отсутствует, на экране дисплея появляется соответствующее сообщение.
Вышеописанная процедура запускается автоматически при включении питания компьютера (так называемый «холодный» старт), однако часто используется процедура «перезагрузки» операционной системы («горячий» старт), которая происходит по нажатию на кнопку RESET или одновременного нажатия на клавиши .
После окончания загрузки операционной системы управление передается командному процессору, на экране появляется приглашение системы, например, (С>).
Система готова к работе, т.е. пользователь может начинать вводить команды операционной системы, а командный процессор их расшифровывать и выполнять. В случае использования графического интерфейса выбор действий (команд) производится с помощью мыши. В процессе выполнения команд осуществляется взаимодействие всех модулей операционной системы, причем необходимые в данный момент дополнительные модули могут подгружаться с диска.
Команды операционной системы — это фактически программы на машинном языке, которые размещены в файле командного процессора. Поскольку эти программы размещены непосредственно в оперативной памяти, они могут выполняться сразу (без обращения к диску). Такие команды (программы) называются резидентными.
Однако набор таких программ и их возможности ограничены. Для расширения возможностей пользователя в операционную систему вводятся дополнительные модули (программы), которые реализуют выполнение транзитных команд. После ввода транзитной команды происходит считывание с диска в оперативную память соответствующего файла (обычно одноименного), которому и передается управление.
Существует несколько наиболее распространенных операционных систем, каждая из которых ориентирована на определенное семейство процессоров и, соответственно, компьютеров.
RT-11 (Real time system — Система реального времени). Операционная система RT-11 была разработана в 1972 году фирмой DEC для семейства малых ЭВМ PDP-11. На базе этой системы в СССР были разработаны версии этой системы (РАФОС, ОС ДВК, ФОДОС), которые использовались на мини-ЭВМ СМ-4, персональных ЭВМ ДВК и в школьных компьютерных классах УКНЦ и БК-0011.
СР/М (Control Program for Microcomputer — Управляющая программа для микрокомпьютеров). Одна из первых операционных систем для персональных компьютеров. Она разработана в 1975 году и использовалась на компьютерах «Ямаха» и «Корвет» (процессор Z80), IBM PC/XT (процессор 8086).
MSX-DOS. Операционная система MSX-DOS была разработана для 8-разрядных (процессор Z80) компьютеров стандарта MSX в середине 80-х годов. Использовалась на недорогих компьютерах типа «Ямаха».
MS-DOS (Microsoft Disk Operation System — Дисковая операционная система Microsoft). Операционная система MS-DOS была разработана в начале 80-х годов для работы на компьютерах IBM PC/XT, созданных на базе процессора 8086 фирмы Intel. MS-DOS была наиболее распространенной операционной системой с интерфейсом командной строки, которая устанавливалась на компьютерах, созданных на базе процессоров 80286, 80386, 80486, Pentium. Последней версией была MS-DOS 6.22.
Microsoft Windows (Windows 3.1, Windows 3.11, Windows 95, Windows NT, Windows 98, Windows 2000, Windows Me, Windows XP). Многозадачная операционная система с графическим интерфейсом Windows пришла на смену MS-DOS. В настоящее время более 90% персональных компьютеров реализованы на платформе Intel & Windows, т.е. в них установлен Intel-совместимый процессор (Pentium) и инсталлирована операционная система Windows.
К основным достоинствам современных операционных систем (Windows) следует отнести технологию «подключи и работай», многозадачность и графический интерфейс.
Технология «подключи и работай» (Plug-and-Play) позволяет даже начинающему пользователю подключить к компьютеру новое устройство (например, принтер) и продолжить работу. Windows сама установит необходимый драйвер и выделит ресурсы.
Многозадачность предоставляет пользователю возможность загрузить в оперативную память сразу несколько приложений (например, текстовый редактор Word, электронные таблицы Excel, браузер Internet Explorer и др.). Переход от работы в одном приложении в другое происходит очень быстро и просто, посредством перехода от одного открытого «окна» Windows к другому.
Графический интерфейс реализован с использованием технологии Drag-and-Drop. Это позволяет выполнять практически любые операции с помощью мыши.
OS/2 (Operation System). Операционная система OS/2 была разработана корпорацией IBM в конце 80-х годов для компьютеров PS/2 (Personal system/2). Большого распространения не получила.
Apple System (Операционная система фирмы Apple). Различные версии этой системы устанавливаются на компьютерах фирмы Apple (Macintosh, PowerPC и др.). В этой операционной системе в конце 80-х годов впервые был использован многооконный графический интерфейс и управление с помощью манипулятора типа мышь.
UNIX. На высокопроизводительных компьютерах, которые иногда называют «рабочие станции», широко распространена операционная система UNIX. Начало разработок этой системы относится к 1969 году, и к настоящему времени уже известно более 20 различных версий. В настоящее время достаточно большое количество серверов в Internet работают под управлением этой системы.
2.
Интернет — это всемирная компьютерная сеть, объединяющая многие локальные и корпоративные сети, другими словами, Интернет — это сеть сетей. В настоящее время на десятках миллионов компьютеров, подключенных к Интернет, хранится громадный объем информации (миллионы файлов, документов и т. д.) и сотни миллионов людей пользуются услугами Интернет.
Локальная сеть объединяет компьютеры, установленные в одном помещении (например, школьный компьютерный класс, состоящий из 8—12 компьютеров) или в одном здании (например, в здании школы).
Корпоративная сеть может объединять тысячи и десятки тысяч компьютеров, размещенных в различных странах и городах (например, сеть корпорации Microsoft, MSN).
В каждой такой локальной или корпоративной сети должен быть по крайней мере один компьютер, который называется сервером Интернет и имеет постоянное подключение к Интернет с помощью линии связи с высокой пропускной способностью. В качестве таких «магистральных» линий связи обычно используются оптоволоконные или спутниковые линии с пропускной способностью от 1 до 100 Мбит/с.
Таким образом, основу, «каркас» Интернет составляют более двадцати миллионов серверов (на начало 1998г.), постоянно подключенных к сети. К ним, в свою очередь, могут подключаться с помощью локальных сетей или коммутируемых телефонных линий десятки миллионов компьютеров пользователей Интернет.
Каждый компьютер, подключенный к Интернет, имеет свой уникальный 32-битный IP-адрес. В десятичной записи этот адрес состоит их 4 чисел, разделенных точками, каждое из которых лежит в диапазоне от 0 до 255. Например, IP-адрес сервера компании «Демос» записывается как 194.87.12.13.
Компьютеры легко могут найти друг друга по числовому IP-адресу, однако человеку запомнить числовой адрес нелегко, и для удобства была введена Доменная Система
Имен (DNS — Domain Name System). Эта система ставит в соответствие числовому IP-адресу уникальное имя сервера. Так, сервер компании «Демос» имеет имя www.demos.ru.
Доменные адреса присваиваются в Центре сетевой информации Интернет (InterNIC) и читаются справа налево. Крайняя правая группа букв обозначает домен верхнего уровня (в данном случае «ru»). Домены верхнего уровня бывают двух типов: географические (двухбуквенные — каждой стране соответствует двухбуквенный код) и административные (трехбуквенные). В данном случае домен географический и «ru» обозначает Россию. Интересно, что давно существующие серверы могут относиться к домену «su» (СССР). Обозначение административного домена позволяет определить профиль организации, владельца сервера Интернет.
В таблице приведены некоторые имена доменов верхнего уровня.
Глобальная сеть Интернет привлекает пользователей своими информационными ресурсами и сервисами (услугами).
Электронная почта (E-mail)
Электронная почта является наиболее распространенным сервисом Интернет, так как является исторически первым сервисом компьютерных сетей и не требует обязательного наличия высокоскоростных и качественных линий связи. Любой пользователь Интернет может получить свой «почтовый ящик» на одном из серверов, в котором будут накапливаться передаваемые и получаемые электронные письма.
Электронное письмо кроме текста сообщения обязательно содержит электронный адрес получателя письма. Электронный адрес записывается по определенной форме и состоит из двух частей:
имя_пользователя@имя_сервера
Имя_пользователя имеет произвольный характер и задается самим пользователем, имя_сервера жестко связано с выбором пользователем сервера, на котором он разместил почтовый ящик.
К электронному письму может быть приложен файл любого типа, однако не рекомендуется, чтобы размер пересылаемого файла был слишком большим.
Административные Тип организации Географические Страна
comКоммерческая
са Канадаe
duОбразовательная
deГермания
govПравительственная США
jpЯпония
intМеждународная
ruРоссия
milВоенная США
suбывший СССР
netКомпьютерная сеть
ukАнглия/ Ирландия
orgНекоммерческая
usСША
Для работы с электронной почтой необходимы специальные почтовые программы. Для любой компьютерной платформы существует большое разнообразие почтовых программ. Почтовые программы вошли в состав последних версий браузеров Microsoft Internet Explorer и Netscape Communicator.
Телеконференции
В Интернет существуют десятки тысяч конференций, каждая из которых посвящена обсуждению какой-либо проблемы. Каждой конференции выделяется свой почтовый ящик на серверах Интернет, которые поддерживают работу телеконференций. Пользователи могут посылать свои сообщения на любой из этих серверов, а так как серверы периодически синхронизируются, т.е. обмениваются содержимым почтовых ящиков телеконференций, материалы конференций в полном объеме доступны на любом таком сервере.
Принцип работы в телеконференциях мало чем отличается от принципа работы с электронной почтой. Пользователь может посылать свои сообщения в любую телеконференцию и читать сообщения, посланные другими участниками. Для работы в телеконференциях используют обычно те же самые почтовые программы, что и при работе с электронной почтой.
Файловые архивы
Большое количество серверов (они называются FTP-серверы) Интернет содержат файловые архивы. Это очень удобно для пользователей, так как многие необходимые программы можно получить из Интернет.
Файловые серверы поддерживают многие компании — производители программного обеспечения или аппаратных компонентов компьютера и периферийных устройств.
Программное обеспечение, размещаемое на таких серверах, можно разделить на две большие группы: свободно распространяемое программное обеспечение (freeware) и условно бесплатное программное обеспечение (shareware).
Как это ни странно, многие производители программного обеспечения и компьютерного оборудования заинтересованы в широком бесплатном распространении программного обеспечения. К таким программным средствам относятся следующие:
* новые недоработанные (бета) версии программных продуктов (это позволяет провести их широкое тестирование);
* программные продукты, являющиеся частью принципиально новых технологий (это позволяет завоевать рынок);
* дополнения к ранее выпущенным программам, исправляющие найденные ошибки или расширяющие возможности;
* устаревшие версии программ;
* драйверы к новым устройствам или улучшенные драйверы к уже существующим.
Условно бесплатными обычно бывают:
* программы с ограниченным сроком действия (после истечения указанного срока программа перестает работать, если за нее не произведена оплата);
* программы с ограниченными функциональными возможностями (в случае оплаты пользователю сообщается код, включающий все функции);
* нормально работающие программы, которые размещают вновь образованные фирмы или отдельные программисты в целях рекламы и с предложением произвести добровольную оплату (обычно в небольшом размере).
Для работы с файловыми серверами можно использовать как универсальные браузеры, так и специализированные программы FTP-клиенты (например, CuteFTP).
Для поиска необходимых файлов можно использовать систему серверов Archie. Эти серверы хранят постоянно обновляемую информацию о содержимом файловых серверов.
«Всемирная паутина» (World Wide Web, WWW, 3W)
Бурное развитие сети Интернет, которое началось с начала 90-х годов, во многом обусловлено появлением новой технологии WWW. В основу этой технологии положена технология гипертекста, распространенная на все компьютеры, подключенные к сети Интернет.
При использовании технологии гипертекста текст структурируется и в нем выделяются слова-ссылки. При активизации ссылки (например, с помощью мыши) происходит переход на заданный в ссылке фрагмент текста или на другой документ. Так, мы могли бы наш текст преобразовать в гипертекст, выделив слова «технология гипертекста» в первом абзаце и зафиксировав, что при активизации этой ссылки произойдет переход на начало второго абзаца.
Технология WWW позволяет осуществлять переходы не только внутри исходного документа, но и на любой документ, находящийся на данном компьютере и, что самое главное, на любой документ любого компьютера, подключенного в данный момент к Интернету. Документы, реализованные по технологии WWW, называются Web-страницами.
Структурирование документов и создание Web-страниц осуществляется с помощью языка HTML (Hyper Text Markup Language). Последняя версия текстового редактора Word (Word 97) позволяет сохранять документы в формате Web-страниц. Просмотр Web-страниц осуществляется с помощью специальных программ просмотра — браузеров. В настоящее время наиболее распространенными браузерами являются Internet Explorer и Netscape Navigator.
Если компьютер подключен к Интернет, то можно загрузить один из браузеров и отправиться в путешествие по «Всемирной паутине». Вначале необходимо загрузить Web-страницу с одного из серверов Интернет, затем найти ссылку и активизировать ее. В результате будет загружена Web-страница с другого сервера Интернет, который при этом может находиться в другой части света. В свою очередь можно активизировать ссылку на данной Web-странице, загрузится следующая Web-страница и т. д.
Сеть Интернет растет очень быстрыми темпами, и найти нужную информацию среди десятков миллионов документов становится все сложнее. Для поиска информации используются специальные поисковые серверы, которые содержат точную и постоянно обновляемую информацию о содержимом десятков миллионов Web-страниц.
Билет № 6
1. Файлы (тип, имя, местоположение). Работа с файлами.
2. Основные подходы к программированию: процедурный (алгоритмический), логический, объектно-ориентированный.
3. Решение задачи на построение графика простой функции.
1.
Работа на персональном компьютере в среде операционной системы фактически сводится к работе с файлами. В операционной системе Windows 95 понятие файл часто заменяется понятием документ. Файлы создаются, записываются на диск, хранятся и считываются с него, распечатываются на принтере, пересылаются по информационным сетям и т. д.
Строгое определение понятию файла дать достаточно сложно. В первом приближении можно сказать, что файл — это определенное количество информации, хранящееся на диске и имеющее имя.
Рассмотрим это определение более подробно.
Информация на диске записана на концентрических дорожках, которые разбиты на секторы. Сектор является минимальным адресуемым элементом информации на диске. На гибком диске объем одного сектора составляет 512 байт, на жестких дисках его величина больше.
Файл хранится на диске. Следовательно, минимальный объем файла равен одному сектору. Максимальный объем файла равен, естественно, информационному объему диска. Объем реальных файлов обычно не превышает нескольких мегабайт.
Файл имеет имя. Например, полное имя файла proba.txt состоит из имени файла (proba) и типа файла, его расширения (txt). В операционной системе MS-DOS имя файла может содержать до 8 букв латинского алфавита, цифр и некоторых специальных символов. Операционная система Windows 95 поддерживает также длинные имена файлов (документов), которые могут содержать до 255 символов, причем разрешается использовать буквы русского алфавита. Имя файлу дается его создателем (пользователем, программистом).
Тип файла необходим операционной системе компьютера для того, чтобы определить, с помощью какой прикладной программы этот файл был создан и, соответственно, какую программу необходимо вызвать для его обработки. Тип файла задается прикладной программой, в которой он создается, с помощью трех символов, отделенных от имени точкой. Так, в Windows файлы, созданные текстовым редактором Word, имеют расширение DOC, Web-страницы Internet имеют расширение НТМ и т. д.
Современные жесткие диски имеют информационную емкость в 1 Гб и более, на них могут храниться тысячи и десятки тысяч файлов. Каждый диск имеет логическое имя (А, В — гибкие диски, С, D и т. д. — жесткие диски, оптические диски и т. п.). Для удобства поиска файлы хранятся в иерархической структуре каталогов, которая имеет «древовидную» структуру. Из корневого каталога можно перейти в каталоги 1-го уровня, в свою очередь, из них в каталоги 2-го уровня и т. д. В каталогах всех уровней могут храниться файлы.
Пусть на жестком диске С в корневом каталоге имеются два каталога 1-го уровня (GAMES, TEXT) и один каталог 2-го уровня (CHESS). Как найти имеющиеся файлы (chess. exe, proba. txt)? Для этого необходимо указать путь к файлу. В путь файла входит имя диска и последовательность имен каталогов, т.е. пути к вышеперечисленным файлам соответственно будут:
C: \GAMES\CHESS\chess.exe
C: \TEXT\proba.txt
С: \GAMESCHESSchess. exeTEXTproba. txt
В операционной системе MS-DOS операции с файлами (копирование, удаление, переименование, печать и т. д.) можно производить непосредственно из командной строки с помощью команд (сору, delete, rename, print). Однако это неудобно для пользователя, так как требует запоминания форматов команд операционной системы. Для работы с файлами обычно используется программная оболочка Norton Commander, которая представляет пользователю удобные возможности поиска файлов и операций над ними с помощью функциональных клавиш и мыши.
В операционной системе Windows операции с файлами можно производить с помощью мыши с использованием технологии «возьми и перенеси».
2.
Основные подходы к программированию можно различать как по соответствию, определенному математическому формализму, так и по стилю.
Так, формализму рекурсивных функций соответствует функциональное программирование. Реализацией этого подхода являются языки FP, Haskell.
Формализму исчисления высказываний соответствует подход, называемый логическим программированием, который состоит в следующем. Имеется база знаний задачи — набор логических аксиом («факты») и правил вывода («правила»); запросы к базе знаний формулируются в виде целевых утверждений («целей»). База знаний вкупе с целевым утверждением называется логической программой. Выполнение программы состоит в доказательстве целевого утверждения для данной базы знаний.
В рамках логического программирования возможны две точки зрения: описательная и декларативная. Первая предусматривает описание того, как что-либо сделать. Эта точка зрения нашла отражение в языке Лисп. Вторая предусматривает описание того, что нужно сделать, т.е. «целей». Данная точка зрения представлена различными реализациями языка Пролог.
Объектно-ориентированное программирование (ООП) часто называют новой парадигмой программирования. Вот как выглядят основные принципы ООП в изложении Алана Кэя, одного из авторов объектно-ориентированной системы Смолток:
1. Все является объектом.
2. Объекты взаимодействуют друг с другом посредством посылки сообщений. Сообщение — это запрос на выполнение действия, дополненный набором аргументов, которые необходимы для выполнения действия. Все вычисления выполняются путем взаимодействия между объектами.
3. Каждый объект имеет независимую память, в которой размещены другие объекты.
4. Каждый объект является представителем класса, который выражает общие свойства объектов, например целых чисел или массивов.
5. В классе задается поведение объекта. Все объекты одного класса умеют выполнять одни и те же действия.
6. Классы организованы в единую иерархическую древовидную структуру с общим корнем. Память и поведение объектов некоторого класса наследуются объектами класса, расположенного ниже в иерархическом дереве.
Примерами объектно-ориентированных языков являются Смолток (Smalltalk), C++, Actor, Object Pascal, Java.
Билет № 7
1. Информационные процессы в природе, обществе, технике. Информационная деятельностьчеловека.
2. Структура программного обеспечения компьютера и назначение его составных компонентов.
3. Решение задачи на обработку символьного массива.
1.
В современном мире роль информатики, средств обработки, передачи, накопления информации неизмеримо возросла. Средства информатики и вычислительной техники сейчас во многом определяют научно-технический потенциал страны, уровень развития ее народного хозяйства, образ жизни и деятельности человека.
Для целенаправленного использования информации ее необходимо собирать, преобразовывать, передавать, накапливать и систематизировать. Все эти процессы, связанные с определенными операциями над информацией, будем называть информационными процессами.
Получение и преобразование информации является необходимым условием жизнедеятельности любого организма. Даже простейшие одноклеточные организмы постоянно воспринимают и используют информацию, например, о температуре и химическом составе среды для выбора наиболее благоприятных условий существования. Живые существа способны не только воспринимать информацию из окружающей среды с помощью органов чувств, но и обмениваться ею между собой.
Человек также воспринимает информацию с помощью органов чувств, а для обмена информацией между людьми используются языки. За время развития человеческого общества таких языков возникло очень много. Прежде всего, это родные языки (русский, татарский, английский и др.), на которых говорят многочисленные народы мира. Роль языка для человечества исключительно велика. Без него, без обмена информацией между людьми было бы невозможным возникновение и развитие общества.
Информационные процессы характерны не только для живой природы, человека, общества. Человечеством созданы технические устройства — автоматы, работа которых также связана с процессами получения, передачи и хранения информации. Например, автоматическое устройство, называемое термостатом, воспринимает информацию о температуре помещения и в зависимости от заданного человеком температурного режима включает или отключает отопительные приборы.
Деятельность человека, связанную с процессами получения, преобразования, накопления и передачи информации, называют информационной деятельностью.
Тысячелетиями предметами труда людей были материальные объекты. Все орудия труда от каменного топора до первой паровой машины, электромотора или токарного станка были связаны с обработкой вещества, использованием и преобразованием энергии. Вместе с тем человечеству пришлось решать задачи управления, задачи накопления, обработки и передачи информации, опыта, знания, возникают группы людей, чья профессия связана исключительно с информационной деятельностью. В древности это были, например, военачальники, жрецы, летописцы, затем — ученые и т. д.
Однако число людей, которые могли воспользоваться информацией из письменных источников, было ничтожно мало. Во-первых, грамотность была привилегией крайне ограниченного круга лиц и, во-вторых, древние рукописи создавались в единичных (иногда единственных) экземплярах.
Новой эрой в развитии обмена информацией стало изобретение книгопечатания. Благодаря печатному станку, созданному И. Гутенбергом в 1440 году, знания, информация стали широко тиражируемыми, доступными многим людям. Это послужило мощным стимулом для увеличения грамотности населения, развития образования, науки, производства.
По мере развития общества постоянно расширялся круг людей, чья профессиональная деятельность была связана с обработкой и накоплением информации. Постоянно рос и объем человеческих знаний, опыта, а вместе с ним количество книг, рукописей и других письменных документов. Появилась необходимость создания специальных хранилищ этих документов — библиотек, архивов. Информацию, содержащуюся в книгах и других документах, необходимо было не просто хранить, а упорядочивать, систематизировать. Так возникли библиотечные классификаторы, предметные и алфавитные каталоги и другие средства систематизации книг и документов, появились профессии библиотекаря, архивариуса.
В результате научно-технического прогресса человечество создавало все новые средства и способы сбора, хранения, передачи информации. Но важнейшее в информационных процессах — обработка, целенаправленное преобразование информации осуществлялось до недавнего времени исключительно человеком.
Вместе с тем постоянное совершенствование техники, производства привело к резкому возрастанию объема информации, с которой приходится оперировать человеку в процессе его профессиональной деятельности.
Развитие науки, образования обусловило быстрый рост объема информации, знаний человека. Если в начале прошлого века общая сумма человеческих знаний удваивалась приблизительно каждые пятьдесят лет, то в последующие годы — каждые пять лет.
Выходом из создавшейся ситуации стало создание компьютеров, которые во много раз ускорили и автоматизировали процесс обработки информации.
Первая электронная вычислительная машина ЭНИАК была разработана в США в 1946 году. В нашей стране первая ЭВМ была создана в 1951 году под руководством академика В. А. Лебедева.
В настоящее время компьютеры используются для обработки не только числовой, но и других видов информации. Благодаря этому информатика и вычислительная техника прочно вошли в жизнь современного человека, широко применяются в производстве, проектно-конструкторских работах, бизнесе и многих других отраслях.
Компьютеры в производстве используются на всех этапах: от конструирования отдельных деталей изделия, его дизайна до сборки и продажи. Система автоматизированного производства (САПР) позволяет создавать чертежи, сразу получая общий вид объекта, управлять станками по изготовлению деталей. Гибкая производственная система (ГПС) позволяет быстро реагировать на изменение рыночной ситуации, оперативно расширять или сворачивать производство изделия или заменять его другим. Легкость перевода конвейера на выпуск новой продукции дает возможность производить множество различных моделей изделия. Компьютеры позволяют быстро обрабатывать информацию от различных датчиков, в том числе от автоматизированной охраны, от датчиков температуры для регулирования расходов энергии на отопление, от банкоматов, регистрирующих расход денег клиентами, от сложной системы томографа, позволяющей «увидеть» внутреннее строение органов человека и правильно поставить диагноз.
Компьютер находится на рабочем столе специалиста любой профессии. Он позволяет связаться по специальной компьютерной почте с любой точкой земного шара, подсоединиться к фондам крупных библиотек не выходя из дома, использовать мощные информационные системы — энциклопедии, изучать новые науки и приобретать различные навыки с помощью обучающих программ и тренажеров. Модельеру он помогает разрабатывать выкройки, издателю компоновать текст и иллюстрации, художнику — создавать новые картины, а композитору — музыку. Дорогостоящий эксперимент может* быть полностью просчитан и имитирован на компьютере.
Разработка способов и методов представления информации, технологии решения задач с использованием компьютеров, стала важным аспектом деятельности людей многих профессий.
2.
Программное обеспечение компьютера можно разделить на операционную систему и прикладное программное обеспечение.
Операционная система обеспечивает функционирование и взаимосвязь всех компонентов компьютера и предоставляет пользователю доступ к его аппаратным возможностям. Внутренняя структура современных операционных систем достаточно сложная (подробнее см. билет № 5, вопрос 1).
Прикладное программное обеспечение можно разделить на две группы программ: средства разработки и приложения.
Средства разработки — это инструменты программиста. Традиционными средствами разработки являются алгоритмические (процедурные) языки программирования. Основой систем программирования является транслятор. Трансляторы языков программирования, т.е. программы, обеспечивающие перевод исходного текста программы на машинный язык (объектный код), бывают двух типов: интерпретаторы и компиляторы.
Интерпретатор — это транслятор, который обеспечивает последовательный синхронный «перевод» и выполнение каждой строки программы, причем при каждом запуске программы на выполнение вся процедура полностью повторяется. Достоинством интерпретатора является удобство отладки программы в интерактивном режиме, а недостатком — малая скорость работы.
Компилятор — это транслятор, который переводит текст программы целиком на машинный язык, в результате чего получается исполняемая программа. Получаемый загрузочный модуль обычно выполняется быстрее интерпретируемой программы.
Современные системы объектно-ориентированного визуального программирования позволяют сделать процесс программирования более наглядным за счет использования графического интерфейса.
Системы логического программирования реализуют декларативный способ представления знаний, когда программист лишь формулирует задачу с помощью фактов и правил. Система логического программирования с помощью механизма логического вывода получает все возможные следствия, т.е. ищет решение задачи.
Системы управления базами данных (СУБД) позволяют создавать, редактировать и модифицировать базы данных.
Системы компьютерной графики позволяют создавать и редактировать изображения, а также создавать анимацию.
Системы автоматизированного проектирования (САПР) позволяют разрабатывать проекты и создавать чертежи и схемы различных объектов (машин и механизмов, зданий, электронных схем и т. д.).
Инструментальные средства создания Web-страниц на основе HTML (Hyper Text Markup Language) используются большим количеством профессионалов (Web-мастеров) и просто пользователей сети для разработки Web-страниц.
Приложения — это программы для пользователя. Наибольшее количество пользователей работает с офисными приложениями, к которым относятся текстовый редактор, электронные таблицы, графический редактор и системы подготовки презентаций. Квалифицированный пользователь может также создавать простые базы данных и работать с ними.
Для работы во всемирной компьютерной сети Интернет используются специальные сетевые приложения, такие, как браузеры, позволяющие «путешествовать» по «Всемирной паутине», почтовые программы, необходимые для работы с почтой и доступа к телеконференциям, и некоторые другие.
Важнейшей частью прикладного программного обеспечения являются различные утилиты (антивирусные программы, архиваторы и т. д.). Все большее количество пользователей использует обучающие программы для самообразования или в учебном процессе. Прежде всего, это программы обучения иностранным языкам, истории, географии и т. д.
Большую пользу приносят различные мультимедиа-энциклопедии и справочники на CD-ROM, которые содержат огромный объем информации и средства быстрого поиска.
Программы распознавания текста позволяют преобразовывать отсканированные страницы текста из графического формата в текстовый формат.
Программы-переводчики позволяют производить автоматический перевод текстов с русского на иностранные языки или, наоборот, с иностранных языков на русский.
Компьютерные игры бывают самых различных типов (логические, стратегические и т. д.).
Структура программного обеспечения компьютера (в скобках приведены примеры широко распространенных программ соответствующих типов).
1. Операционная система (Windows)
2. Прикладное программное обеспечение
2.1. Средства разработки
2.1.1. Системы процедурного (алгоритмического) программирования, трансляторы языков программирования
2.1.1.1. Интерпретаторы (QBasic)
2.1.1.2. Трансляторы (Turbo Pascal)
2.1.2. Системы объектно-ориентированного визуального программирования (VisualBasic, Delphi)
2.1.3. Системы логического (декларативного) программирования (Пролог)
2.1.4. Системы управления базами данных (dBase, Access)
2.1.5. Системы компьютерной графики (CorelDraw, Animator Pro)
2.1.6. Системы автоматизированного проектирования (AutoCad, Компас)
2.1.7. Средства создания Web-страниц (FrontPage, Macromedia Dreamweaver)
2.2. Приложения
2.2.1. Офисные приложения (Microsoft Office, Works)
2.2.1.1. Текстовый редактор (Word)
2.2.1.2. Электронные таблицы (Excel)
2.2.1.3. Графический редактор (Photo Editor, Photoshop)
2.2.1.4. Мультимедиа-презентации (PowerPoint, Flash)
2.2.1.5. Базы данных (Works)
2.2.2. Сетевые приложения (Internet Explorer, Netscape Communicator)
2.2.3. Утилиты
2.2.3.1. Антивирусные программы (Dr. Web)
2.2.3.2. Архиваторы (Arj, Winzip, Winrar)
2.2.4. Обучающие программы
2.2.5. Энциклопедии, справочники
2.2.6. Программы распознавания текста (FineReader)
2.2.7. Программы — переводчики с иностранных языков (Stylus)
2.2.8. Игры