--PAGE_BREAK--3. Использование утилит проверки целостности информации, которые сохраняют данные о файлах и позволяют зафиксировать их несанкционированные изменения. »
4. Отказ в использовании компьютера сомнительными пользователями.
Загрузочными называются вирусы, которые инициализируются при старте компьютера. Они располагаются в служебных областях (загрузочных секторах) магнитных дисков, как гибких, так и жестких, где помещается программа загрузки операционной системы. Поскольку программа загрузки имеет малый объем, вирус не может функционировать в ее составе, т.е. все загрузочные вирусы являются резидентными. Они, как правило, состоят из двух частей: головы и хвоста, который
может быть пустым. Последовательность действий вируса по внедрению в загрузочный сектор такова. Сначала вирус выделяет на диске область и делает ее недоступной для операционной системы. Затем копирует в эту область свой хвост и содержимое загрузочного сектора. После этого вирус замещает своей головой начальную программу загрузки и организует передачу управления на свой хвост и далее на начальную программу загрузки. Эти действия производятся независимо от того, системная дискета или нет. Достаточно обратиться к дискете в процессе загрузки. Как и другие резидентные вирусы, загрузочные вирусы могут быть изготовлены с помощью стеле-технологии. Профилактика заражения загрузочным вирусом такова.
1. Если нет нужды каждый день загружать систему с дискеты, поставьте в BIOS Setup порядок загрузки «сначала — С:, потом — А:». Это надежно защитит компьютер от загрузочных вирусов.
2. Физически блокируйте запись на системные дискеты.
Макровирусы являются программами на языках (макроязыках), встроенных в некоторые системы обработки данных (текстовые редакторы, электронные таблицы и т.д.), например, Visual Basic for Applications. Наибольшее распространение получили макровирусы для Microsoft Office. Для своего размножения такие вирусы используют возможности получения управления макропрограммой без вмешательства пользователя (автоматические или стандартные макросы). Вирусы получают управление при открытии или закрытии зараженного файла, перехватывают стандартные файловые функции и затем заражают файлы, к которым каким-либо образом идет обращение. Можно сказать, что большинство макровирусов являются резидентными: они активны не только в момент открытия/закрытия файла, но до тех пор, пока активен сам редактор. Признаком того, что в приложение проник макровирус, является увеличение размеров документов и исчезновение пункта ' Макрос в меню «Сервис». Можно предложить следующие профилактические действия:
1. Использование утилит проверки целостности информации, которые сохраняют данные о файлах и позволяют зафиксировать их несанкционированные изменения.
2. Крайне осторожное отношение к файлам, полученным из сети или от знакомых, т.е., прежде чем открыть соответствующий файл, нужно проверить его какой-нибудь антивирусной программой.
3. Хранение дистрибутивных копий офисных программ для их переустановки в случае подозрения заражения.
К сетевым относятся вирусы, которые для своего распространения активно используют протоколы и возможности локальных и глобальных сетей. Основным принципом работы сетевого вируса является возможность самостоятельно передать свой код на уда-
12
ленный сервер или рабочую станцию. «Полноценные» сетевые вирусы при этом обладают еще и возможностью запустить на выполнение свой код на удаленном компьютере или по крайней мере «подтолкнуть» пользователя к запуску зараженного файла.
Сетевые вирусы прошлого распространялись в компьютерной сети и, как правило, так же, как и компаньон-вирусы, не изменяли файлы или сектора на дисках. Они проникали в память компьютера из компьютерной сети, вычисляли сетевые адреса других компьютеров и рассылали по этим адресам свои копии. Эти вирусы иногда также создавали рабочие файлы на дисках системы, но могли вообще не обращаться к ресурсам компьютера (за исключением оперативной памяти).
Современные сетевые вирусы используют электронную почту как для несанкционированного распространения, так и для заражения файлов рабочих станций. Поскольку среда обитания таких вирусов — компьютерная сеть, их главная цель — нарушение работы сети. Самый простой способ, который используется большинством вирусов, это увеличение трафика до размеров, парализующих функционирование сети. Вирусная идея последнее время используется также для распространения рекламы, которая получила название «спам». Профилактика заражения сетевым вирусом состоит в максимальном сдерживании собственного любопытства. Не следует пытаться прочесть письмо неизвестного вам респондента, как бы ни была привлекательна его тема.
Желательно изложить
Привести примеры вирусов разных типов.
3. Работа с папками и файлами (переименование, копирование, удаление, поиск, сохранение на различных носителях)
Предлагается следующий набор действий, для исполнения которых нужно воспользоваться различными приемами работы с объектами файловой системы Windows.
1. Создать на Рабочем столе папку с именем «Задание», открыть ее и развернуть на весь экран.
2. Создать папку «Упражнение», открыть ее и отрегулировать размеры так, чтобы ее окно занимало половину окна папки «Задание».
3. Создать в папке «Упражнение» текстовый документ с именем «Текст».
4. Скопировать его в папку «Задание» и переименовать в «Текст!».
5. Переместить документ «Текст» в папку «Упражнение».
6. Скопировать оба документа одновременно в папку
Задание.
7. Удалить документы из папки «Упражнение» и закрыть ее.
8. Переместить документы из папки «Задание» в папку «Упражнение», не открывая ее.
9. Найти все файлы, название которых начинается с сочетания «Тек».
10. Сохранить их на гибком диске.
11. Закрыть папку «Задание» и удалить ее с Рабочего стола.
Указание. Действия 1, 2, 3, 4, 10 выполняются с помощью меню объекта; действия 5, 6, 7 выполняются с помощью системного меню папки; действия 8 и 11 выполняются с помощью технологии Drug and Drop.
Примечание 1. Ученик должен понимать, что в процессе выполнения предлагаемых действий происходит сохранение файлов не только на гибком, но и на жестком диске.
Примечание 2. Для повышения оценки можно предложить выполнить некоторые из указанных действий с помощью какого-нибудь менеджера файлов (Проводник, Far, Norton Commander).
БИЛЕТ № 22
1. Локальные и глобальные компьютерные сети. | Адресация в сетях. Аппаратные и программные средства организации компьютерных сетей.
2. Представление и кодирование информации с помощью знаковых систем. Алфавитный подход к определению количества информации.
3. Практическое задание. Работа с дискетой (форматирование, создание системной дискеты) в среде
I операционной системы.
1. Локальные и глобальные компьютерные сети. Адресация в сетях. Аппаратные и программные средства организации компьютерных сетей
Базовые понятия
Компьютерная сеть, локальная компьютерная сеть, глобальная компьютерная сеть, сервер, клиент (рабочая станция), сетевой адаптер, сетевая операционная система, топология локальной компьютерной сети, протокол обмена в глобальной компьютерной сети, программа-сервер, программа-клиент, способ доступа к ресурсам глобальной сети.
Обязательно изложить
Для передачи информации с помощью технических средств используются кодирующее устройство, предназначенное для преобразования исходного сообщения источника информации к виду, удобному для передачи, и декодирующее устройство, необходимое для преобразования кодированною сообщения в исходное.
При передаче информации необходимо учитывать тот факт, что информация при этом может теряться или искажаться, т.е. присутствуют помехи. Для нейтрализации помех при передаче информации зачастую
используют помехоустойчивый избыточный код, который позволяет восстановить исходную информацию даже в случае некоторого искажения.
Основными устройствами для быстрой передачи информации на большие расстояния в настоящее время являются телеграф, радио, телефон, телевизионный передатчик, телекоммуникационные сети на базе вычислительных систем.
Под компьютерной сетью понимают систему распределенных на территории аппаратных, программных и информационных ресурсов (средств ввода/вывода, хранения и обработки информации), связанных между собой каналами передачи данных. При этом обеспечивается совместный доступ пользователей к информации (базам данных, документам и т.д.) и ресурсам (жесткие диски, принтеры, накопители CD-ROM, модемы, выход в глобальную сеть и т.д.).
По территориальному признаку сети делят на локальные, региональные и глобальные. Локальные сети (LAN, Local Area Network'} охватывают ресурсы, расположенные друг от друга не более чем на несколько километров. Региональные сети охватывают город, район, область, небольшую республику. Глобальные сети охватывают всю страну, несколько стран и целые континенты (например, сеть Интернет). Иногда выделяют корпоративные сети, где важно защитить информацию от несанкционированного доступа.
Основными свойствами локальной сети являются:
• высокая скорость передачи, большая пропускная способность;
• низкий уровень ошибок передачи;
• эффективный, быстродействующий механизм управления обменом;
• ограниченное, точно определенное число компьютеров, подключаемых к сети.
Очень важным является вопрос топологии локальной сети. Под топологией компьютерной сети обычно понимают физическое расположение компьютеров сети относительно друг друга и способ соединения их линиями. Топология определяет требования к оборудованию, тип используемого кабеля, методы управления обменом, надежность работы, возможность расширения сети.
Каждый компьютер, который функционирует в локальной сети, должен иметь сетевой адаптер (сетевую карту). Функцией сетевого адаптера является передача и прием сигналов, распространяемых по кабелям связи. Кроме того, компьютер должен быть оснащен сетевой операционной системой.
При конструировании сетей используют следующие виды кабелей:
• неэкранированная витая пара. Максимальное расстояние, на котором могут быть расположены компьютеры, соединенные этим кабелем, достигает 300 м. Скорость передачи информации — от 10 до 155 Мбит/с;
• экранированная витая пара. Скорость передачи информации — 16 Мбит/с на расстояние до 90 м. Обладает лучшей по сравнению с неэкранированной витой парой помехозащищенностью;
• коаксиальный кабель. Позволяет передавать информацию на расстояние до 2000 м со скоростью 2—44 Мбит/с;
• оптоволоконный кабель. Позволяет передавать информацию на расстояние до 10 000 м со скоростью до 10 Гбит/с.
В отличие от локальных сетей в глобальных сетях нет какого-либо единого центра управления. Основу сети составляют десятки и сотни тысяч компьютеров, соединенных теми или иными каналами связи.
Протокол обмена — это набор правил (соглашение, стандарт) передачи информации в сети. Протоколы условно делятся на базовые (более низкого уровня), отвечающие за передачу информации любого типа, и прикладные (более высокого уровня), отвечающие за функционирование специализированных служб.
Программное обеспечение можно разделить на два класса:
• программы-серверы, которые размещаются на узле сети, обслуживающем компьютер пользователя;
• программы-клиенты, размещенные на компьютере пользователя и пользующиеся услугами сервера. Подключение к глобальной сети может осуществляться одним из способов:
• удаленный доступ по коммутируемой телефонной линии. В этом случае в распоряжении пользователя должен быть модем, который преобразует подаваемую на него компьютером цифровую информацию в аналоговый сигнал {модуляция), и телефон. Аналоговый сигнал передается по телефонной линии, а модем на принимающей стороне совершает обратное преобразование информации (демодуляцию}. Скорость, с которой будет производиться обмен информацией, определяется прежде всего скоростью передачи модема пользователя и качеством телефонной линии. Для предупреждения искажения информации в процессе ее передачи и приема модем обычно работает в режиме коррекции ошибок, когда информация передается маленькими порциями, вычисляется контрольная сумма, которая также передается. Если отмечается искажение какой-то порции информации, ее передача повторяется;
• прямой доступ по выделенному каналу. Данный способ дороже, чаще его используют те или иные организации. В качестве выделенных каналов могут использоваться коаксиальные и оптоволоконные кабели, радиорелейные линии, спутниковая связь.
Желательно изложить
Базовые топологии локальной сети: шина, звезда, кольцо. Достоинства и недостатки топологий.
Ссылка на материалы вопроса
1. «Информатика» № 19, с. 3 — 5, № 20, с. 3 — 7/ 2002.
2. Новиков Ю.В., Кондратенко СВ. Локальные компьютерные сети: архитектура, алгоритмы, проектирование. М.: ЭКОМ, 2001, 312 с.
2. Представление и кодирование информации с помощью знаковых систем. Алфавитный подход к определению количества информации
Базовые понятия
Знак, знаковая система, кодирование информации, количество информации, бит, алфавитный подход, вероятность.
Обязательно изложить
Под знаковой системой понимается набор знаков — одного типа или же нескольких типов вместе с системой правил, регулирующих сочетаемость знаков при создании сообщения. Например, устная речь — система, знаками которой являются фонемы. Их чередование и группировка по определенным правилам создают членораздельную речь, т.е. сообщение, содержащее определенную информацию. В музыке для создания сообщений также используются фонемы, но с другими правилами чередования и композиции. В графических сообщениях знаками являются графические примитивы, сочетаемость которых подчиняется строгим правилам. Навязывая определенные правила сочетания, из примитивов можно создать знаки, позволяющие создавать письменные сообщения. В зависимости от выбранной совокупности правил их композиции можно получить письменную речь, язык программирования, систему счисления и т.д. Таким образом, числовая, символьная, графическая и звуковая информация представляется с помощью знаковых систем. Для обонятельной и осязательной информации пока не определены система знаков и правила композиции, однако мы убеждены, что таковые существуют.
С этих позиций кодирование информации можно рассматривать как запись сообщения в другой знаковой системе, или в той же знаковой системе, но с измененными правилами композиции, или в другой знаковой системе с измененными правилами композиции. Пример первой ситуации — кодирование числовой информации путем перевода числа из десятичной системы счисления в двоичную. Пример второй ситуации — шифрование, когда устанавливаются правила замены одних символов другими, что и приводит к новым правилам композиции при записи сообщений. Третий случай реализуется при кодировании непрерывных видов информации: графической и звуковой, — когда дискретизация (задание кодировочной
таблицы), по существу, создает новые правила композиции двоичных разрядов, запрещая последовательности, не представленные в кодировочной таблице.
Многообразие знаковых систем, используемых для записи и кодирования сообщений, приводит к невозможности использовать для измерения количества информации бит, т.е. количество информации, содержащееся в сообщении, уменьшающем неопределенность наших знаний в два раза. В силу специфичности информации схемы определения количества информации, связанные с ее содержательной стороной, оказываются не универсальными.
Универсальным оказывается алфавитный подход к измерению количества информации. В этом подходе сообщение, представленное в какой-либо знаковой системе, рассматривается как совокупность сообщений о том, что заданная позиция в последовательности знаков занята равновероятно любым знаком системы. Угадывание этого знака производится по алгоритму последовательного деления количества знаков N, образующих систему, пополам. Поскольку, выясняя, в какой половине находится угадываемый знак, мы получаем информацию в один бит (по определению), количество информации, содержащееся в одном символе (информационный вес — г), определяется решением показательного уравнения (Р.Хартли):
продолжение
--PAGE_BREAK--Полная информация, содержащаяся в сообщении, определяется по формуле:
Количество информации = К • г,
где К — количество знаков в сообщении. Например, для двоичной знаковой системы N = 2, т.е. 1=1 бит, так что количество информации совпадает с числом двоичных знаков. В случае системы знаков, которая используется для изображения блок-схем, N = 8, т.е. г = 3, так что блок-схема, состоящая из 5 элементов (начало, ввод информации, обработка, вывод информации, конец), содержит информацию 15 бит. В случае знаковой системы, основанной на таблице ASCII, N = 256, z — 8 бит (1 байт), так что сообщение, состоящее из 11 символов (слово — информатика), содержит 11 байт информации.
В реальных сообщениях, как правило, предположение о том, что в заданной позиции с одинаковой вероятностью может находиться любой знак системы, не выполняется. Для того чтобы обобщить алфавитный подход, представим формулу Хартли иначе. Заметим, что вероятность р обнаружения заданного знака в заданной позиции в предположении равной вероятности равна р — 1/N. Вспоминая определение логарифма, запишем формулу Хартли в виде:
i — log2N — — log.jp.
Количество информации в сообщении, состоящем из К знаков, равно (— К log^p).
Если вероятность появления знака номера п равна рп и в сообщении он встречается Кп раз, естественно предположить, что количество информации в сообщении, связанное с этим знаком, равно (— K^logy^), a полное количество информации в сообщении должно определяться равенством (К.Шеннон):
Количество информации = S(—
— где суммирование проводится по номерам знаков, встречающихся в сообщении.
Ссылка на материалы вопроса
1. Семакин И., Залогова А., Русаков С., Шестакова А. Информатика. Базовый курс. М.: Лаборатория Базовых Знаний, 2001, 378 с.
2. Бешенков С., Ракитина Е. Информатика. Систематический курс. Учебник для 10-го класса. М.: Лаборатория Базовых Знаний, 2001, 432 с.
3. Практическое задание. Работа с дискетой (форматирование, создание системной дискеты) в среде операционной системы
Отметим, что дискета является устаревшим носителем информации, поскольку позволяет сохранить лишь 1,44 Мб информации, в то время как большинство программ создают файлы больших объемов. К тому же дискеты сейчас продаются уже отформатированными. Еще одним очевидным недостатком современных дискет является их низкое качество.
Однако в отдельных случаях дискеты могут быть полезны, в частности, при восстановлении операционной системы, если она по каким-либо причинам не функционирует. Этому и посвящено задание:
1) выполнить форматирование дискеты;
2) выполнить форматирование дискеты с копированием на нее основных файлов операционной системы (создать загрузочную дискету).
Рассмотрим решение задач на примере ОС Windows.
В Windows можно действовать следующим образом: раскрыть папку Мой компьютер, выбрать диск А, вызвать контекстное меню (щелчком правой кнопкой мыши по обозначению диска А) и выбрать подпункт Форматировать.
Ирана gus
изданное
Мой компьютер
Диск 3.5 (А:)
Диск 3,5
Емкость: 1,38 МБ Ш Занято: 0 байт П Свободно: 1,38 МБ
___£1)Панель у;
Si Принтерь ^ Ftppub He i§ Users на1' ggTmpHa'S: Э Student н SDosappH ^Win32apf dra([
1ение |ение |ение )ение (ение |ение
В появившемся диалоговом окне необходимо задать все параметры (в частности, в случае необходимости указать, что на дискету необходимо скопировать системные файлы) и нажать кнопку Начать. Типичный вид диалогового окна приведен ниже:
Форматирование: Диск 3,5 [А:]
JShestakovi
Готовимся к экзамену по информатике
Е.А. Еремин, В.И. Чернатынский, А.П. Шестаков,
г. Пермь
Окончание. См. № 10-19/2004
БИЛЕТ № 23
1. Глобальная сеть Интернет и ее информационные сервисы (электронная почта, Всемирная. паутина, файловые архивы и пр.). Поиск информании. 2. Логические переменные и функции, их преобразование. Таблицы истинности. 3. Задача. Разработка алгоритма (программы) на | | обработку данных строкового типа.
1. Глобальная сеть Интернет и ее информационные сервисы (электронная почта. Всемирная паутина, файловые архивы и пр.)- Поиск информации
Базовые понятия
Глобальная сеть.
Службы Интернета: электронная почта, WWW, файловые архивы и т.д. Гиперссылка.
Обязательно изложить
Если два или более компьютеров соединить ду собой для обмена информацией, то получится c Объединение сетей принято называть «интернет»|'(с маленькой буквы), т.е. буквально межсетевой обмен информацией. Подчеркнем, что компьютеры в сетях не обязательно должны быть одинаковыми; то же можно сказать и по поводу операционных систем.
Когда масштабы объединения сетей становятся такими, что образуется единая мировая информационная система, название «Интернет» начинают писать с заглавной буквы, подчеркивая тем самым глобальный характер Сети. Таким образом, Интернет — это «сеть сетей», которая охватывает весь земной шар.
По мере объединения сетей в единое мировое информационное пространство постепенно складывались различные сетевые службы Интернета. Первоначально они были изолированными и имели четко ограниченную сферу применения. В процессе развития стала все более отчетлива тенденция к объединению всех этих служб на базе World Wide Web (русский эквивалент — «Всемирная паутина»), или более коротко — WWW.
Перечислим и кратко охарактеризуем наиболее важные информационные службы
Q Электронная почта (E-mail)
Одно из наиболее распространенных сетевых применений. Название происходит от сокращения слов Electronic Mail, что, собственно, и означает электронная почта.
В большинстве случаев электронное письмо представляет собой обычный текст, дополненный некоторой служебной информацией (аналогом обычного конверта). Отправитель должен указать электронный адрес абонента и тему письма; адрес отправителя добавится автоматически. К письму может прилагаться сопутствующая информация в виде графических, звуковых или иных файлов.
Любой адрес электронной почты построен по схеме
@
Для приема и отправки электронных писем необходима специальная почтовая программа. Среди отечественных пользователей наибольшее распространение получили Microsoft Outlook Exdivss и The Bat.
Q WWW
Наиболее популярной службой Интернета в настоящее время является WWW. Она получила настолько широкое распространение, что начинает вмещать в себя все остальные перечисленные выше службы (FTP, почту, конференции и т.д.).
Основой Всемирной паутины является принцип гиперссылок. В любом месте web-страницы может быть поставлена ссылка на другую страницу, связанную по смыслу с данной. Благодаря такой организации взаимных ссылок все материалы фактически объединяются в единое целое, создавая, образно говоря, всемирную информационную паутину. Для путешествия по ней требуется специальное программное обеспечение, которое называют браузером (от англ, browse — просматривать, проглядывать).
О Передача файлов из архивов (FTP)
Для копирования информации из сетевых файловых архивов имеется специальный способ доступа — FTP (от file Transfer Protocol — протокол переноса файлов). Для работы с FTP существуют различные специализированные программы, однако значительно удобнее воспользоваться стандартным повседневным ПО, поддерживающим данный протокол, например, распространенным Far Manager Е.Рошала.
В Сети имеется и много других видов информационных сервисов. Как уже говорилось ранее, они все больше и больше объединяются на базе технологий WWW.
Одной из важнейших задач при работе в Интернете является поиск в этом океане информации. Специальные поисковые сервера просматривают огромные объемы информации и составляют базы ссылок на размещенные в Интернете материалы. Таким образом, поиск в действительности ведется не непос-, редственно в Сети, а в базе данных, хранящихся нау поисковом сервере. Отсюда, в частности, следует ряд практически важных выводов. Во-первых, если поисковая машина не смогла найти нужный вам материал, то это не значит, что его нет в Интернете. Даже если испробовать несколько поисковых систем, то и это не дает полной гарантии обзора всей Сети. Во-вторых, некоторые из выданных поисковых ссылок уже исчезли за время после их последней проверки, и наоборот, наиболее новые ссылки могут быть в базе сервера еще не отражены. В-третьих, регистрация ссылок в базу и механизм их выдачи существенно зависят от того, какой поисковый сайт мы выбрали. В частности, некоторые ссылки могут быть помещены в начало списка не потому, что они соответствуют смыслу запроса, а в связи с оплатой рекламных материалов. Наконец, несмотря на достаточно совершенные способы формирования баз, благодаря некоторым уловкам нечистых на руку интернет-пользователей найденные по запросу страницы могут быть абсолютно неподходящими1.
Помимо машин, где поиск производится путем автоматического просмотра базы, на некоторых серверах существует еще один альтернативный способ поиска — по категориям. При этом база данных тщательно сортируется по темам, образующим строгую иерархию, например, образование — высшее образование — университеты и т.д. Пользователь сам движется по этой цепочке; разумеется, в любой момент можно воспользоваться обычным поиском по ключевым словам, причем сделать это внутри данной категории, что существенно сужает круг поиска и уменьшает число посторонних ссылок. В простейших случаях удается обойтись вообще без поискового запроса, просто продвинувшись вглубь по дереву категорий достаточно далеко. Общепризнанным лидером среди подобного рода серверов является «Yahoo!». Другими крупнейшими поисковыми машинами являются Яндекс, Рамблер, Google, Alta Vista, Lycos и др.
1 Например, иногда в качестве ключевых слов на web-странице независимо от ее содержания указываются такие, которые по статистике имеют самый высокий рейтинг (среди них, увы, традиционно сильны ключевые слова порнографического плана, запросы по поводу большей частью нелицензионных МРЗ-файлов и прочие негативные по содержанию темы); могут искусственно добавляться те или иные списки слов для «ложной» автоматической фиксации тематики страницы в базе (в том числе тексты могут делаться «невидимыми», т.е. выводиться цветом фона). В ответ на подобные жульничества поисковые сервера постоянно совершенствуют свои технологии анализа индексируемых страниц.
Желательно изложить
Компьютеры в сети обмениваются данными на основании определенного набора правил, который инженеры привыкли называть протоколом. Очень важно, что протокол не зависит от типа ЭВМ: благодаря этому создается возможность объединения компьютеров с различным программным обеспечением и даже различных типов машин.
Помимо перечисленных в обязательном разделе, можно дополнить ответ следующими службами Интернета:
Q Телеконференции,
Q Электронные доски объявлений (BBS),
Q Удаленный доступ (telnet),
Q Поиск файлов (Archie).
Некоторые детали работы перечисленных выше служб описаны в полных материалах по билетам.
Важной задачей поисковых серверов является постоянное поддержание соответствия между созданной ими информационной базой и реально существующими в Сети материалами. Для этого существуют специальные программы (их часто называют роботами, или «паучками»), которые периодически обходят имеющиеся в базе ссылки и анализируют их состояние. Данная процедура позволяет удалять исчезнувшие материалы и по добавленным на просматриваемые страницы ссылкам обнаруживать новые. Предусмотрена также «ручная» регистрация страниц в базе, когда пользователь сам предлагает для добавления ссылку на свою страницу. Как правило, при таком способе предлагаемые страницы и их содержание контролируются (модерируют-ся) человеком.
Примечание для учителей
Вопрос достаточно традиционный и понятный. Единственный совет, который здесь стоит дать, — четко объясните ученикам, что именно они должны раскрыть в своем ответе, поскольку материала, относящегося к теме, необычайно много.
Примечание для учеников
Вопрос очень объемный и носит описательный характер. Даже если вы часами сидите в Интернете и знаете о нем не только из книг, все равно продумайте, что именно вы будете рассказывать. И, кроме того, обратите внимание, насколько хорошо вы сможете рассказать обо всех перечисленных в вопросе возможностях, а не только о «серфинге» по web-страницам (например, что вам известно о файловых архивах и FTP-доступе к ним).
Ссылка на материалы по вопросу
Полный текст материалов вопроса опубликован в «Информатике» № 20, 2002, с. 3 — 7.
2. Логические переменные и функции, их преобразование. Таблицы истинности
Базовые понятия
Логическая константа, логическая переменная, логическая операция, логическая функция, эквивалентные преобразования логических выражений, таблицы истинности логических операций и логических выражений.
Обязательно изложить
Основные логические операции и законы логики рассматривались в билетах № 7 и 8 (вопросы № 2).
Логическая, константа имеет одно из значений — ИСТИНА (TRUE, 1) или ЛОЖЬ (FALSE, 0). Соответственно, логическая переменная может принимать одно из вышеуказанных значений.
Логическое выражение — это выражение, состоящее из логических операндов, соединенных с помощью логических операций. В качестве логических операндов могут выступать логические константы, переменные, а также отношения (сравнения) между двумя не обязательно логическими величинами. Логические выражения могут принимать одно из двух значений: ИСТИНА (TRUE или 1) или ЛОЖЬ (FALSE или 0). Отношение — это два выражения некоторого одного и того же типа, соединенных операцией отношения (">", ""). Обычно в языках программирования операции отношения определены для величин числовых, символьных, логических, строковых типов.
В определенных случаях сложные логические выражения могут быть заменены более простыми путем равносильных преобразований. Вообще два логических выражения являются равносильными, если имеют одинаковые таблицы истинности.
При такого рода преобразованиях применяются законы алгебры логики (билет № 8, вопрос № 2). Примеры см. в «Информатике» № 17, с. 3 — 7.
Равносильные преобразования логических выражений необходимы, например, при конструировании логических схем с целью минимизации количества логических элементов, их составляющих.
Таблицы истинности можно составлять вручную или использовать программирование (заметим только, что для каждого выражения это будет своя программа). Примеры там же.
В языках программирования есть некоторое количество логических функций, которые позволяют анализировать определенные ситуации. Например, eof (f) в языке Паскаль возвращает true, если достигнут конец файла f, и false в противном случае.
При реализации некоторых программ удобно использовать функции, которые имеют логическое значение. Обычно они используются для того, чтобы на некоторый вопрос получить ответ «да» или «нет».
Например, следующая функция возвращает true, если ее натуральный аргумент — простое число, и false — в противном случае:
Function Simple (Pr: Integer): Boolean; Var I: Integer; LogPer: Boolean; Begin
Case Pr of
1: Simple := false;
2: Simple := true;
else
begin
I := 2; {счетчик}
Repeat
{логическая переменная, принимающая
значение TRUE, если число Pr
составное}
LogPer := (Pr Mod I = 0); I := I + 1
Until (I > Pr Div 2 + 1) Or (LogPer);
(цикл завершаем в том случае, когда
счетчик становится больше половины
данного числа или обнаруживаем, что
число составное}
Simple := Not LogPer
end end
{значение функции равно TRUE, если число простое, и FALSE — в противном случае} End;
Желательно изложить
Несмотря на то что операции отношения —, Ф, ">", "
продолжение
--PAGE_BREAK--Примечание для учителей
Вопрос билета целесообразно сформулировать так, как он формулировался ранее: «Логические выражения и их преобразования. Таблицы истинности». В нынешней формулировке он является некорректным.
Примечание для учеников
Понимание сущности алгебры логики, умение правильно составлять и преобразовывать логические выражения способно существенно помочь при изучении программирования и составлении программ.
Ссылка на материалы вопроса
«Информатика» № 17, с. 3 — 7.
3. Задача. Разработка алгоритма (программы) на обработку данных строкового типа
Принципы составления задания
При составлении задания целесообразно учесть, что в разных, языках программирования строки реализованы по-разному. В некоторых (например, Паскаль, C/C++) строки можно интерпретировать и как массив символов, и как единое целое, в других (Бейсик) только как единое целое. Поэтому специфика изучаемого учащимися языка должна быть учтена в экзаменационном задании.
Примеры заданий
Примеры разобранных задач с решением можно найти в «Информатике» № 17, с. 3— 7.
Работа со строковым типом данных в языке Паскаль описана здесь: comp-science.narod.ru/Prog/ String.htm.
Задачи для экзамена можно взять из таких задачников:
1) Информатика. Задачник-практикум в 2 т. / Под ред. И.Г. Семакина, Е.К. Хеннера. Т. 1, 2. М.: Лаборатория Базовых Знаний, 1999.
2) Шауцукоба Л.З. Информатика: Учебное пособие для 10—11-х классов общеобразовательных учреждений, 2-е изд., дораб. М.: Просвещение, 2002, 416 с.
3) Златополъский Д.Л1 Я иду на урок информатики. Задачи по программированию. 7—11-е классы: Книга для учителя. М.: Издательство «Первое сентября», 2002, 208 с.
БИЛЕТ № 24
1. Основные этапы в информационном развитии общества. Основные черты информационного общества. Информационные ресурсы.
2. Количество информации как мера уменьшения неопределенности знаний. Содержательный подход к измерению информации.
I 3. Практическое задание. Разработка мультиме-| дийной презентации на свободную тему
1. Основные этапы в информационном развитии общества. Основные черты информационного общества. Информационные ресурсы
Базовые понятия
Информационное развитие, информационная технология, информационное общество, информационный ресурс.
Обязательно изложить
Информационное развитие общества прошло несколько основных этапов, каждый из которых был связан с информационной революцией — преобразо-
ванием общественных отношений из-за кардинальных изменений в сфере обработки информации.
Первый этап связан с изобретением письменности, которое создало возможность передачи знаний от поколения к поколениям.
Второй этап начался изобретением в середине XVI в. книгопечатания, которое радикально изменило индустриальное общество, культуру, организацию деятельности.
Третий этап (конец XIX в.) обусловлен изобретением электричества, благодаря которому появились телеграф, телефон, радио, позволяющие оперативно передавать и накапливать информацию в любом объеме.
Четвертый этап, начавшийся в 70-е гг. XX в., связан с изобретением микропроцессорной технологии. На микропроцессорах и интегральных схемах создаются компьютеры, компьютерные сети, системы передачи данных (информационные коммуникации).
Последняя информационная революция выдвинула на первый план новую отрасль — информационную индустрию, связанную с производством технических средств, методов, технологий для производства новых знаний. Важнейшими составляющими информационной индустрии являются все виды информационных технологий — процессов, использующих совокупность средств и методов сбора, обработки и передачи данных (первичной информации) для получения информации нового качества о состоянии объекта, процесса или явления.
Развитие информационной индустрии послужило толчком к формированию и развитию общества, построенного на использовании различной информации и получившего название информационного общества. Это общество имеет следующие основные черты:
• большая часть населения развитых стран занята информационной деятельностью;
• одной из главных социальных ценностей, объединяющих общество, главным продуктом производства и основным товаром является информация;
• с помощью средств информатики реализуется свободный доступ каждого человека к информационным ресурсам всей цивилизации;
• власть в обществе принадлежит информационной элите;
• классовая структура общества лишается смысла и постепенно уступает место элитарно-массовой структуре.
Понятие «информационного ресурса общества» является одним из ключевых понятий социальной информатики. Его появление было обусловлено растущей зависимостью промышленно развитых стран от источников информации (технической, экономической, политической, военной), а также от уровня развития и эффективности использования средств передачи и переработки информации.
Понятие информационного ресурса находится в стадии формирования, трудность его однозначного определения связана с неоднозначностью и сложностью таких понятий, как «знания», «информация», «данные» и т.д.
Информационный ресурс общества может быть определен как накопленные в обществе знания, подготовленные для целесообразного социального использования.
С понятием «информационный ресурс» тесно связано понятие «информационный потенциал общества» — это информационный ресурс общества в единстве со средствами, методами и условиями, позволяющими его активизировать и эффективно использовать.
Желательно изложить
Привести примеры накопленных знаний, которые включаются и не включаются в информационный ресурс.
Ссылка на материалы вопроса
1. Шауцукова Л.З. Информатика: Учебное пособие для 10—11-х классов общеобразовательных учреждений. М.: Просвещение, 2002, 416 с.
2. Ершова Т.Е. Вестник РФФИ № 3, 1999.
2. Количество информации как мера уменьшения неопределенности знаний. Содержательный подход к измерению информации
Базовые понятия
Информация, знания, сообщение, содержательный подход.
Обязательно изложить
Понятие «информация», обозначающее предмет информатики, определяется с помощью перечисления отличительных свойств и действий, которые с информацией можно совершать, а также указания того, что является носителем информации. Главными свойствами информации являются передаваемость, хранимость, преобразуемость. К ним часто добавляют атрибуты: достоверность, полезность, значимость и т.д. Информацию можно создавать, воспринимать, запоминать, распространять, обрабатывать, разрушать, измерять и т.д. Носителями информации являются сообщения, т.е. последовательность знаков, принадлежащих некоторой знаковой системе.
Прообразом понятия «информация» является то, что в быту называют знаниями, т.е. сведениями об окружающем нас мире в их взаимной связи. Поэтому, когда говорят о содержательной стороне информации, обычно имеют в виду именно знания. Измерение знаний оказывается очень непростой задачей. Так, если сообщение о новом научном открытии написано на неизвестном нам языке, мы говорим, что не получили никакой информации. Если сообщение написано на известном языке, но касается незнакомой области науки или производства, мы также делаем вывод о том, что для нас сообщение не информативно. Вывод об отсутствии информации в понятном сообщении делается и в том случае, когда знания, в нем содержащиеся, для нас уже известны или требуют для своего восприятия большего запаса знаний, чем тот, что у нас имеется. Таким образом, оценка присутствия знаний в сообщении определяется приемником сообщения по таким атрибутам, как понятность, новизна и полезность по отношению к сумме знаний, которой он обладает. Вопрос о количестве информации, т.е. о сравнении информативных сообщений, при этом не возникает.
Рассмотрим теперь подход, в котором приобретают смысл утверждения о том, много или мало информации содержится в данном сообщении, полученном данным приемником. Известно, что на базе имеющихся знаний можно прогнозировать последствия различных событий в окружающем нас мире. Именно так и происходит общение человека с его окружением. Мы «задаем вопросы» и получаем в ответ сообщения, которые в той или иной степени подтверждают или отрицают наши прогнозы относительно последствий тех или иных событий. Если сообщение подтверждает наиболее ожидаемый прогноз, мы говорим, что оно содержит меньше информации, чем сообщение с подтверждением наименее ожидаемого прогноза. На математическом языке эту ситуацию можно описать словами: сообщение о реализации более вероятного предполагаемого результата содержит меньше информации, чем сообщение о реализации менее вероятного результата. Поскольку использование прогнозирования означает неполноту или неопределенность наших знаний, можно сказать, что информация, содержащаяся в сообщениях подобного типа, уменьшает неопределенность наших знаний. Этот подход, допускающий сравнение сообщений по их информативности, в качестве следующего шага позволяет определить количество информации с помощью соглашения о том, как изменяется неопределенность наших знаний при получении сообщения с определенной информацией. Принято считать, что сообщение, уменьшающее неопределенность наших знаний в два раза, содержит количество информации, принимаемое за единицу ее измерения. Эта единица измерения получила название бит. Если говорить о содержании, то это сообщение с одним из двух альтернативных равновероятных ответов на сформулированный специальным образом вопрос. Например, вопрос о том, мужчина или женщина совершенно незнакомый человек по фамилии Тарасюк, допускает два альтернативных равновероятных ответа, а значит, получая любой из них, мы получаем информацию в количестве 1 бит.
Чтобы воспользоваться этой единицей измерения для определения количества информации в произвольном сообщении, нужно представить его как ответ на вопрос, который допускает замену серией специальных вопросов с ответами, содержащими 1 бит информации, подобно алгоритму поиска корней функции с помощью метода деления отрезка пополам. Например, получив сообщение в виде черно-белого изображения, мы можем представить его как ответ на вопрос о распределении черных и белых точек на заданной площади. Этот вопрос допускает замену серией вопросов о том, каков цвет точки, находящейся в заданной позиции. Ответ на каждый из них содержит 1 бит информации по определению, так что полное количество информации равно количеству точек, образующих данное изображение.
Применение этой схемы для определения количества информации в цветном изображении сразу наталкивается на непреодолимые трудности, связанные с необходимостью учета законов композиции, индивидуальности художника и т.д. Ситуация становится еще более запутанной, если приемник обладает какими-либо особенностями восприятия изображений. Еще больше неразрешимых проблем в рамках содержательного подхода возникает при попытке найти количество информации в битах, содержащееся в каком-либо литературном произведении, и т.д.
Подводя итог, можно сделать неутешительный вывод о том, что в рамках содержательного подхода к определению количества информации, как количества знаний в сообщении, с помощью указанной единицы измерения в данном случае не представляется возможным.
Ссылка на материалы вопроса
1. Семакин И., Залогова А., Русаков С., Шестакова А. Базовый курс для 7—9-х классов. М.: Лаборатория базовых знаний, 2001, 384 с.
2. Шауцукова А.З. Информатика: Учебное пособие для 10—11-х классов общеобразовательных учреждений. М.: Просвещение, 2002, 416 с.
3. Разработка мультимедийной презентации на свободную тему
Принципы составления задания
Мультимедийная презентация предполагает одновременное использование чисел, текстов, графики, анимации, видео, звука. Разработка полноценной презентации за время экзамена вряд ли возможна. Поэтому следует ограничиться текстом, графикой и анимацией, что позволяет использовать MS Power Point в стандартной конфигурации. Тексты размещаются на слайдах как объекты «Надпись». Графические изображения создаются с помощью панели «Рисование» или выбираются из стандартной коллекции рисунков. Анимация осуществляется с помощью встроенных эффектов и касается не только объектов, расположенных на слайдах, но и процесса перехода от одного слайда к другому. В случае затруднений в выборе темы презентации можно предложить следующие:
1. Архитектура современного компьютера (двухслай-довая презентация; первый слайд представляет основные элементы компьютерной системы — процессор, оперативную память, винчестер, видеоадаптер, клавиатуру и т.д.; второй —их соединение).
2. Основные алгоритмические структуры (двухслай-довая презентация; первый слайд представляет структуры «следование» и «ветвление»; второй циклы).
Для повышения оценки можно предложить разместить на слайдах элементы управления.
Примеры заданий
Угринович Н.Д. Информатика и информационные технологии. Учебное пособие для 10—11-х классов. Углубленный курс. М.: Лаборатория Базовых Знаний, 2000, 440 с.
БИЛЕТ № 25
I 1. Этические и правовые аспекты информационной деятельности. Правовая охрана программ и | данных.
I 2. Основные способы защиты информации на I локальном компьютере и в компьютерных сетях.
3. Практическое задание. Создание, редактирование, форматирование, сохранение и распечатка'
текстового документа.
1. Этические и правовые аспекты информационной деятельности. Правовая охрана программ и данных
Чтобы быть до конца честным, на не совсем стандартный билет я могу дать только не совсем стандартный ответ.
В наших прошлых публикациях рке указывалось, что данный вопрос не является удачным для включения в экзаменационный билет. И если в билетах 9-го класса он служит составной частью вопроса, что еще можно как-то пережить, то в билетах 11-го класса его вынесли отдельно. По-моему, здесь есть как минимум два существенных недостатка. Во-первых, в известных мне школьных учебниках информатики не содержится материал для ответа на этот вопрос. Во-вторых, что еще более важно, правовая охрана программ и данных — это больная тема: законодательство по защите авторских прав в нашей стране далеко не всегда соблюдается; а значит, то, в чем мы пытаемся убедить школьников, на практике часто выглядит с точностью до наоборот. Поймите меня правильно, я сам где только можно стараюсь говорить о правовых нормах в области распространения программного обеспечения. И это обязательно надо делать — и рассказывать, и обсуждать на уроках. Но только не на экзамене, потому что тем самым мы поставим ученика в неловкое положение: чтобы получить высокую оценку, он обязан рассказывать, как все должно быть, хотя практически весь его жизненный опыт свидетельствует об обратном!
Но сколько бы мы не говорили о целесообразности и корректности вопроса, увы, отвечать как-то надо. Поэтому, не претендуя на глубину обобщений, попробую на свой страх и риск ответить. Еще раз подчеркну, что это мое личное видение проблемы, и я не специалист в области философии, а тем более юриспруденции1. Разумеется, читатель вправе воспользоваться любыми другими материалами, которые сумеет найти.
Итак, что такое этические нормы? Этика (от греческого ethos — обычай, нрав, характер) — это учение о нравственности (морали), ее происхождении и развитии, о правилах и нормах поведения людей, об их обязанностях по отношению друг к другу, к обществу, государству и т.п. Таким образом, этические нормы есть то, что регулирует поведение людей и их отношения в повседневной жизни, — сложившиеся в данной местности обычаи, традиции и прочие «неписаные законы», как их часто метко называют. Часто эти нормы и традиции просто не осознаются и выполняются «автоматически». Скажем, воспитанный мужчина в помещении не будет ходить в шапке, а здороваясь, прежде чем подать руку, снимет перчатку. Не все даже помнят, что эти действия восходят к рыцарским временам, когда они имели глубокий смысл: снимая защищавший голову шлем, рыцарь показывал свое доверие дому, в который вошел, а рука без перчатки демонстрировала открытость намерений. Все это давно утратило первоначальный смысл, но до сих пор сохраняется в качестве общепринятых обычаев. Некоторые современные молодые люди, правда, демонстративно не соблюдают принятые в обществе нормы поведения, пытаясь подчеркнуть собственную исключительность; к сожалению, кроме наплевательского отношения к окружающим, никаких других отличительных особенностей такие люди чаще всего не имеют, а их невысокий уровень развития не позволяет им это осознать.
продолжение
--PAGE_BREAK-- продолжение
--PAGE_BREAK--Простые и сложные типы данных. Простому типу соответствует только одно текущее значение, а сложный объединяет несколько.
Операторы: присваивания и управляющие (развилка, цикл).
Процедура и функция.
Обязательно изложить
Примечание. Изложение стоит вести применительно к тому языку программирования, который изучался в школе. Из-за наличия некоторых особенностей языков данное замечание может в некоторых деталях оказаться существенным.
В программировании налицо две взаимосвязанные составляющие процесса решения задачи: собственно данные и инструкции по их обработке, т.е. алгоритм.
Рассмотрение начнем с первой составляющей — данных. По роли данных в алгоритме различают исходные (входные) данные, выходные (чаще говорят — результат) и рабочие (промежуточные) данные.
Каждая величина в алгоритме имеет свой тип. Тип величины определяет, какие значения может принимать величина, какие операции над ней можно выполнять и как она хранится в памяти машины.
БИЛЕТ № 5
1. Функциональная схема компьютера (ос-: новные устройства, их взаимосвязь). Характе-I ристики современных персональных компью-I теров.
2. Технология объектно-ориентированного: программирования (объекты, их свойства и! методы, классы объектов).
3. Задача. Определение результата выполнения алгоритма по его блок-схеме или записи на языке программирования.
1. Функциональная схема компьютера (основные устройства, их взаимосвязь). Характеристики современных персональных компьютеров
Базовые понятия
Функциональные устройства компьютера: процессор, память (внутренняя и внешняя), устройства ввода и вывода информации.
Шина (информационная магистраль) — основное устройство для переноса информации между блоками компьютера. Ее составляющие: шина адреса, шина данных и шина управления.
Основные характеристики компьютера: процессор — тактовая частота; ОЗУ и видеопамять — объем; набор периферийных устройств и возможности их расширения.
Обязательно изложить
Современный компьютер есть сложное электронное устройство, состоящее из нескольких важных функциональных блоков, взаимодействующих между собой.
Главным устройством компьютера является процессор. Он служит для обработки информации и, кроме того, обеспечения согласованного действия всех узлов, входящих в состав компьютера.
Для хранения данных и программы их обработки в компьютере предусмотрена память. Информация по решаемым в данный момент задачам хранится в оперативном запоминающем устройстве (ОЗУ). Для сохранения результатов необходимо использовать носитель внешней памяти, например, магнитный или оптический диск.
Для задания исходных данных и получения информации о результатах необходимо дополнить компьютер устройствами ввода и вывода.
Все устройства компьютера взаимодействуют между собой единым способом через посредство специаль-
ной информационной магистрали или шины. Непосредственно к шине подсоединяются процессор и внутренняя память (ОЗУ и ПЗУ). Остальные устройства для согласования с шиной имеют специальные контроллеры, назначение которых состоит в обеспечении стандартного обмена информацией через шину. Шина компьютера состоит из трех частей:
• шина адреса, на которой устанавливается адрес требуемой ячейки памяти или устройства, с которым будет происходить обмен информацией;
• шина данных, по которой, собственно, и будет передана необходимая информация;
• шина управления, регулирующая этот процесс.
Рассмотрим в качестве примера, как процессор читает содержимое ячейки памяти. Убедившись, что шина свободна, процессор помещает на шину адреса требуемый адрес и устанавливает необходимую служебную информацию (операция — чтение, устройство — ОЗУ и т.п.) на шину управления. ОЗУ, «увидев» на шине обращенный к нему запрос на чтение информации, извлекает содержимое необходимой ячейки и помещает его на шину данных (разумеется, реальный процесс значительно более детальный).
Подчеркнем, что на практике функциональная схема может быть значительно сложнее: компьютер может содержать несколько процессоров, прямые информационные каналы между отдельными устройствами, несколько взаимодействующих шин и т.д.
Магистральная структура позволяет легко подсоеди-. нять к компьютеру именно те внешние устройства, которые нужны для данного пользователя.
Характеристики персональных компьютеров фактически представляют собой совокупность характеристик отдельных устройств, его составляющих (хотя, строго говоря, они должны разумно соответствовать друг другу). Наиболее важными из них являются следующие.
Главная характеристика процессора — тактовая частота. Такты — это элементарные составляющие машинных команд. Для организации их последовательного выполнения в компьютере имеется специальный генератор импульсов. Очевидно, что чем чаще следуют импульсы, тем быстрее будет выполнена операция, состоящая из фиксированного числа тактов. Тактовая частота в современных компьютерах измеряется в гигагерцах, что соответствует миллиардам импульсов в секунду.
С теоретической точки зрения важной характеристикой процессора является его разрядность. На практике же все выпускаемые в данный момент процессоры имеют одинаковую (причем достаточную для подавляющего большинства практических целей) разрядность. С другой стороны, при выборе компьютера важное значение имеет набор окружающих процессор микросхем (так называемый «чипсет» ), но детали этого вопроса выходят далеко за рамки билета.
Объемы ОЗУ и видеопамяти также являются важными характеристиками компьютера. Единицей их измерения в настоящий момент является мегабайт, хотя в некоторых наиболее дорогих моделях оперативная память уже превышает 1 гигабайт. Еще одной, «более технической», характеристикой является время доступа к памяти — время выполнения операций записи или считывания данных, которое зависит от принципа действия и технологии изготовления запоминающих элементов.
По технологии изготовления различают статические и динамические микросхемы памяти. Первая является более быстродействующей, но, соответственно, и более дорогой. В качестве компромиссного решения в современных компьютерах применяется сочетание большого основного объема динамического ОЗУ с промежуточной (между ОЗУ и процессором) статической кэш-памятью. Ее объем также оказывает существенное влияние на производительность современного ПК.
Важной характеристикой компьютера является его оснащенность периферийными устройствами. Читатели легко смогут привести здесь достаточное количество примеров. Хочется только подчеркнуть, что существенна 'также возможность подключения к машине дополни7 тельных внешних устройств. Например, современному компьютеру совершенно необходимо иметь разъемы USB1, через которые к нему можно подключать множество устройств: от принтера и мыши до флэш-диска и цифрового фотоаппарата.
Желательно изложить
При обращении к внешним устройствам используются специальные регистры, которые принято называть портами.
Обмен по шине между устройствами при определенных условиях и при наличии вспомогательного контроллера может происходить без непосредственного участия процессора. В частности, возможен такой обмен между периферийным устройством и ОЗУ (прямой доступ к памяти).
Оба вида запоминающих микросхем — статические и динамические — успешно конкурируют между собой. С одной стороны, статическая память значительно проще в эксплуатации и приближается по быстродействию к процессорным микросхемам. С другой стороны, она имеет меньший информационный объем и большую стоимость, сильнее нагревается при работе. На практике в данный момент выбор микросхем для построения ОЗУ всегда решается в пользу динамической памяти. И все же быстродействующая статиче-
1 USB (Universal Serial Bus) — универсальная последовательная шина.
екая память в современном компьютере обязательно есть: она называется кэш-памятью.
Кэш невидим для пользователя, так как процессор использует его исключительно самостоятельно. Кроме сохранения данных и команд, считываемых из ОЗУ, в специальном каталоге кэш запоминаются также адреса, откуда информация была извлечена. Если информация потребуется повторно, уже не надо будет терять время на обращение к ОЗУ — ее можно получить из кэш-памяти значительно быстрее. Кэш-память является очень эффективным средством повышения производительности компьютера.
Примечания для учителей
Если в аналогичном билете 9-го класса упор делался на перечисление основных устройств компьютера, их примеров и функций, то при ответе на выпускном экзамене данный материал служит лишь введением. Основное содержание первой части вопроса служит описанием процесса взаимодействия узлов компьютера через общую информационную шину.
Во второй половине вопроса следует не просто требовать от учеников перечисления характеристик компьютера и их значений, но и разъяснения их сущности и особенно знания тех свойств компьютерной системы, на которых данные характеристики сказываются. Например, какое влияние оказывает недостаточный объем ОЗУ и почему, для каких приложений требуется большое количество видеопамяти, а какие вполне работоспособны при минимальном и т.п.
Примечание для учеников
Вопрос довольно объемный, но с практической точки зрения понятный. Поэтому ограничимся единственной рекомендацией: изобразите все упомянутые в рассказе блоки компьютера в виде схематического рисунка, что значительно 'облегчит объяснения.
Ссылки
Большое количество дополнительного материала по данному билету можно найти в книге Е.А. Еремина «Популярные лекции об устройстве компьютера» (СПб.: BHV-Петербург, 2003).
«Информатика» № 9, 2002, с. И —13.
2. Технология объектно-ориентированного программирования (объекты, их свойства и методы, классы объектов)
Базовые понятия
Парадигма программирования, объектно-ориентированное программирование, объект, метод, инкапсуляция, наследование, полиморфизм.
Обязательно изложить
Основополагающей идеей одного из популярных в настоящее время подходов к программированию — объектно-ориентированного — является объединение
БИЛЕТ № 6
1. Устройства памяти компьютера. Внешние носители информации (гибкие диски, жесткие диски, диски CD-ROM/R/RW, DVD и др.). Принципы записи и считывания информации.
2. Визуальное объектно-ориентированное программирование. Графический интерфейс: форма и управляющие элементы.
3. Векторная графика. Практическое задание. Создание, преобразование, сохранение, распечатка рисунка в среде векторного графического редактора.
1. Устройства памяти компьютера. Внешние носители информации (гибкие диски, жесткие диски, диски CD-ROM/R/RW, DVD и др.). Принципы записи и считывания информации
Базовые понятия
Внешняя память, накопитель, носитель информации, магнитный носитель, оптический носитель.
Обязательно изложить
Внешняя (долговременная) память — это место длительного хранения данных (программ, результатов расчетов, текстов и т.д.), не используемых в данный момент в оперативной памяти компьютера. Внешняя память, в отличие от оперативной, является энергонезависимой. Носители внешней памяти, кроме того, обеспечивают транспортировку данных в тех случаях, когда компьютеры не объединены в сети (локальные или глобальные).
Для работы с внешней памятью необходимо наличие накопителя (устройства, обеспечивающего запись и (или) считывание информации) и устройства хранения — носителя.
Основные виды накопителей:
• накопители на гибких магнитных дисках (НГМД);
• накопители на жестких магнитных дисках (НЖМД);
• накопители на магнитной ленте (НМЛ);
• накопители CD-ROM, CD-RW, DVD.
Им соответствуют основные виды носителей:
• гибкие магнитные диски (Floppy Disk)',
• жесткие магнитные диски (Hard Disk);
• кассеты для стримеров и других НМЛ;
• диски CD-ROM, CD-R, CD-RW, DVD-R, DVD-RW. Основные характеристики накопителей и носителей:
• информационная емкость;
• скорость обмена информацией;
• надежность хранения информации;
• стоимость.
Принцип работы магнитных запоминающих устройств основан на способах хранения информации с использованием магнитных свойств материалов. Как правило, магнитные запоминающие устройства состоят из собственно устройств чтения/записи информации и магнитного носителя, на который непосредственно осуществляется запись и с которого считывается информация. Магнитные запоминающие устройства принято делить на виды в связи с исполнением, физико-техническими характеристиками носителя информации и т.д. Наиболее часто различают: дисковые и ленточные устройства. Общая технология магнитных запоминающих устройств состоит в намагничивании переменным магнитным полем участков носителя и считывания информации, закодированной как области переменной намагниченности. Дисковые носители, как правило, намагничиваются вдоль концентрических полей — дорожек, расположенных по всей плоскости дискоидального вращающегося носителя. Запись производится в цифровом коде. Намагничивание достигается за счет создания переменного магнитного поля при помощи головок чтения/записи. Головки представляют собой два или более магнитных управляемых контура с сердечниками, на обмотки которых подается переменное напряжение. Изменение величины напряжения вызывает изменение направления линий магнитной индукции магнитного поля и при намагничивании носителя означает смену значения бита информации с 1 на 0 или с 0 на 1.
Компакт-диск диаметром 120мм (около 4,75") изготовлен из полимера и покрыт металлической пленкой. Информация считывается именно с этой металлической пленки, которая покрывается полимером, защищающим данные от повреждения. CD-ROM является односторонним носителем информации.
Считывание информации с диска происходит за счет регистрации изменений интенсивности отраженного от алюминиевого слоя излучения маломощного лазера. Приемник, или фотодатчик, определяет, отразился ли луч от гладкой поверхности, был рассеян или поглощен. Рассеивание или поглощение луча происходит в местах, где в процессе записи были нанесены углубления. Фотодатчик воспринимает рассеянный луч, и эта информация в виде электрических сигналов поступает на микропроцессор, который преобразует эти сигналы в двоичные данные или звук.
Скорость считывания информации с CD-ROM сравнивают со скоростью считывания информации с музыкального диска (150 Кб/с), которую принимают за единицу. На сегодняшний день наиболее распространенными являются 52-скоростные накопители CD-ROM (скорость считывания — 7500 Кб/с).
Устройства с возможностью многократной записи на оптический диск используют многослойный диск с отражающей поверхностью, перед которой находится слой
БИЛЕТ № 8
1. Назначение и состав операционной системы | компьютера. Загрузка компьютера.
2. Законы логики.
3. Практическое задание на построение таблицы
I и графика функции в среде электронных таблиц. I
1. Назначение и состав операционной системы компьютера. Загрузка компьютера
Базовые понятия
Операционная система — важнейшая часть системного программного обеспечения, которая организует процесс выполнения задач на ЭВМ, распределяя для этого ресурсы машины, управляя работой всех ее устройств и взаимодействием с пользователем.
Ресурсы компьютера: процессорное время, память всех видов, устройства ввода/вывода, программы и данные.
Hardware (компьютерное оборудование) и software (программное обеспечение).
Функции операционной системы.
Обязательно изложить
Операционная система организует совместную работу компьютерного оборудования и прикладного программного обеспечения и служит своеобразным программным расширением управляющего устройства компьютера.
Зачем нужен еще один дополнительный программный слой? По нескольким причинам. Во-первых, невозможно заложить в компьютер информацию обо всех устройствах, которые к нему могут быть подсоединены. Загружаемая (а следовательно, изменяемая) программная часть, обеспечивающая работу компьютерной аппаратуры, решает данную проблему. Во-вторых, наличие операционной системы очень существенно облегчает разработку нового прикладного ПО, поскольку все наиболее часто встречающиеся при работе с компьютерным оборудованием функции сконцентрированы в ОС и о них уже не надо заботиться. В-третьих, пользователь получает стандартный интерфейс для диалога с ПО, что существенно облегчает освоение новых программ.
ОС современного компьютера выполняет следующие функции.
• Организация согласованного выполнения всех процессов в компьютере. Планирование работ, распределение ресурсов.
• Организация обмена с внешними устройствами. Хранение информации и обеспечение доступа к ней, предоставление справок.
продолжение
--PAGE_BREAK--• Запуск и контроль прохождения задач пользователя.
• Реакция на ошибки и аварийные ситуации. Контроль за нормальным функционированием оборудования.
• Обеспечение возможности доступа к стандартным системным средствам (программам, драйверам, информации о конфигурации и т.п.).
• Обеспечение общения с пользователем.
• Сохранение конфиденциальности информации в многопользовательских системах.
Значительная часть операционной системы загружена в память постоянно. Программы для некоторых редко используемых операций типа форматирования дискет чаще всего оформляются в виде самостоятельных служебных программ и хранятся на внешних носителях. Такие программы часто называют утилитами. Кроме того, в ОС, как правило, включают небольшой стандартный набор самого необходимого программного обеспечения, например, простейший текстовый редактор.
Процесс загрузки ОС в заметно упрощенном виде выглядит так. При включении компьютера стартует выполнение программы начальной загрузки, находящейся в ПЗУ. Сначала ищется и тестируется установленное оборудование. Если все устройства функционируют нормально, информация о них запоминается и происходит переход к поиску начального загрузчика операционной системы. Он может находиться на жестком диске, на дискете, на CD-ROM и даже быть получен с помощью сетевой платы. Поэтому компьютер опрашивает перечисленные устройства по очереди до тех пор, пока не обнаружит требуемую информацию. Загрузчик представляет собой не что иное, как программу дальнейшей загрузки. Он загружает в ОЗУ остальную часть операционной системы, и машина сможет наконец нормально общаться с пользователем.
Современные компьютеры в основном используют внешние устройства Plug and Play (переводится «включил и работай»), поэтому они способны в процессе загрузки' сообщить процессору свои основные характеристики и условия работы.
Желательно изложить
Первые операционные системы (СР/М, MS-DOS, Unix) вели диалог с пользователем на экране текстового дисплея: человек вводил очередную команду, а
13
компьютер, проверив ее, либо выполнял, либо отвергал по причине ошибки. Такие системы в литературе принято называть ОС с командной строкой.
Развитие графических возможностей дисплеев привело к появлению графического интерфейса, когда объекты манипуляций в ОС изображаются в виде небольших рисунков, а необходимые действия тем.или иным образом выбираются либо из меню, либо с помощью манипулятора «мышь». Примерами операционных систем с графическим интерфейсом служат MacOS (для компьютеров Macintosh), OS/2 и Windows.
Для «классических» ОС с командной строкой довольно четко выделяются три основные части:
• машинно-зависимая часть для работы с конкретными видами оборудования;
• базовая часть, не зависящая от конкретных деталей устройств: она работает с абстрактными логическими устройствами и при необходимости вызывает функции из предыдущей части; отвечает за наиболее общие принципы работы ОС;
• программа ведения диалога с пользователем.
Состав операционных систем с графическим интерфейсом типа Windows заметно шире, но в целом имеет похожее строение.
Порядок опроса устройств при поиске начального загрузчика ОС может быть легко изменен с помощью коррекции сведений о конфигурации компьютерного оборудования (BIOS setup).
Примечание для учителей
По сравнению с билетом для 9-го класса в тексте вопроса нет прямого упоминания о типе интерфейса. Именно поэтому нам пришлось перенести достаточно важный материал об ОС с командной строкой и с графическим интерфейсом в необязательный раздел. Кстати, очень забавно, когда формулировка билета в одиннадцатом классе меньше, чем в девятом…
Примечание для учеников
Лучше не механически заучивать перечисленные для изложения факты, а постараться разобраться в них и привести для себя в какую-то определенную систему. Может быть, постараться дать каждому из них короткое легко понятное вам название и запоминать уже эти названия. В любом случае не забывайте, что в ответе на экзамене ценится не дословность воспроизведения материала, а умение им пользоваться, т.е. объяснять и отвечать на вопросы.
2. Законы логики Базовые понятия
Понятие, суждение, умозаключение. Истинность, ложность суждений и умозаключений. Законы логики как возведенные в принципы характерные черты мышления.
Обязательно изложить
Предметом логики является структура мышления, его формы и законы. Выделяются три формы мышления: понятие, суждение, умозаключение. Понятие — это форма мышления, в которой фиксируются существенные признаки отдельного предмета или класса однородных предметов. Понятия выражаются словами или группами слов. Примером понятия является термин «папка», обозначающий один из элементов файловой системы большинства ОС. Суждение — форма мышления^ в которой что-либо утверждается или отрицается о предметах, их свойствах или отношениях. Суждение выражается в форме повествовательного предложения. Суждение может быть простым или сложным. Пример суждения — «Папка не является файлом». Умозаключение — форма мышления, посредством которой из одного или нескольких суждений, называемых посылками, по определенным правилам получается заключение.
Закон в логике понимается как требование или принцип, которому необходимо следовать, чтобы мышление было правильным. Из многих возможных требований были выделены те, которые наиболее тесно связаны с такими свойствами мышления, как последовательность, определенность, непротиворечивость и обоснованность: закон тождества, закон непротиворечия, закон исключенного третьего, закон достаточного основания. Рассмотрим каждый из них более подробно.
Закон тождества формулируется следующим образом: «В процессе определенного рассуждения всякое понятие или сркдение должны быть тождественны самим себе». В мышлении этот закон выступает в качестве нормативного правила: в процессе рассуждения нельзя подменять одну мысль другой, одно понятие другим. Нельзя выдавать тождественные мысли за различные, а различные — за тождественные. Нарушение закона тождества приводит к двусмысленности. Например: «Откуда берется хлеб? Отвечай! — Это я знаю, он печется… — Печется? О ком это он печется? — Не о ком, а из чего… Берешь зерно, мелешь его… — Не зерно ты мелешь, а чепуху!» (Л.Кэрролл. «Алиса в Зазеркалье»).
Закон непротиворечия утверждает: «Два противоположных суждения не могут быть истинными в одно и то же время и в одном и том же отношении». Например, суждения «Петя Иванов учится в нашем классе» и «Петя Иванов не учится в нашем классе» являются противоречивыми, и истинным может быть лишь одно из них. Суждения «Петя Иванов учится в нашем классе» и «Петя Иванов не учился в нашем классе» могут быть непротиворечивыми, а значит, могут быть истинными или ложными одновременно.
Закон исключенного третьего формулируется следующим образом: «Из двух противоречащих друг другу срк-дений одно истинно, другое ложно, а третьего не дано». Действие этого закона оказывается неограниченным лишь в «жестких» предсказуемых ситуациях. Например, суждения «Завтра в 15 часов будет солнечное затмение» и «Завтра в 15 часов не будет солнечного затмения» подчиняются этому закону, поскольку день и час очередного
БИЛЕТ № 10
Представление целых и вещественных чисел
I в памяти персонального компьютера.
| 2. Логическая схема триггера. Использование
I триггеров в оперативной памяти.
г 3. Задача. Разработка алгоритма (программы),
.содержащего команду (оператор) ветвления.
1. Представление целых и вещественных чисел в памяти персонального компьютера
Базовые понятия
Целые и вещественные числа.
Знаковый разряд. Дополнительный код.
Переполнение — получение результата, для сохранения которого в машине недостаточно двоичных разрядов.
Представление с плавающей запятой; мантисса и порядок. Нормализованные числа.
Обязательно изложить
Числовая информация была первым видом информации, который начали обрабатывать ЭВМ, и долгое время она оставалась единственным видом. Поэтому неудивительно, что в современном компьютере существует большое разнообразие типов чисел.
Целые числа. Для того чтобы различать положительные и отрицательные числа, в их двоичном представлении выделяется знаковый разряд. По традиции используется самый старший бит, причем нулевое значение в нем соответствует знаку плюс, а единичное — минусу.
Из сказанного следует, что положительные числа представляют собой обычное двоичное изображение числа (с нулем в знаковом бите). А вот для записи отрицательных чисел используется специальный код, называемый в, литературе дополнительным. Для практического получения кода отрицательных чисел используется Следующий алгоритм:
• модуль числа перевести в двоичную форму;
• проинвертировать каждый разряд получившегося кода, т.е. заменить единицы нулями, а нули — единицами;
• к полученному результату обычным образом прибавит единицу.
Вещественные числа. Для хранения этого типа данных в памяти современных ЭВМ обычно используется представление чисел с плавающей запятой. Оно фактически взято из математики, где любое число А в
системе счисления с основанием О предлагается записывать в виде
А = (±М) • Q±f,
где М называют мантиссой, а показатель степени Р — порядком числа. Для десятичной системы это выглядит очень привычно, например: заряд электрона равен — 1,6 • 1СГ'19 Кл, а скорость света в вакууме составляет 3 • 108 м/с.
Арифметика чисел с плавающей запятой оказывается заметно сложнее, чем для целых. Тем не менее вычислительные машины со всем этим великолепно умеют автоматически справляться. Заметим, что для процессоров Intel все операции над вещественными числами вынесены в отдельный функциональный узел, который принято называть математическим сопроцессором; до 486-й модели он представлял собой отдельную микросхему.
Таким образом, при использовании метода представления вещественных чисел с плавающей запятой в памяти фактически хранятся два числа: мантисса и порядок. Разрядность первой части определяет точность вычислений, а второй — диапазон представления чисел.
К описанным выше общим принципам представления вещественных чисел необходимо добавить правила кодирования мантиссы и порядка. Эти правила могут отличаться для различных машин, и мы не будем их здесь рассматривать.
Таким образом, если сравнить между собой представление целых и вещественных чисел, то станет отчетливо видно, как сильно различаются числа, скажем, 3 и 3.0.
Желательно изложить
Беззнаковые целые числа. Хотя в математических задачах не так часто встречаются величины, принципиально не имеющие отрицательных значений, беззнаковые типы данных получили в ЭВМ большое распространение. Причина состоит в том, что в самой машине и программах для нее имеется много такого рода объектов: прежде всего адреса ячеек, а также всевозможные счетчики (количество повторений циклов, число параметров в списке или символов в тексте). К этому списку добавим наборы чисел, обозначающие дату и время, размеры графических изображений в пикселях. Все перечисленное выше принимает только целые и неотрицательные значения.
Минимальное значение для данного числового типа по определению равно 0, а максимальное состоит из единиц во всех двоичных разрядах, а потому зависит от их количества:
max- 2N- I, — где N — разрядность чисел.
Результат вычислений, например после умножения, при определенных условиях может потребовать для своего размещения большего количества разрядов, чем имеется на практике. Проблема выхода за отведенную разрядную сетку машины называется переполнением. Факт переполнения всегда фиксируется путем установки в единицу специального управляющего бита, который последующая программа имеет возможность проанализировать. Образно говоря, процессор заметит переполнение, но предоставляет программному обеспечению право принять решение реагировать на него или проигнорировать.
При сохранении вещественного числа некоторое неудобство вносит тот факт, что представление числа в плавающей форме не является единственным:
3 • 108= 30 • 107 = 0,3 • 109 = 0,03 • 1010 =…
Поэтому договорились для выделения единственного варианта записи числа считать, что мантисса всегда меньше единицы (т.е. целая часть отсутствует), а первый разряд содержит отличную от нуля цифру — в нашем примере обоим требованиям удовлетворит только число 0,3 • 109. Описанное представление чисел называется нормализованным и является единственным. Любое число легко нормализуется с помощью формального алгоритма.
Все сказанное о нормализации можно применять и к двоичной системе:
А = (±Л4) • 2±р, причем 1/2
Существенно, что двоичная мантисса всегда начинается с единицы (М > 1/2). Поэтому во многих ЭВМ эта единица даже не записывается в ОЗУ, что позволяет сохранить вместо нее еще один дополнительный разряд мантиссы (так называемая «скрытая единица»).
Примечание для учителей
Изложение, приведенное ранее в полных материалах билета (см. ссылку после вопроса), гораздо подробнее, чем это необходимо для ответа на экзамене, зато представляет собой достаточно полное систематическое описание вопроса. Автор надеется, что знание деталей будет полезно учителю при подготовке рассказа на уроке. В данной публикации сделана попытка выделить тот самый минимум, который ученику необходимо включить в свой ответ на экзамене.
Примечания для учеников
При ответе надо быть готовым к дополнительным вопросам об обосновании тех или иных утверждений. Например, каковы максимальное и минимальное значения 8-битного целого числа со знаком и почему их модули не равны.
Как обычно, при подготовке вопроса необходимо продумать и подобрать примеры к своему рассказу.
Ссылка на материалы по вопросу
Полный текст материалов вопроса опубликован в «Информатике» № 11, 2003, с. 9 — 13.
2. Логическая схема триггера. Использование триггеров в оперативной памяти
Базовые понятия
Триггер.
Входы для сброса и установки триггера, прямой и инверсный выходы.
Статическое (на триггерах) и динамическое (на базе конденсаторов) ОЗУ.
Обязательно изложить
Триггер — это электронная схема, которая может находиться в одном из двух устойчивых состояний; последним условно приписывают значения 0 и 1. При отсутствии входных сигналов триггер способен сохранять свое состояние сколь угодно долго. Таким образом, из определения следует, что триггер способен хранить ровно 1 бит информации.
Можно без преувеличения сказать, что триггер является одним из существенных узлов ЭВМ. Как правило, некоторое количество триггеров объединяют вместе, при этом полученное устройство называется регистром.
Рассмотрим логическое устройство триггера. На рисунке а приведена простейшая схема триггера, а на рисунке б показано его обозначение на схемах как единого функционального узла.
Q
Начнем с расшифровки обозначений входов и выходов. Триггер имеет два входа — S (от англ. Set — установка) и R (Reset — сброс), которые используются соответственно для установки триггера в единичное и сброса в нулевое состояния. Вследствие таких обозначений рассматриваемую схему назвали RS-триггером. Один из выходов, обозначенный на схеме Q, называется прямым, а противоположный выход — инверсным (это показывает черта над Q, которая в математической логике обозначает отрицание). За единичное состояние триггера договорились принимать такое, при котором
Q=i-
Обратимся теперь к рисунку а. Видно, что триггер состоит из двух одинаковых двухвходовых логических элементов ИЛИ-НЕ (ИЛИ обозначается символом 1 внутри элемента, а отрицание НЕ — небольшим кружочком на его выходе), соединенных определенным
2004 № 16 ИНФОРМАТИКА
Готовимся к экзамену по информатике
Е.А. Еремин, В.И. Чернатынский, А.П. Шестаков,
Продолжение. См. № Л 0-15/2004
БИЛЕТ № 13
1. Понятие алгоритма. Свойства алгоритма. Исполнители алгоритмов (назначение, среда, режим работы, система команд). Компьютер как формальный исполнитель алгоритмов (программ).
2. Позиционные и непозиционные системы счисления. Запись чисел в позиционных системах счисления.
3. Практическое задание. Решение простейшей оптимизационной задачи в среде электронных таблиц. |
I________________________________________________I
1. Понятие алгоритма. Свойства алгоритма. Исполнители алгоритмов (назначение, среда, режим работы, система команд). Компьютер как формальный исполнитель алгоритмов (программ)
Базовые понятия
продолжение
--PAGE_BREAK--Алгоритм — понятное и точное указание исполнителю совершить последовательность действий, направленных на решение поставленной задачи.
Свойства алгоритма: дискретность, понятность, определенность, результативность, корректность, массовость.
Исполнитель — человек или автоматическое устройство, которое выполняет алгоритмы.
Система команд, режим работы исполнителя.
Обязательно изложить
Наша жизнь буквально насыщена алгоритмами. Вспомним кулинарные рецепты, инструкции к сложной бытовой технике, умножение «столбиком» и деление «уголком», перевод из десятичной системы в двоичную и множество других примеров.
Алгоритм — это правила, описывающие процесс преобразования исходных данных в требуемый результат. Чтобы произвольные правила действительно были алгоритмом, они должны обладать следующими свойствами.
Дискретность. Процесс решения задачи должен быть разбит на четкую последовательность отдельных шагов, каждый из которых принято называть командой.
Понятность. Каждая команда алгоритма должна быть понятна тому, кто исполняет алгоритм; в противном случае она (и, следовательно, весь алгоритм в целом) не может быть выполнена. В информатике часто говорят, что все команды алгоритма должны входить в систему команд исполнителя.
Определенность. Команды, образующие алгоритм, должны быть предельно четкими и однозначными, все
г. Пермь
возможности должны быть заранее предусмотрены и оговорены. Для заданных исходных данных результат не может зависеть от какой-либо дополнительной информации извне алгоритма.
Результативность. Правильный алгоритм не может обрываться безрезультатно из-за какого-либо непреодолимого препятствия в ходе выполнения. Кроме того, любой алгоритм должен завершиться за конечное число шагов.
Корректность. Решение должно быть правильным для любых допустимых исходных данных.
Массовость. Алгоритм имеет смысл разрабатывать только в том случае, когда он будет применяться многократно для различных наборов исходных данных.
Исполнитель — фундаментальное понятие информатики. Оно входит в определение алгоритма.
Исполнители алгоритмов необычайно разнообразны. Исполнителем словесных инструкций (алгоритмов) является человек. Многие окружающие нас автоматические устройства тоже действуют в соответствии с определенными алгоритмами (выключающийся по достижении определенной температуры воды электрический чайник, турникет в метро, современная многопрограммная стиральная машина и многие другие). Компьютер тоже является исполнителем, возможности которого необычайно широки.
Каковы наиболее важные черты исполнителей?
Во-первых, состояние каждого исполнителя описывается определенными характеристиками. Полный набор характеристик, описывающий состояние исполнителя, и обстановка, в которой он действует, принято называть средой данного исполнителя.
Во-вторых, любой исполнитель имеет собственный строго определенный набор команд. В учебниках его обычно называют системой команд исполнителя, или сокращенно СКИ. Исполнитель не способен выполнить ни одной команды, которая не попадает в его СКИ, даже если введенная команда отличается от существующей всего лишь единственной неправильно написанной буквой.
Но и синтаксически правильная команда при некоторых условиях не может быть выполнена. Например, невозможно произвести деление, если делитель равен нулю, или нельзя осуществить команду движения вперед, когда робот уперся в стену. Отказ в подобной ситуации можно сформулировать как «не могу» (в отличие от «не понимаю» в случае синтаксической ошибки в записи команды). Следовательно, каждая команда в СКИ должна иметь четко оговоренные условия ее выполнения; все случаи аварийного прерывания команды из-за нарушения этих условий должны быть тщательно оговорены.
Третьей важной особенностью исполнителей является наличие различных режимов его работы; перечень режимов у каждого исполнителя, естественно, свой. Для большинства учебных исполнителей особо выделяют режимы непосредственного и программного управления1. В первом случае исполнитель ожидает команд от человека и каждую немедленно выполняет. Во втором исполнителю сначала задается полная последовательность команд (программа), а затем он исполняет ее в автоматическом режиме. Большинство исполнителей могут работать в обоих режимах.
И в заключение небольшое замечание по последней части вопроса. Если внимательно проанализировать свойства алгоритмов, то становится очевидным, что для выполнения алгоритма вовсе не требуется ею понимание, а правильный результат может быть получен путем формального и чисто механического следования алгоритму. Отсюда вытекает очень важное практическое следствие: поскольку осознавать содержание алгоритма не требуется, его исполнение вполне можно доверить автомату или ЭВМ. Таким образом, составление алгоритма является обязательным этапом автоматизации любого процесса. Как только разработан алгоритм, машина может исполнять его лучше человека.
Желательно изложить
Термин «алгоритм» имеет интересное историческое происхождение. В IX веке великий узбекский математик аль-Хорезми разработал правила арифметических действий над десятичными числами, которые в Европе стали называть «алгоризмами». Впоследствии слово трансформировалось до известного нам сейчас вида и, кроме того, расширило свое значение: алгоритмом стали называть любую последовательность действий (не только арифметических), которая приводит к решению той или иной задачи.
Помимо простейших «бытовых» алгоритмов, можно выделить еще три крупных разновидности алгоритмов: вычислительные, информационные и управляющие. Первые, как правило, работают с простыми видами данных (числа, векторы, матрицы), но зато процесс вычисления может быть длинным и сложным. Информационные алгоритмы, напротив, реализуют сравнительно небольшие процедуры обработки (например, поиск элементов, удовлетворяющих определенному признаку), но для больших объемов информации. Наконец, управляющие алгоритмы непрерывно анализируют информацию, поступающую от тех или иных источников, и выдают результирующие сигналы, управляющие работой тех или иных устройств.
Компьютер имеет не только собственную систему команд, но и свой алгоритм работы. Рассмотрим подробнее, как он выполняет отдельные операции и как реализуется вся программа в целом.
Каждая программа состоит из отдельных машинных команд. Каждая машинная команда, в свою очередь, делится на ряд элементарных унифицированных состав-
1 Аналогичные режимы издавна существовали в языке Бейсик, где строка без номера немедленно исполнялась интерпретатором, а с номером — заносилась в память для последующего исполнения; нечто похожее существует и в более поздних версиях под MS-DOS, реализованных в виде компиляторов.
ных частей, которые принято называть тактами (помните термин «тактовая частота процессора»? — он происходит именно отсюда!). В зависимости от сложности команды, она может быть реализована за разное количество тактов.
При выполнении каждой команды ЭВМ проделывает определенные стандартные действия, описанные ниже.
1. Согласно содержимому счетчика адреса команд (специального регистра, постоянно указывающего на ячейку памяти, в которой хранится следующая команда) считывается очередная команда программы.
2. Счетчик команд автоматически изменяется так, чтобы в нем содержался адрес следующей команды. В простейшем случае для этой цели достаточно к текущему значению счетчика прибавить некоторую константу, определяющуюся длиной команды.
3. Считанная операция расшифровывается, извлекаются необходимые данные, над ними выполняются требуемые действия и, если это предусмотрено операцией, производится запись результата в ОЗУ.
4. Все описанные действия циклически повторяются с п. 1.
Рассмотренный основной алгоритм работы ЭВМ позволяет шаг за шагом выполнить хранящуюся в ОЗУ программу.
Примечания для учителей
Данный вопрос по сравнению с экзаменом 9-го класса объединяет два билета — об алгоритмах и об исполнителях. Поэтому в конце данных материалов вы увидите две ссылки на предыдущие публикации.
В отличие от экзамена в 9-м классе, выпускников можно с некоторой осторожностью спрашивать не о конкретном исполнителе, но об их общих свойствах. Об осторожности говорю потому, что умение обобщать есть достаточно сложный навык, и, к сожалению, в окружающей нас повседневной жизни, где логика видна все меньше, он развивается все слабее и слабее.
Возможно, не все учителя считают нужным излагать материал об основном алгоритме работы ЭВМ. Тем не менее, обосновывая формальность исполнения программы, о нем желательно сказать.
Примечания для учеников
Вопрос о свойствах алгоритма имеет фундаментальное значение в курсе информатики любого уровня. Поэтому при подготовке данного вопроса мы рекомендуем заучить названия всех свойств2. В то же время объяснение всех свойств, как обычно, необходимо разобрать и дополнить примерами.
При подготовке вопроса обязательно повторите особенности и систему команд исполнителей и языков программирования, которые вы изучали на уроках. Сопоставьте эти сведения с приведенным выше материалом и подберите примеры, которые вы включите в свой экзаменационный ответ.
2 Б порядке исключения, так как обычно, напротив, всегда призывали к осмысленному запоминанию материала, а не заучиванию
Готовимся к экзамену по информатике
Е.А. Еремин, В.И. Чернатынский, А.П. Шестаков,
г. Пермь
Продолжение. См. № 10—15/2004
БИЛЕТ № 15
1. Алгоритмическая структура «ветвление». I Команда ветвления. Примеры полного и неполного | ветвления.
2. Двоичное кодирование текстовой информации, i Различные кодировки кириллицы.
3. Практическое задание. Формирование запроса I на поиск данных в среде системы управления база- | ми данных.
1. Алгоритмическая структура «ветвление». Команда ветвления. Примеры полного и неполного ветвления
Базовые понятия
Алгоритм, ветвление, условие, полное ветвление и неполное ветвление.
Обязательно изложить
При составлении алгоритмов решения разнообразных задач часто бывает необходимо обусловить те или иные предписания, т.е. поставить их выполнение в зависимость от результата, который достигается на определенном шаге исполнения алгоритма. Например, алгоритм нахождения корней квадратного уравнения с помощью компьютера должен содержать проверку знака дискриминанта. Лишь в том случае, когда дискриминант положителен или равен нулю, можно проводить вычисление корней. Алгоритм перемещения в заданный пункт по улицам города обязательно должен содержать предписание проверки сигналов светофоров на пересечениях улиц, поскольку они обусловливают движение на перекрестках. Можно привести еще много примеров подобных ситуаций, которые не имеют решения в рамках структуры «следование». По этой причине в теории алгоритмов наряду со «следованием» предлагается вторая базовая структура, называемая «ветвление». Эта структура предполагает формулировку и предварительную проверку условий с последующим выполнением тех или иных действий, реализуя альтернативный выбор.
В словесной форме представления алгоритма «ветвление» реализуется в виде команды:
ЕСЛИ то ИНАЧЕ
Здесь — это логическое выражение, — описание последовательности действий,
которые должны выполняться, когда принимает значение ИСТИНА, — описание последовательности действий, которые должны выполняться, когда принимает значение ЛОЖЬ. Любая из серий может быть пустой. В этом случае ветвление называется неполным. Каждая серия может, в свою очередь, содержать команду ветвления, что позволяет реализовать не только альтернативный выбор действий.
Если для представления алгоритма используется блок-схема, структура «ветвление» изображается так:
Полное ветвление Неполное ветвление
В языке программирования Turbo Pascal структура ветвления изображается оператором:
IF THEN ELSE ;
Здесь и — последовательности операторов языка Turbo Pascal, заключенные в операторные скобки BEGIN… END.
Рассмотрим пример использования структуры «ветвление». Одной из типичных задач информатики является задача сортировки: упорядочения по возрастанию или убыванию величин порядкового типа. Составим алгоритм и программу сортировки списка из двух фамилий, используя неполное ветвление.
Алгоритм
/ *'Y /
i Г
Конец
2004 № 17 ИНФОРМАТИКА
Программа
PROGRAM SORT;
VAR X,Y,C: STRING;
BEGIN
WRITELN (-'Введи две фамилии'); READLN(X,Y); IF X > Y THEN BEGIN
С := X; X := Y; Y := С END;
WRITELN('После сортировки'); WRITELN (X); WRITELN (Y) END.
Рассмотрим теперь в качестве примера использования полного ветвления алгоритм и программу вычисления отношения двух чисел с блокировкой деления на ноль и выводом соответствующего сообщения на экран монитора.
Алгоритм
Программа
PROGRAM REL; VAR А, В, С: REAL; BEGIN
WRITELN('Введи 2 числа'); READLN(А, В); IF В О О THEN
BEGIN
С := А/В; WRITELN('С = ', С) END ELSE
WRITELN('ДЕЛЕНИЕ HA 0') END.
Ссылка на материалы вопроса
1. Угринович Н. Информатика и информационные технологии. Учебное пособие для 10—11-х классов. Углубленный курс. М.: Лаборатория Базовых Знаний, 2000, 440 с.
2. Семакин И., Залогова А., Русаков С., Шестакова Л. Базовый курс для 7—9-х классов. М.: Лаборатория Базовых Знаний, 2001, 384 с.
2. Двоичное кодирование текстовой информации. Различные кодировки кириллицы
Базовые понятия
Код, кодирование, двоичное кодирование, символ, код символа, кодировочная таблица.
Обязательно изложить
Если каждому символу какого-либо алфавита сопоставить определенное целое число, то с помощью двоичного кода можно кодировать и текстовую информацию. Для хранения двоичного кода одного символа может быть выделен 1 байт = 8 бит. Учитывая, что каждый бит принимает значение 0 или 1, количество их возможных сочетаний в байте равно 28 = 256. Значит, с помощью 1 байта можно получить 256 разных двоичных кодовых комбинаций и отобразить с их помощью 256 различных символов. Такое количество символов вполне достаточно для представления текстовой информации, включая прописные и заглавные буквы русского и латинского алфавита, цифры, знаки, псевдографические символы и т.д. Кодирование заключается в том, что каждому символу ставится в соответствие уникальный десятичный код от 0 до 255 или соответствующий ему двоичный код от 00000000 до 11111111. Таким образом, человек различает символы по их начертанию, а компьютер — по их коду. Важно, что присвоение символу конкретного кода — это вопрос соглашения, которое фиксируется в кодовой таблице. Кодирование текстовой информации с помощью байтов опирается на несколько различных стандартов, но первоосновой для всех стал стандарт ASCII (American Standard Code for Information Interchange), разработанный в США в Национальном институте ANSI (American National Standards Institute). В системе ASCII закреплены две таблицы кодирования — базовая и расширенная. Базовая таблица закрепляет значения кодов от 0 до 127, а расширенная относится к символам с номерами от 128 до 255. Первые 33 кода (с 0 до 32) соответствуют не символам, а операциям (перевод строки, ввод пробела и т.д.). Коды с 33-го по 127-й являются интернациональными и соответствуют символам латинского алфавита, цифрам, знакам арифметических операций и знакам препинания. Коды с 128-го по 255-й являются национальными, т.е. в национальных кодировках одному и тому же коду соответствуют различные символы.
В языках, использующих кириллический алфавит, в том числе русском, пришлось полностью менять вторую половину таблицы ASCII, приспосабливая ее под кириллический алфавит. В частности, для представления символов кириллицы используется так называемая «альтернативная кодировка».
В настоящее время существует несколько различных кодовых таблиц для русских букв (КОИ-8,
2004 № 17 ИНФОРМАТИКА
СР-1251, СР-866, Mac, ISO), поэтому тексты, созданные в одной кодировке, могут неправильно отображаться в другой.
После появления ОС Windows от фирмы Microsoft выяснилось, что альтернативная кодировка по некоторым причинам для нее не подходит. Передвинув русские буквы в таблице (появилась возможность — ведь псевдографика в Windows не требуется), получили кодировку Windows 1251 (Win-1251).
В настоящее время все большее число программ начинает поддерживать шестнадцатибитовый стандарт Unicode, который позволяет кодировать практически все языки и диалекты жителей Земли в силу того, что кодировка включает в себя 65 536 различных двоичных кодов.
продолжение
--PAGE_BREAK--Международная организация по стандартизации (International Organization for Standardization, или IOS) разработала свой код, способный соперничать с Unicode. Здесь для кодирования символов используется комбинация из 32 бит.
Желательно изложить
Кодирование и шифрование текста — исторический подход.
Перевод текста из одной кодировки в другую.
Ссылка на материалы вопроса
«Информатика» № 12, 2003, с. 3 — 5.
3. Практическое задание. Формирование запроса на поиск данных в среде системы управления базами данных
Принципы составления задания
Для организации запросов нужно предложить готовую базу данных, не требуя ее заполнения. Запросов должно быть несколько', причем их можно дифференцировать по сложности для отметок «удовлетворительно', „хорошо“, „отлично“.
Учащиеся должны продемонстрировать умение создавать как простые запросы, так и с использованием логических операций и некоторых простейших функций изучаемой СУБД.
Примеры заданий
В качестве вариантов заданий можно использовать материалы задачника-практикума „Информатика. Задачник-практикум в 2 т.“ / Под ред. И.Г. Семакина, Е.К. Хеннера. Т. 1, 2. М.: Лаборатория Базовых Знаний, 1999.
Примеры запросов можно посмотреть в статье: Брызгалов Е.В., Шестаков А.П. Уроки по Access // Информатика и образование № 7, 2000, с. 18—29.
Ссылка на материалы
»Информатика" № 16, 2002, с. 13—22.
БИЛЕТ № 16
1. Алгоритмическая структура «цикл». Циклы со I счетчиком и циклы по условию
I 2. Двоичное кодирование графической информа- I | ции. Растр. Пиксель. Глубина цвета
I 3. Задача на определение количества информа- I I ции и преобразование единиц измерения количест- i. ва информации1. Алгоритмическая структура «цикл». Циклы со счетчиком и циклы по условию
Базовые понятия
Цикл — последовательность команд (серия, тело цикла), которая может исполняться многократно для разных значений данных до удовлетворения некоторого условия.
Циклы с неопределенным количеством повторений (по условию) и с параметром (счетчиком).
Обязательно изложить
Цикл является одним из трех базовых алгоритмических элементов, на основе которых, согласно теории, можно построить любой алгоритм. Значение цикла в практическом программировании необычайно велико — как правило, программа пишется лишь тогда, когда те или иные действия требуется совершить многократно для различных значений данных. (В самом деле, если необходимо провести однократное вычисление по формуле разумной сложности, это быстрее и проще сделать на калькуляторе.)
Циклы бывают двух принципиально различных типов: с предопределенным и с заранее неизвестным числом повторений. В первом случае из условия задачи известно, сколько раз цикл будет выполнен: например, найти сумму первых десяти членов числового ряда. Во втором — количество повторений будет зависеть от результатов вычислений и поэтому определится только в ходе работы программы: примером может служить нахождение суммы ряда с заданной точностью, когда вычисления прекращаются, если очередное слагаемое не превышает требуемой погрешности. Внимательно сравните два приведенных выше примера, и вы, несомненно, почувствуете разницу.
Для полноты классификации следует добавить, что цикл с условием, в свою очередь, тоже может реализовываться двумя способами. В первом варианте в начале цикла поверяется условие, а затем, если оно истинно, выполняются операторы цикла и происходит возврат на новую проверку; поскольку здесь условие предшествует содержимому цикла, то в литературе его принято называть циклом с предусловием. Во втором варианте, напротив, сначала цикл выполняется, а затем
проверяется условие его завершения: в случае ложности цикл повторяется (иначе заканчивается); такой цикл, когда условие ставится после операторов содержимого, называют «с постусловием». Чаше всего только одна из названных разновидностей цикла наилучшим образом подходит к конкретной задаче. Например, если вы собираетесь удалить пробелы, стоящие в начале строки, то, скорее всего, выберете цикл с предусловием, потому что надо сначала убедиться, что пробел имеется, и только затем его удалять (глупо поступать наоборот — сначала удалять, а потом проверять, стоило ли это делать, хотя в практической жизни такая, с позволения сказать, логика порой встречается...). Зато ввод текста до точки трудно построить иначе как с постусловием, поскольку сначала требуется ввести очередной символ и только потом сравнивать его с точкой.
Часто одни и те же действия требуется выполнить для различных значений параметра: типичная ситуация — подставить числа от 1 до 10 в какую-нибудь формулу. Для решения такого типа задач лучше всего подойдет цикл с параметром, который возьмет на себя автоматическое изменение переменной цикла и ее сравнение с окончательным значением.
Завершая ответ, необходимо продемонстрировать все перечисленные виды циклов на том языке, который использовался на уроках (блок-схема, алгоритм для исполнителя, язык программирования). По понятным причинам мы не можем здесь предугадать все возможности.
Желательно изложить
Циклы с неопределенным количеством повторений, как правило, не имеют каких-то существенных особенностей реализации в различных языках. А вот цикл с параметром (FOR), напротив, часто обладает теми или иными специфическими свойствами. Например, в языке Бейсик, где параметром цикла может быть только числовая переменная (но зато любого типа), разрешается цикл от 0 до 1 с дробным шагом изменения 0.1. В Паскале параметр цикла не обязательно числовой, но зато он должен являться порядковым (иметь конечный упорядоченный набор допустимых значений). Таким образом, можно строить циклы по целым, символьным (CHAR), логическим, заданным перечнем своих значений и некоторым другим типам переменных, но зато запрещено использование вещественных значений1. Фактически в Паскале при каждом новом исполнении цикла берется или следующее, или предыдущее в используемом типе значение. В языке Си цикл FOR еще более интересный. Его заголовок фактически содержит три части: действия по инициализации, действия по проверке окончания цикла и,
1 Хотя бы потому, что для вещественных чисел не определено понятие «следующий»: в самом деле, какое значение следует после 1.1 — 1.2, 1.11 или 1.101?
наконец, действия после каждой итерации. Характерной особенностью является возможность иметь в каждой части произвольное количество операторов, включая вариант их отсутствия. Например,
for (i = 0, j = n — 1; i
Настолько общий подход позволяет вообще написать цикл без содержимого: например, сам оператор организации цикла
for (s=0, i = 1; i
Примечание. Ярые приверженцы Си последние два оператора никогда не напишут иначе, чем s += i, i++, давая возможность компилятору составить чуть более эффективную программу. Но мне хотелось сделать текст более удобочитаемым для тех, чье мышление не связано с конкретными комбинациями значков.
Разумеется, рассказанный в предыдущем абзаце материал не предназначен для включения в ответ целиком. Просто подчеркнуто, что ученику желательно раскрыть особенности цикла FOR в том языке, который он изучал (а приведенные примеры просто указывают те места, где эти особенности надо искать).
И в заключение еще одно важное с практической точки зрения замечание. При некорректной организации некоторых циклов может возникнуть эффект так называемого «зацикливания», когда действия внутри цикла не могут создать условия, требующиеся для его завершения. Следует всячески избегать подобных ситуаций путем тщательного анализа условий работы цикла.
Примечание для учителей
В литературе обычно используется термин «цикл с параметром», а не «цикл со счетчиком».
Примечание для учеников
Как обычно, при подготовке вопроса необходимо продумать и подобрать на изученном языке примеры циклических алгоритмов. Вне зависимости от языка при ответе желательно использовать блок-схемы.
2. Двоичное кодирование графической информации. Растр. Пиксель. Глубина цвета
Базовые понятия
Растр — специальным образом организованная совокупность точек, на которой представляется изображение.
Пиксель — логический элемент изображения.
Обязательно изложить
Людям издавна хотелось зафиксировать окружающие их предметы и события в виде наглядных графических изображений. Свидетельством этому являются рисунки со сценами охоты на стенах пещер, планы местности и многое другое. Важными техническими шагами в данном направлении явились изобретение
практической деятельности (ссылка есть выше) необходимо проследить все этапы решения содержательной задачи — с исследования моделируемой предметной области и постановки задачи до интерпретации результатов, полученных в ходе вычислительного эксперимента. Для освоения полной технологической цепочки при решении конкретных задач следует выделять и подчеркивать соответствующие этапы работы.
Ссылка на материалы вопроса
«Информатика» № 14, 2003, с. 3 — 8.
2. Двоичное кодирование звуковой информации. Глубина кодирования и частота дискретизации
Базовые понятия
Дискретная и непрерывная форма представления информации. Аналого-цифровой и цифро-аналоговый преобразователи.
Дискретизация звукового сигнала по времени и амплитуде.
Теорема Найквиста для выбора частоты дискретизации звука.
Обязательно изложить
Звуковые сигналы в окружающем нас мире необычайно разнообразны. Для их записи с целью последующего воспроизведения необходимо как можно точней сохранить форму кривой зависимости интенсивности звука от времени. При этом возникает одна очень важная и принципиальная трудность: звуковой сигнал непрерывен, а компьютер способен сохранить в памяти пусть очень большое, но конечное число дискретных величин. Следовательно, в процессе записи звуковая информация должна быть «оцифрована», т.е. из аналоговой непрерывной формы переведена в цифровую дискретную. Данную функцию выполняет специальный блок, входящий в состав звуковой карты, который называется аналого-цифровой преобразователь — АЦП.
Каковы основные принципы работы АЦП?
Во-первых, он производит дискретизацию записываемого звукового сигнала по времени. Это означает, что измерение уровня интенсивности звука ведется не непрерывно, а, напротив, в определенные фиксированные моменты времени (удобнее, разумеется, через равные временные промежутки). Частоту, характеризующую периодичность измерения звукового сигнала, принято называть частотой дискретизации. Вопрос о ее выборе далеко не праздный, и ответ в значительной степени зависит от спектра сохраняемого сигнала: существует специальная теорема Найквиста, согласно которой частота «оцифровки» звука должна как минимум в 2 раза превышать максимальную частоту, входящую в состав спектра сигнала.
Во-вторых, АЦП производит дискретизацию амплитуды звукового сигнала. При измерении имеется «сетка» стандартных уровней (например, 256 или 65 536 — это количество характеризует глубину кодирования), и текущий уровень измеряемого сигнала округляется до ближайшего из них.
Итак, в ходе оцифровки звука мы получаем поток целых чисел, представляющих собой стандартные амплитуды сигналов через равные промежутки времени.
Изложенный метод преобразования звуковой информации для хранения в памяти компьютера в очередной раз подтверждает тезис о том, что любая информация для хранения в компьютере приводится к цифровой форме и затем переводится в двоичную систему. Теперь мы знаем, что и звуковая информация не является исключением из этого фундаментального правила.
Остается рассмотреть обратный процесс — воспроизведение записанного в компьютерный файл звука. Здесь имеет место преобразование в противоположном направлении — из дискретной цифровой формы представления сигнала в непрерывную аналоговую, поэтому вполне естественно соответствующий узел компьютерного устройства называется ЦАП — цифро-аналоговый преобразователь. Процесс реконструкции первоначального аналогового сигнала по имеющимся дискретным данным нетривиален, поскольку никакой информации о форме сигнала между соседними отсчетами не сохранилось. В разных звуковых картах для восстановления звукового сигнала могут использоваться различные способы. Наиболее наглядный и понятный из них состоит в том, что по имеющимся точкам рассчитывается степенная функция, проходящая через заданные точки, которая и принимается в качестве формы аналогового сигнала.
Желательно изложить
Из курса физики известно, что звук есть колебания среды. Чаще всего средой является воздух, но это совсем не обязательно. Например, звук прекрасно распространяется по поверхности земли: именно поэтому в приключенческих фильмах герои, стараясь услышать шум погони, прикладывают ухо к земле. Напротив, существует весьма эффектный школьный физический опыт, который показывает, что при откачивании воздуха мы перестаем слышать звук находящегося под герметичным колпаком звонка. Важно также подчеркнуть, что существует определенный диапазон частот, к которому принадлежат звуковые волны: примерно от нескольких десятков герц до величины немного более 20 кГц1. Значения этих границ определяются возможностями человеческого слуха.
1 Интересно сопоставить характерные звуковые частоты с тактовой частотой типового микропроцессора — различие составляет примерно 6 порядков, что говорит об огромных возможностях компьютера в обработке звуковой информации.
БИЛЕТ № 17
1. Технология решения задач с помощью компьютера! | (моделирование, формализация, алгоритмизация, програм-1 мирование). Показать на примере задачи (математической, физической, экономической, экологической). ' 2. Двоичное кодирование звуковой информации. I | Глубина кодирования и частота дискретизации.3. Задача. Составление таблицы истинности для ло-| I гической функции, содержащей операции отрицания, (инверсию), умножения (конъюнкцию), сложения
I (дизъюнкцию).
1. Технология решения задач с помощью компьютера (моделирование, формализация, алгоритмизация, программирование). Показать на примере задачи (математической, физической, экономической, экологической)
Базовые понятия
Модель, идеальная и материальная модель, моделирование, компьютерное моделирование, математическое моделирование, этапы компьютерного моделирования, формализация, компьютерный эксперимент, алгоритм, программа, тестирование и отладка программы.
Обязательно изложить
В решении любой содержательной задачи с использованием компьютера можно выделить ряд этапов.
Первый этап — определение целей моделирования. Основные из них таковы:
• понять, как устроен конкретный объект, какова его структура, основные свойства, законы развития и взаимодействия с окружающим миром (согласно этой цели моделирования получают описательную, или дескриптивную, модель);
• научиться управлять объектом (или процессом) и определить наилучшие способы управления при заданных целях и критериях (оптимизационные и многокритериальные модели);
• научиться прогнозировать прямые и косвенные последствия воздействия на объект (игровые и имитационные модели).
После этого переходят к формализации объекта (процесса), результатом которой и будет в нашем случае модель (математическая или информационная).
Содержательное описание процесса обычно самостоятельного значения не имеет, а служит лишь основой для дальнейшей формализации этого процесса — построения формализованной схемы и модели процесса.
Формализованная схема является промежуточным звеном между содержательным описанием и моделью и разрабатывается в тех случаях, когда из-за сложности исследуемого процесса переход от содержательного описания к модели оказывается невозможным.
Моделирование — процесс построения формальной модели реального явления и ее использование в целях исследования моделируемого явления.
Когда модель сформулирована, выбирается метод и инструментальное средство ее исследования. В зависимости от формализованной постановки задачи в качестве такого средства может выступать либо пакет прикладных программ, либо собственноручно составленная программа.
Если в качестве средства решения задачи' выступает тот или иной язык программирования (впрочем, это актуально и для математических пакетов), следующий этап — разработка алгоритма и составление программы для ЭВМ (понятия алгоритма и программы подробно рассматриваются в билете 13, вопрос 1; а основы алгоритмического программирования — в билете 2, вопрос 2).
продолжение
--PAGE_BREAK--После составления программы решаем с ее помощью простейшую тестовую задачу с целью устранения грубых ошибок.
Если результаты соответствуют экспериментальным данным или нашим интуитивным представлениям, проводят расчеты по программе, данные накапливаются и соответствующим образом обрабатываются. Чаще удобной для восприятия формой представления результатов являются не таблицы значений, а графики, диаграммы. Иногда численные значения пытаются заменить аналитически заданной функцией, вид которой определяет экспериментатор. Результаты анализа и обработки полученных данных в конечном итоге попадают в отчет о проделанном эксперименте.
Примеры решения содержательных задач из различных областей см.: Шестаков А.П. Профильное обучение информатике в старших классах средней школы (10—11-е классы) на основе курса «Компьютерное математическое моделирование» (КММ) // «Информатика» № 34, 36, 38, 40, 42, 44, 46, 48/2002.
Желательно изложить
История развития технологии решения задач с использованием ЭВМ.
Примечание для учителей
Чаще всего задачи на программирование предлагаются учащимся уже в формализованном виде. На примере ряда моделей из различных областей науки и
Для высококачественного воспроизведения звука верхнюю границу обычно с некоторым запасом принимают равной 22 кГц. Отсюда из теоремы Найквис-та следует, что частота звукозаписи в таких случаях (например, при записи музыкальных компакт-дисков) должна быть не ниже 44 кГц2. Часто такое высокое качество не требуется, и частоту дискретизации можно значительно снизить. Например, при записи речи вполне достаточно частоты дискретизации 8 кГц. Заметим, что результат при этом получается хотя и не блестящий, но легко разборчивый3 — вспомните, как вы слышите голоса своих друзей по телефону.
При оцифровке звука напрашивается линейная зависимость между величиной входного сигнала и номером уровня. Иными словами, если громкость возрастает в 2 раза, то интуитивно ожидается, что и соответствующее ему число возрастет вдвое. В простейших случаях так и делается, но это не самое лучшее решение. Причина в том, что в широком диапазоне громкости звука человеческое ухо не является линейным. Например, при очень громких звуках (когда «уши закладывает» ) увеличение или уменьшение интенсивности звука почти не дает эффекта, в то время как при восприятии шепота очень незначительное падение уровня может приводить к полной потере разборчивости. Поэтому при записи цифрового звука, особенно при 8-битном кодировании, часто используют различные неравномерные распределения уровней громкости, в основе которых лежит логарифмический закон (ц-law, A-law и другие).
Примечание для учителей
Мы рассмотрели процессы преобразования естественных звуков к виду, пригодному для хранения в компьютере, и последующего их восстановления при воспроизведении. Разумеется, не следует требовать от учеников на экзамене большего. Тем не менее назовем некоторые интересные вопросы, связанные с компьютерной обработкой звуковой информации, которые полезно знать любому грамотному пользователю. Это прежде всего сжатие (кто ни разу не использовал файлы МРЗ?), MIDI-запись музыки в виде необычайно компактных «нотных» команд для инструментов, форматы звуковых файлов и их особенности, возмолшости компьютеров в редактировании фонограмм (фильтрация, удаление помех и т.п.) и другие не менее важные и интересные темы.
Примечание для учеников
Автор советует при подготовке к экзамену прочитать полный материал вопроса, снабженный интересными примерами и иллюстрациями.
2 Обычно используется значение 44 032 Гц, которое делится нацело на 256.
3 Известно, что высокие частоты в основном влияют на «окраску» (тембр) человеческого голоса.
Ссылка на материалы по вопросу
Подробные материалы опубликованы в «Информатике» № 14, 2003. Электронная версия имеется на сайте редакции по адресу http:/ /inf.lsepteniber.ru/ eremin/emc/theory/info/Ъ17__2.html.
По поводу непрерывной и дискретной информации можем порекомендовать почитать ответ на «старый вопрос 3 билета 10, опубликованный в „Информатике“ № 14, 2003 (также доступно в Интернете по ссылке из списка литературы предыдущего вопроса).
3. Задача. Составление таблицы истинности для логической функции, содержащей операции отрицания (инверсию), умножения (конъюнкцию), сложения (дизъюнкцию)
Теоретический материал к этому заданию содержится в билете № 23, вопрос 2. Тему предлагаемых практических заданий можно сформулировать так: доказать ряд основных законов алгебры логики путем построения таблицы истинности для обеих частей равенств, которые эти законы выражают.
Вариант 1. Доказать распределительный закон:
~Х и Y • Z = (X u F) • (~Х u Z)
Решение. Построим таблицу истинности, придавая возможные значения логическим переменным (1 — истина, 0 — ложь) и пользуясь соглашением о приоритете логических операций (НЕ, И, ИЛИ в порядке БИЛЕТ № 18 I
I 1. Программные средства и технологии обработ-| ки текстовой информации (текстовый редактор, | текстовый процессор, редакционно-издательские i системы).
2. Алгоритмическая структура
3. Задача. Перевод десятичных чисел в двоичную,' I восьмеричную, шестнадцатеричную системы счис-1 | ления
1. Программные средства и технологии обработки текстовой информации (текстовый редактор, текстовый процессор, редакционно-издательские системы)
Базовые понятия
Текстовый редактор, текстовый процессор, настольная издательская система, документ, основные элементы текстового документа, форматы текстовых документов.
Обязательно изложить
Текстовые редакторы (процессоры} относятся к программному обеспечению общего назначения, они предназначены для создания, редактирования, форматирования, сохранения во внешней памяти и печати текстовых документов. Обычно текстовыми редакторами принято называть программы, выполняющие простейшие операции по редактированию текста, а процессорами — программы, обладающие расширенными по сравнению с редакторами средствами для компьютерной обработки текста. Современные текстовые процессоры по своим функциональным возможностям приближаются к издательским системам — пакетам программ, предназначенным для верстки газет, журналов, книг.
Основные функции текстовых процессоров:
• создание документов;
• редактирование;
• сохранение документов во внешней памяти (на дисках) и чтение из внешней памяти в оперативную;
• форматирование документов;
• печать документов;
• составление оглавлений и указателей в документе;
• создание и форматирование таблиц;
• внедрение в документ рисунков, формул и др.;
• проверка пунктуации и орфографии.
Основными элементами текстового документа являются: символ, слово, строка, предложение, абзац, страница, документ.
Обычно текстовые процессоры предусматривают две основные операции изменения формата документа:
• форматирование произвольной последовательности символов (от одного до любого количества, чаще всего эта последовательность предварительно выделяется);
• форматирование абзацев.
При форматировании символов можно изменить:
• шрифт;
• начертание шрифта (полужирный, курсив, подчеркнутый);
• размер шрифта;
• межсимвольный интервал;
• применить к символам эффекты (нижний, верхний индекс, малые строчные буквы и т.д.).
При форматировании символов можно изменить:
• способ выравнивания строк абзаца (влево, вправо, по центру, по ширине);
• отступ в красной строке абзаца;
• ширину и положение абзаца на странице;
• межстрочное расстояние (интерлиньяж) и расстояние между соседними абзацами;
• создать специальные абзацы (маркированные или нумерованные списки и т.д.).
Наиболее распространенные форматы текстовых файлов: текстовый, Rich Text Format, текст DOS, документ Word, документ HTML.
Настольные компьютерные издательские системы широко используются в различных сферах производства, бизнеса, политики, науки, культуры, образования и др. С их помощью верстаются бюллетени, рекламные проспекты, газеты, книги и др.
Настольные издательские системы представляют собой комплекс аппаратных и программных средств, предназначенных для компьютерного набора, верстки и издания текстовых и иллюстративных материалов. Отметим, что с аппаратной точки зрения профессиональная работа с издательской системой требует прежде всего монитора с достаточно большой диагональю (19—25»), производительного видеоадаптера с достаточным объемом видеопамяти (порядка 256 Мб — 1 Гб), производительного процессора и объемного жесткого диска. Это связано с тем, что макет чаще всего содержит немало иллюстраций высокого качества, что и требует использования приведенных выше ресурсов.
Назовем некоторые издательские системы: Exdivss Publisher, Illustrator for Windows, Ventura Publisher, PageMaker, TeX (LaTeX) и др. Первые системы общего назначения, последняя предназначена прежде всего для верстки текста с преобладанием математических формул и используется многими научными физико-математическими журналами.
Для обработки изображений с целью внедрения их в текст, сверстанный в издательской системе, применяют такие графические пакеты, как CorelDraw, Adobe PhotoShop, и др.
Издательские системы реализованы практически для всех платформ и самых разнообразных операционных систем.
Желательно изложить
Правила компьютерного набора и оформления текстов.
Отличительные черты текстовых процессоров в разных операционных системах.
Дополнительные возможности текстовых процессоров как настольных издательских систем.
Кодирование текстовой информации. Кодировочные таблицы. Кодировки кириллицы.
Сканирование и распознавание текстовой информации.
Ссылка на материалы вопроса
«Информатика» № 14, 2003, с. 3 — 8.
2. Алгоритмическая структура «выбор» Базовые понятия
Оператор выбора (оператор множественного ветвления).
Обязательно изложить
Кроме условного оператора, в качестве управляющей структуры довольно часто используется оператор выбора. Эта алгоритмическая структура позволяет переходить на одну из ветвей в зависимости от значения заданного выражения (селектора выбора). Ее особенность состоит в том, что выбор выполняемых операторов здесь осуществляется не в зависимости от истинности или ложности логического выражения, а является вычислимым. Оператор выбора позволяет заменить несколько условных операторов (в силу этого его еще называют оператором, множественного ветвления).
В алгоритмической структуре «выбор» вычисляется выражение /с и выбирается ветвь, значение метки которой совпадает со значением k. После выполнения выбранной ветви происходит выход из конструкции выбрра (в СН—К в отличие от Turbo Pascal, такой выход не осуществляется, а продолжают выполняться последующие операторы, поэтому для принудительного завершения оператора выбора применятся оператор break). Если в последовательности нет метки со значением, равным значению выражения /с, то управление передается внешнему оператору, следующему за конструкцией выбора (это происходит в случае отсутствия альтернативы выбора; если она есть, то выполняется следующий за ней оператор, а уже затем управление передается внешнему оператору).
Запись оператора выбора: Turbo Pascal
case k of
Al: серия 1; A2: серия 2;
AN: серия N; else серия N + 1 end;
C++
switch (k)
{case Al:
case A2:
серия 1; break; серия 2; break;
case AN: серия N; break; default: серия N + 1;}
Любая из указанных серий операторов может состоять как из единственного оператора, так и нескольких (в этом случае, как обычно, операторы, относящиеся к одной метке, должны быть заключены в операторные скобки begin, .end — в Turbo Pascal и {..} -в C++).
Выражение /с здесь может быть любого порядкового типа (напомним, что к таким типам в языке Pascal относятся все целые типы, boolean, char, перечисляемый тип, диапазонный тип, базирующийся на любом из указанных выше типов).
Привести примеры задач с использованием оператора выбора.
Желательно изложить
Сравнительная характеристика условного оператора и оператора выбора.
Примечание для учителей
При изучении темы необходимо показать, какие преимущества имеет данный оператор перед условным, выявить ситуации, когда его целесообразно использовать.
Ссылка на материалы вопроса
1. «Информатика» № 14, 2003, с. 3 — 8.
2. comp-science.narod.ru/Progr/UsljCase.htm.
3. Перевод десятичных чисел в двоичную, восьмеричную, шестнадцатеричную системы счисления.
Теоретический материал к этой задаче содержится в билете № 13, вопрос 2. Примеры перевода с подробными пояснениями и варианты заданий можно найти на сайте http:\comp-science.narod.ru\ Progr\Syst_Sch.html и в газете «Информатика» № 19, 2002, с. 5—7.
БИЛЕТ № 19
Программные средства и технологии обработки |
| числовой информации (электронные калькуляторы I
| и электронные таблицы). Назначение и принципы i
I работы
2. Событийное объектно-ориентированное про-,
граммирование. Событийные и общие процедуры.
3. Компьютерные вирусы. Практическое зада- '
I ние. Исследование дискет на наличие вируса с по- I
I мощью антивирусной программы.
1. Программные средства и технологии обработки числовой информации (электронные калькуляторы и электронные таблицы). Назначение и принцип работы
Примечания для учителей
Сегодня хочется начать именно с примечаний, поскольку у автора текста этого ответа есть серьезные сомнения по поводу того, что именно надо рассказывать по данному вопросу. Следовательно, и содержимое остальных разделов будет существенным образом зависеть от того, что написано в примечании.
Согласно тексту вопроса, от нас требуется рассказать о двух технологиях обработки числовой информации на компьютере — на калькуляторе и с помощью электронной таблицы (обращаю ваше внимание на тот факт, что в тексте не содержится ни малейшего намека на существование других технологий даже с помощью традиционного «и т.д.»). Подобная постановка вопроса мне кажется неудачной как минимум по следующим причинам.
Существуют другие программные средства и технологии, причем не менее эффективные, чем электронные таблицы, позволяющие обрабатывать числовую информацию на современном компьютере. Тезис об электронной таблице Excel как о вершине обработки числовых данных по крайней мере неубедителен.
Стандартные учебники не обсуждают сформулированный вопрос в явном виде. Включать подобного типа вопросы в билеты некорректно как по отношению к ученикам, так и к учителям (откуда им взять информацию для объяснения?!).
Ответ на данный вопрос без литературы с помощью самостоятельных рассуждений затруднителен. Например, я честно скажу, что не готов описать принцип работы программы-калькулятора в Windows, если только под принципом не понимается описание способа набора чисел и порядка манипуляций при выполнении на нем арифметических действий1.
1 Словами «принцип работы программы» обычно принято обозначать описание внутренней логики устройства программы и методы, которыми она обрабатывает информацию; хотя, конечно, практические приемы использования можно назвать ' принципами работы с программой (знать бы, что именно авторы вопроса имели в виду...).
Итак, как можно поступить в данной ситуации? Возможно несколько путей.
1. Принять максимально простое толкование сформулированного вопроса: есть примитивный калькулятор, позволяющий выполнить небольшой объем вычислений, и есть электронные таблицы, которые дают возможность обработки большого количества чисел по одинаковым формулам.
2. Воспользоваться допустимым правом учителя в разумных пределах варьировать формулировку вопроса и, убрав упоминание о калькуляторах, оставить традиционный и понятный вопрос об электронных таблицах как технологии обработки числовой информации, их назначении и принципах работы.
3. Рассмотреть вопрос «в полной постановке», т.е. обсудить основные технологии обработки числовой информации и место электронных таблиц среди них. Материалы можно взять из предыдущей публикации (см. ссылку в конце вопроса).
Примечание. Как довольно отчетливо показала дискуссия о новом стандарте школьного, курса информатики, опубликованная недавно в газете, те, кто формулирует стратегические документы по содержанию курса, не особенно стремятся учитывать возможности и мнения учителей, которые эти документы воплощают в жизнь. По-моему, данный вопрос билета является одним из примеров такою сорта (будет и еще один подобный вопрос в билете 25). К счастью, в случае, когда формулировка отдельного вопроса билета из-за некоторой двусмысленности или непродуманности недостаточно ясна, учителя имеют возможность внести некоторые уточнения, которые сделают вопрос более понятным и подходящим для реальных учеников.
продолжение
--PAGE_BREAK--Базовые понятия
Технологии обработки числовой информации на современном компьютере. Электронные таблицы.
Обязательно изложить
ЭВМ была создана для обработки числовой информации. Более чем полувековое совершенствование вычислительной техники многократно увеличило ее возможности.
Бытующее мнение о том, что «умная» машина способна правильно выполнить любые вычисления и сделать это с абсолютной точностью, не всегда оказывается верным. Нежелание (а порой и неумение) учитывать применимость тех или иных методов к решаемой задаче и тем более их оптимальность, оценить достоверность полученных результатов на практике может приводить к конфузам. Например, о том, сколько знаков в выданном компьютером ответе являются достоверными, задумываются немногие: «машина не может ошибаться!» — единодушно (и в чем-то даже правильно) в один голос заявляют и школьник, и бухгалтер, и экономист, добросовестно используя все выведенные на экран цифры числа. Тем не менее установить количество отображаемых знаков после запятой в современной электронной таблице несоизмеримо проще, чем понять, сколько именно нужно их оставить.
Вывод очевиден: гигантский рост возможностей компьютеров в обработке числовой информации ни в коем случае не отменяет, а в некоторых случаях даже усиливает важность осознанного выбора подходящих методов и технологий решения тех или иных возникающих на практике вычислительных задач.
Современное программное обеспечение, имеющее своей целью реализацию на компьютере всевозможных расчетов, необычайно разнообразно. Для организации вычислений с помощью ЭВМ существует большое количество программ, которые различаются идеологией построения, набором возможностей, степенью автоматизации расчетов, трудозатратами на организацию вычислительного процесса, а также возможностями представления результатов (например, в графическом виде). Конечно, круг программных средств и технологий обработки, числовой информации не ограничивается калькуляторами и электронными таблицами. Любой школьник знает, что вычислительные задачи можно эффективно решать с помощью языков программирования. Некоторые даже имели опыт работы с системами аналитических преобразований математических выражений (Maple, Mathematica или им подобными), которые могут, прежде чем подставлять конкретные числовые значения, решить задачу в общем виде; часто полученных формул уже без всяких дополнительных расчетов бывает достаточно, чтобы понять результаты задачи.
Выбираемое для вычислений программное обеспечение должно соответствовать уровню их сложности (вспомните, например, пословицу о стрельбе из пушки по воробьям).
Однократные вычисления по 1—2 небольшим формулам быстрее и проще всего выполнить, запустив программу-калькулятор. Отметим, что данный подход эффективен именно при небольших объемах вычислений и когда не требуется их многократное повторение; в противном случае возрастает вероятность ошибок и становится оправданным применение более сложного программного обеспечения.
Обработка серии данных по одинаковым формулам (результаты эксперимента или финансовые расчеты) с возможностью наглядного представления данных (таблицы, графики) представляет собой типичную задачу для электронных таблиц.
Тем не менее на практике вполне могут встретиться задачи, для которых даже мощности современных электронных таблиц явно недостаточно. Например, при статистической обработке результатов эксперимента часто необходимо не просто найти корреляцию, т.е. уровень взаимосвязи, между двумя столбцами, но проанализировать наличие связи «каждого с каждым». Подобную задачу гораздо легче решить добавлением к обычному режиму электронной таблицы специальной программы-макроса или даже использованием традиционного языка программирования.
Желательно изложить
При решении задач, связанных с обработкой числовой информации, разработчики предоставляют нам целый ряд типов программного обеспечения. Мы можем, в частности:
1) использовать программу-калькулятор;
2) применять непосредственный режим языка программирования (например, Basic);
3) разработать и реализовать программу решения задачи на языке программирования;
4) воспользоваться электронной таблицей;
5) написать программу-макрос для электронной таблицы (некоторое начальное представление о макросах можно получить, обратившись, например, к учебнику [2] );
6) привлечь на помощь аналитическую систему. Список, разумеется, не претендует на полноту, и,
вполне возможно, читатели могут его продолжить.
Проще всего, по-видимому, разбить процесс решения вычислительной задачи на отдельные составляющие и посмотреть, как они поддерживаются при различных способах решения. Результаты удобно представить в виде следующей таблицы (номера столбцов соответствуют порядковым номерам методов решения в приведенном ранее списке):
Из таблицы видно, что возможности различного программного обеспечения для обработки числовых данных различны. Прежде всего они касаются степени автоматизации расчетов (например, макросы в состоянии заменить большое количество «ручных» операций), повторяемости тех или иных действий (повторение расчета по хранящимся формулам, наличие программы и т.д.), простоте их реализации (красиво оформленную таблицу в Excel получить проще, чем при традиционных методах программирования).
Составляющие процесса решения
1
2
3
4
5
6
Арифметические действия
Да
Да
Да
Да
Да
Да
Хранение промежуточных результатов и констант
Несколько
Много
Много
Много
Много
Много
Хранение формул
Нет
Нет
Да .
Да
Да
Да
Математическое преобразование формул
Нет
Нет
Нет
Нет
Нет
Да
Хранение программы
Нет
Нет
Да
Нет
Да
Да
Автоматическое повторение (циклы, итерации)
Нет
Ограничено
Да
Ограничено
Да
Да
Действия по условию
Нет
Ограничено
Да
Ограничено
Да
Да
Табличное представление результатов
Нет
Ограничено
Да
Автоматически
Автоматически
Да
Графическое представление
Нет
Нет
Да
Да
Да
Да
Возможность сортировки данных
Нет
Нет
Да
Встроена
Да
Да
Примечание для учеников
Обязательно выясните, какой объем ответа на данный вопрос хочет услышать от вас учитель. В свете рассказанного ранее может оказаться, что часть изложения (раздел «желательно изложить») можно будет вообще пропустить.
Ссылка на материалы по вопросу
Подробный текст материалов к вопросу опубликован в «Информатике» № 15, 2003, с. 3— 5.
2. Событийное объектно-ориентированное программирование. Событийные и общие процедуры
Базовые понятия
События и их обработчики.
Программа как совокупность обработчиков.
Обязательно изложить
Обработка событий является одной из основ современного программного обеспечения. Событиями в интересующем нас сейчас смысле называется все то, что требует реакции программы. Сюда относятся действия пользователя с мышью и клавиатурой, а также всевозможные изменения состояния системы: появление и исчезновение окон, изменение содержимого области редактирования в результате вывода и многое другое. Написанная нами программа должна в ответ на происходящие события осуществлять те или иные действия: например, по щелчку мыши вызывать появление диалогового окна, при закрытии активного окна переключать фокус ввода на одно из оставшихся окон, а при уменьшении размера текста убирать полосы прокрутки.
Подчеркнем, что событие есть базовое понятие, присущее самой операционной системе Windows, a не системам программирования.
При событийном подходе программа рке не является чем-то единым и последовательным, а представляет собой совокупность обработчиков (подчас абсолютно независимых друг от друга) тех или иных событий. Проще говоря, программист должен описать, как его приложение будет реагировать на каждое из обрабатываемых событий. Отметим, что написать несколько небольших обработчиков заметно легче, чем цельную программу.
Нам кажется, что ответ на данный вопрос лучше всего построить на конкретном примере. Один из вариантов такого рассмотрения подробно изложен в предыдущей публикации по билетам 11-го класса, где разбирается несложная программа, которая осуществляет буксировку с помощью кнопки мыши небольшой картинки.
Желательно изложить
Поскольку реакция программы на события, как правило, связана с конкретными визуальными компонентами — щелчок по кнопке, изменение размеров окна и т.п., обработчики также принято считать методами конкретных объектов. В качестве наиболее распространенного примера рассмотрим заголовок обработчика
события OnClick (реакция на щелчок мыши) в системе Delphi для компонента типа Buttonl, имеющий вид procedure TForml.ButtonlClick(Sender: TObject);
Налицо объектно-ориентированная форма записи, где имя метода отделено точкой от класса, к которому принадлежит данный метод.
Заметим, что типичным аргументом является объект Sender, через который система Delphi передает имя конкретного объекта, вызывающего обработчик. Последнее обстоятельство представляет большой практический интерес, так: как; позволяет делать общий обработчик; на группу компонентов. Скажем, для калькулятора вместо 10 однотипных обработчиков кнопок можно написать всего один:
' п := 10 * n + (Sender as TButton).tag;
В приведенной формуле предполагается, что переменная п, накапливающая результат набора числа, имеет целочисленный тип, а значения свойства tag у всех кнопок предварительно установлены в соответствии с надписью на кнопке (на кнопке «1» задана 1, на кнопке «2» — 2 и т.д.). Тогда становится понятным, что, используя Sender в качестве конкретной кнопки, мы получаем доступ к ее свойству tag и по стандартной формуле добавляем его к текущему значению числа в качестве последней десятичной цифры.
Описывая функционирование обработчиков событий, целесообразно несколько подробнее рассказать о механизме реализации событий в современном программном обеспечении, Материал этот следует считать дополнительным, но, по мнению авторов, он достаточно нагляден и полезен для понимания сути фундаментальных процессов событийного программирования. Хочется даже провести некоторую аналогию: в физике тоже можно применять некоторые законы электричества, не зная того, что ток есть направленное движение электронов; тем не менее это, к счастью, (пока!) не является основанием для исключения данного фундаментального материала из школьного курса.
Основой обработки событий в современных программных системах служит посылка и прием сообщений. В простейшем случае сообщение представляет собой несколько помещаемых в строго определенное место памяти целых чисел. Первое является идентификатором сообщения: проще говоря, оно позволяет однозначно определить назначение сообщения. Остальные числа являются параметрами, раскрывающими суть события. Скажем, для случая сообщений мыши это координаты положения ее указателя на экране. Для других сообщений содержание информации, разумеется, будет отличаться, но можно утверждать, что каждому типу сообщений соответствует строго определенная «уточняющая» информация.
Те, кого заинтересовала эта часть вопроса и кто намерен рассказать о ней на экзамене, могут обратиться к полному тексту билета (см. ссылку в конце вопроса).
Примечание. Советую также в случае более глубокого интереса к вопросу о сообщениях Windows внимательно последить за последующими номерами газеты. Там будет опубликована статья Е.А. Еремина «Что такое скан-код клавиши и как его увидеть», в конце которой описывается довольно простая программа непосредственной обработки сообщений от клави-
БИЛЕТ № 20
I 1. Компьютерная графика. Аппаратные средства. (монитор, видеокарта, видеоадаптер, сканер и др.). ' Программные средства (растровые и векторные гра-I фические редакторы, средства деловой графики, про-| граммы анимации и др.).
2. Этапы развития вычислительной техники. Основные технические характеристики современного I персонального компьютера.
3. Практическое задание по работе с электрон-' ной почтой (в локальной или глобальной компью- ' I терной сети).
1. Компьютерная графика. Аппаратные средства (монитор, видеокарта, видеоадаптер, сканер и др.). Программные средства (растровые и векторные графические редакторы, средства деловой графики, программы анимации и др.)
Базовые понятия
Компьютерная графика, монитор, видеокарта, видеоадаптер, сканер, цифровой фотоаппарат, растровая компьютерная графика, векторная компьютерная графика, фрактальная компьютерная графика, ЗО-графи-ка, деловая графика, анимационная графика.
Обязательно изложить
Представление данных на мониторе компьютера в графическом виде впервые было реализовано в середине пятидесятых годов для больших ЭВМ, применявшихся в научных и военных исследованиях. С тех пор графический способ отображения данных стал неотъемлемой принадлежностью подавляющего числа компьютерных систем, в особенности персональных. Графический интерфейс пользователя сегодня является стандартом «де-факто» для программного обеспечения разных классов, начиная с операционных систем.
Специальную область информатики, занимающуюся методами и средствами создания и обработки изображений с помощью программно-аппаратных вычислительных комплексов, называют компьютерной графикой. Она охватывает все виды и формы представления изображений, доступных для восприятия человеком либо на экране монитора, либо в виде копии на внешнем носителе. Визуализация данных находит применение в самых разных сферах человеческой деятельности. Например, в медицине (компьютерная томо-
графия), научных исследованиях, моделировании тканей и одежды, опытно-конструкторских разработках.
В зависимости от способа формирования изображений компьютерную графику принято подразделять на растровую, векторную и фрактальную. Отдельным предметом считается трехмерная (3D) графика: построение объемных моделей объектов в виртуальном пространстве. Как правило, в ней сочетаются векторный и растровый способы формирования изображений.
На специализацию в отдельных областях указывают названия некоторых разделов: «Инженерная графика», «Научная графика», «Web-графика», «Компьютерная полиграфия» — и прочие. На стыке компьютерных, телевизионных и кинотехнологий образовалась область компьютерной графики и анимации.
Хотя компьютерная графика служит всего лишь инструментом, ее структура и методы основаны на передовых достижениях фундаментальных и прикладных наук: математики, физики, химии, биологии, статистики, программирования и множества других. Это замечание справедливо как для программных, так и для аппаратных средств создания и обработки изображений на компьютере. Поэтому компьютерная графика является одной из наиболее бурно развивающихся отраслей информатики.
Информационную связь между пользователем и компьютером обеспечивает монитор. Система отображения компьютера состоит из двух главных компонентов:
• монитора (дисплея);
• видеоадаптера (называемого также видеоплатой, или графической платой).
Информация на мониторе может отображаться несколькими способами. Самый распространенный — отображение на экране электронно-лучевой трубки (ЭЛТ), такой же, как в телевизоре. ЭЛТ представляет собой электронный вакуумный прибор в стеклянной колбе, в горловине которого находится электронная пушка, а на дне — экран, покрытый люминофором.
Нагреваясь, электронная пушка испускает поток электронов, которые с большой скоростью двигаются к экрану. Поток электронов (электронный луч) проходит через фокусирующую и отклоняющую катушки, которые направляют его в определенную точку покрытого люминофором экрана. Под воздействием ударов электронов люминофор излучает свет, который видит пользователь, сидящий перед экраном компьютера.
Химическое вещество, используемое в качестве люминофора, характеризуется временем послесвечения,
которое отображает длительность свечения люминофора после воздействия электронного пучка. Время послесвечения и частота обновления изображения должны соответствовать друг другу, чтобы не было заметно мерцание изображения (если время послесвечения очень мало) и отсутствовали размытость и удвоение контуров в результате наложения последовательных кадров (если время послесвечения слишком велико).
продолжение
--PAGE_BREAK--
продолжение
--PAGE_BREAK--Как было написано в одной из предыдущих публикаций по данному вопросу билета, при отсутствии доступа в Интернет важную роль в организации данного задания играет программное обеспечение, позволяющее организовать обмен электронной почтой в классе с обычной локальной сетью. В процессе подготовки данного материала было найдено очень хорошее программное решение — Courier Mail Server (почтовый сервер, версия 1.56), которым хотелось бы поделиться с читателями. Это отличная бесплатная программа, написанная Романом Ругаленко и Валерием Пито, обладающая целым рядом достоинств. Во-первых, она необычайно легка в настройке и не требует особых технических знаний (по сути дела, в простейшем случае достаточно создать на сервере учетные записи пользователей). Во-вторых, она работает со стандартными клиентскими программами типа Microsoft Outlook или The Bat, что для учебных целей очень удобно. В-третьих, после настройки и запуска данная программа-сервер больше не требует никакого внимания. Наконец, программа имеет неплохое подробное описание на русском языке. Чего еще остается желать?
На самом деле возможности программы гораздо шире, чем просто имитация работы e-mail в компью-
терном классе с локальной сетью, но их обсуждение выходит за рамки нашей сегодняшней прагматической публикации.
Итак, наберите адрес eourierms. narod.ru, скачайте программу и разархиви-руйте ее в нужный каталог на учительской машине. Запустите исполняемый файл и создайте учетные записи ученических компьютеров.
Остается настроить обычным образом клиентское почтовое программное обеспечение, и e-mail-сообщение в классе налажено!
Примеры заданий
Задание можно сформулировать, например, так: получить отправленное учителем накануне экзамена письмо и ответить на него.
Для сильного класса можно дополнить задание присоединением к письму вложения, усложнить работу введением менее распространенной кодировки текста, потребовать пересылки копии исходного письма или ответа по заданному адресу.
Домен
И! Учетные «алией V IP фильтр *Й SMTP сервер •У РОРЗ сервер
Учетных записей: 3 'г SMTP сервер: запущен
Порт: 25 7 РОРЗ сервер: запущен
Порт: 110
i8.03.2004 18:3"?:34 SMTPSERV
SHTP сервер запущен (порт 2£> запущен (порт 110)
I parshin | postmaster
М.М.Паршин MailVMailbox^pafshin\ Администратор М аДМ ailbox\postmaster\
Ссылка на материалы по билету
Полный текст материалов билета опубликован в «Информатике» № 20, 2002, с. 3 — 8.
БИЛЕТ № 21
1. Технология хранения, поиска и сортировки данных (базы данных, информационные системы). Табличные, иерархические и сетевые базы данных.
2. Различные типы компьютерных вирусов: методы распространения, профилактика заражения.
3. Практическое задание. Работа с папками и файлами (переименование, копирование, удаление,
поиск, сохранение на различных носителях).
1. Технология хранения, поиска и сортировки данных (базы данных, информационные системы). Табличные, иерархические и сетевые базы данных
Базовые понятия
База данных — это совокупность систематизированных сведений об объектах окружающего нас мира по какой-либо области знаний.
Системы управления базами данных — универсальное программное обеспечение для работы с базами данных.
Информационная система — комплекс программных и аппаратных средств, предназначенных для хранения, изменения и обработки информации, а также обеспечивающих взаимодействие с пользователем.
Структура и данные — две составные части БД.
Запись и ее поля — составные части данных.
Реляционные (табличные), иерархические и сетевые базы данных.
Обязательно изложить
Большое место в применении ЭВМ занимает работа с программным обеспечением для хранения и обработки больших массивов информации — системами управления базами данных и всевозможными информационными системами. Современные компьютеры способны накапливать гигантские объемы информации в любых сферах человеческой деятельности, сортировать и анализировать их, а затем выдавать по запросу человека.
Совокупность систематизированных сведений об объектах окружающего нас мира по какой-либо области знаний принято кратко называть базой данных. В широком смысле слова можно сказать, что база данных есть своеобразная информационная модель предметной области, например, БД о работниках предприятия, БД в системе продажи билетов, БД документов в той или иной сфере и многие другие.
Обязательно обратите внимание на то, что в определении отсутствует упоминание о компьютере. И это не ошибка — хранение систематизированных данных в виде различных картотек использовалось до появления самых первых вычислительных машин. Вспомните, например, каталог в библиотеке — традиционные небольшие ящички, заполненные карточками со сведениями о книгах и месте их хранения.
Помимо собственно данных, требуется специальное программное обеспечение, которое с ними работает. Такое универсальное ПО принято называть системами управления базами данных, или сокращенно СУБД. Именно наличие СУБД и разработанных на ее базе программ для конкретной предметной области превращает огромный объем хранимых в компьютерной памяти сведений в мощную справочную систему, способную производить поиск и отбор необходимой нам информации. Подобные системы принято называть информационными.
Переход к компьютерному хранению информации дает много преимуществ. Они отчетливо видны, если сформулировать те функции, которые выполняет современная компьютерная система обработки данных.
• Ввод информации в БД и обеспечение его логического контроля. Под логическим контролем здесь понимается проверка на допустимость вводимых данных: нельзя, например, вводить дату рождения 31 июня 1057 года.
• Исправление информации (также с контролем правильности ввода).
• Удаление устаревшей информации.
• Контроль целостности и непротиворечивости данных. Здесь имеется в виду, что данные, хранящиеся в разных частях базы данных, не противоречат друг другу, например, дата поступления в школу явно не может быть позже даты ее окончания.
• Защита данных от разрушения. Помимо контроля за целостностью, который только что обсуждался, СУБД должна иметь средства защиты данных от выключения электропитания, сбоев оборудования и других аварийных ситуаций, а также возможности последующего восстановления информации.
• Поиск информации с необходимыми свойствами. Одна из наиболее важных в практическом отношении задач, ради которой ставятся все остальные.
• Автоматическое упорядочивание информации в соответствии с требованиями человека. Сюда относится сортировка данных, распределение их между несколькими базами и другие подобные процедуры.
• Обеспечение коллективного доступа к данным. В современных информационных системах возможен параллельный доступ к одним и тем же данным нескольких пользователей, поэтому СУБД должны поддерживать такой режим.
• Защита от несанкционированного доступа. Не только ввод новой информации, но даже ее просмотр должны быть разрешены только тем пользователям, у которых есть на это права.
• Удобный и интуитивно понятный пользователю интерфейс.
Организация БД:
иерархическая
Характер связи между записями в БД определяет три основных типа организации баз данных: иерархический, сетевой и реляционный.
В иерархической базе данных записи образуют особую структуру, называемую деревом (см. рисунок). При таком способе организации каждая запись может принадлежать только одному «родителю» (более правильный термин — «владелец отношения»). В качестве примеров такого рода отношений можно привести следующие: организация — [основная работа] — работник, банк — [вклад] — сберкнижка, футбольная команда — [хозяин поля] — матч и т.п. Отметим, что типичными примерами иерархического способа организации является хорошо известная система вложенных каталогов в операционной системе, или так называемое «генеалогическое дерево», представляющее собой графическое представление родословной.
В сетевой базе данных связи разрешено устанавливать произвольным образом, без всяких ограничений, поэтому запись может быть найдена значительно быстрее (по наиболее короткому пути). Такая модель лучше всего соответствует реальной жизни: один и тот же человек является одновременно и работником, и клиентом банка, и покупателем, т.е. запись с информацией о нем образует довольно густую сеть сложных связей. Трудность состоит в том, что указанную организацию БД, к сожалению, сложно реализовать на компьютере. '
Хотя описанные выше способы являются более универсальными, на практике распространен самый простой тип организации данных — реляционный. Слово реляционный происходит от английского relation, что значит отношение. Строгое определение отношения достаточно математизировано, поэтому на практике обычно пользуются следствием из него: поскольку отношения удобно представлять в виде таблиц, то говорят, что реляционные базы — это базы с табличной формой организации. Их примеры имеются в любом учебнике, поэтому предлагаем читателям подобрать их самостоятельно.
Желательно изложить
Говоря о БД, нельзя обойти стороной вопрос, связанный с организацией в них данных. Помимо собственно данных, в любой базе имеется информация о ее строении, которую чаще всего называют структурой. В простейшем случае структура просто указывает тип информации и объем требуемой для нее памяти. Сведения о структуре позволяют СУБД легко рассчитывать местоположение требуемых данных на внешнем носителе и, следовательно, быстро получить к ним доступ.
сетевая
реляционная
Связанные между собой данные, например об одном человеке или объекте, объединяются в БД в единую конструкцию, которая называется «запись». При этом части, образующие запись, принято называть полями или реже — элементами данных. Примерами полей могут служить фамилия, номер паспорта, семейное положение, наличие или отсутствие детей и т.д.
С появлением компьютерных сетей отпала необходимость хранения данных в одной машине и даже в одной стране, возникли так называемые «распределенные БД».
Собственно СУБД, управляющая доступом к данным в базе, является универсальным программным обеспечением. Поэтому для адаптации к конкретной области и учета конкретных особенностей последней необходима возможность «подстройки» программного обеспечения. С этой целью большинство СУБД обладают встроенными средствами подобного рода, т.е. фактически собственным языком программирования. Заметим, что в более ранних разновидностях СУБД, например dBASE и родственных ей (FoxPro, Clipper), это было заметно наиболее отчетливо. В современном программном обеспечении, таком, как MS Access, Paradox, Clarion, создание различных форм и отчетов во многом автоматизировано, но тем не менее встроенные языковые средства по-прежнему сохраняются.
Примечания для учителей
Если не считать последней части вопроса, то подбор материала для ответа традиционен. Мы надеемся, что приведенных здесь и в предыдущей публикации материалов по типам БД читателям будет достаточно.
По нашему мнению, требовать от учеников четкие определения баз данных и информационных систем совсем не обязательно — достаточно, если они правильно объяснят данные термины своими словами. Приведенные в разделе базовых понятий определения даны для облегчения ориентировки в материале вопроса.
Примечания для учеников
Советуем в своем ответе обязательно отметить тот факт, что информационные системы могут быть реализованы и без компьютера. После этого вполне естественно рассказать о тех преимуществах, которые добавляет применение компьютера.
Приведенный в обязательном разделе перечень функций может показаться на первый взгляд устрашающим. Тем не менее он довольно легко поддается осмысленному запоминанию. Вспомните, как вы работали с БД на уроке: сначала вводили данные, потом исправляли ошибки ввода, после чего занимались сортировкой и составлением тех или иных запросов. Дополните это размышлениями о коллективном доступе к данным (на уроках такого, возможно, не было), и вы легко восстановите весь список.
Советуем также четко уяснить для себя, что характерно для каждого из перечисленных в билете типов БД. Это даст вам возможность легко составить последнюю часть ответа на вопрос: на самом деле от вас требуется лишь краткая их (2—3 предложения) характеристика.
Ссылка на материалы по вопросу
Подробные материалы опубликованы в «Информатике» № 15, 2002, с. 12—14.
2. Различные типы компьютерных вирусов: методы распространения, профилактика заражения
Базовые понятия
Компьютерный вирус, программный код, управление, заражение, профилактика.
Обязательно изложить
Компьютерный вирус — это программный код, который в процессе исполнения размножается, т.е. создает новые программные коды, подобные исходному коду и сохраняющие возможность воспроизведения. Компьютерный вирус передается лишь как фрагмент другого программного кода и активизируется, перехватывая управление у кода-носителя после его инициализации.
В настоящее время принято определять тип компьютерного вируса по типу его носителя. В связи с этим выделяют файловые, загрузочные, макро- и сетевые вирусы. Рассмотрим их по порядку.
Файловыми называются вирусы, которые встраиваются в исполняемые коды, т.е. файлы с именами сот и ехе, или в оверлейные файлы. Для перехвата управления вирус записывается в начало или конец файла. В последнем случае начало файла модифицируется. Несколько первых байт оригинального кода присоединяются к вирусу, а на их место помещается команда передачи управления на начало вирусного фрагмента. Таким образом, инициализация зараженной программы приводит к запуску вируса, который после выполнения всех запланированных действий передает управление своему носителю. Существуют вирусы, которые выполняют все действия (поиск и заражение хотя бы одного файла указанного типа и, возможно, другие действия, как правило, обусловленные каким-либо образом, например, датой инициализации), оставаясь в составе кода-носителя. Они называются нерезидентными. Есть вирусы, которые в составе кода-носителя производят единственное действие — инсталляцию своего кода, как независимого приложения, в оперативную память. В этом качестве вирус производит все остальные действия. Такие вирусы называются резидентными. Они отслеживают ряд системных прерываний и активизируются при их возникновении. Таким образом, от момента инсталляции до перезагрузки компьютера резидентный вирус успевает заразить большое число файлов. Резидентный вирус может отслеживать чтение файла-носителя другой,, может быть антивирусной, программой и препятствовать обнаружению своего кодового фрагмента, например, временно удаляя его из тестируемого файла (стелс-вирус). Второй способ воспрепятствовать обнаружению вируса в составе файла-носителя — шифрование вирусного кода случайной последовательностью команд процессора. В этом случае фрагмент вируса, инсталлирующий его в оперативную память, производит дешифровку кода. При заражении другого файла ключ шифрования может меняться (полиморфик-вирус).
Особое место занимают так называемые «компаньон-вирусы», не изменяющие заражаемых файлов. Алгоритм работы этих вирусов состоит в том, что для заражаемого файла создается файл-двойник, причем при запуске зараженного файла управление получает именно этот двойник, т.е. вирус. Наиболее распространены компаньон-вирусы, использующие особенность DOS первым выполнять соте-файл, если в одном каталоге присутствуют два файла с одним и тем же именем, но различными расширениями — сот и ехе. Такие вирусы создают для ехе-файлов файлы-спутники, имеющие то же самое имя, но с расширением сот. Вирус записывается в co/n-файл и никак не изменяет ехе-файл. При запуске такого файла DOS первым обнаружит и выполнит сотп-файл, т.е. вирус, который затем запустит и ехе-файл. Некоторые вирусы используют не только вариант сот — ехе, но также и bat — сот — ехе.
Можно предложить несколько профилактических мер, направленных против инфицирования компьютера файловыми вирусами:
1. Использование только лицензионных программных продуктов.
2. Крайне осторожное отношение к программам, полученным из сети или от знакомых, т.е., прежде чем открыть соответствующий файл, нужно проверить его какой-нибудь антивирусной программой.