Академический Документы
Профессиональный Документы
Культура Документы
К ЧИТАТЕЛЮ
Л. Мерсье
Б. Дизраэли
5
Информация и информатика
6
Информация и человек
7
ИНФОРМАЦИЯ И ЧЕЛОВЕК
КОМПЬЮТЕР — УНИВЕРСАЛЬНЫЙ ИНСТРУМЕНТ
ДЛЯ ОБРАБОТКИ ИНФОРМАЦИИ
10
Информация и человек
11
Информация и информатика
12
Информация и человек
АТОМЫ ИНФОРМАЦИИ
Информация, каким бы способом она не была обретена, рую не раз приходилось ре-
всегда фиксирует отличия и изменения. «Поздно» имеет шать человечеству. Без таких
смысл только потому, что существует «рано», весна насту- систем, представляющих не-
пает после зимы. Мы мыслим противопоставлениями, и прерывное прерывным, невоз-
это фундаментальное свойство человеческого мышления. можно представить современ-
Ведь в природе не существует никакого конкретного мо- ную жизнь, ведь это нотная
мента, когда весна сменяет зиму. Это человек, не пассив- грамота, денежная система,
но воспринимая мир, а извлекая из него информацию, де- система счёта времени, гео-
лит непрерывную реальность на элементы с помощью графические координаты,
подразумеваемых порогов, границ, критических точек, до шкала температур и многое
которых было что-то одно, а после стало что-то другое. другое.
Любое «да» имеет смысл лишь в сопоставлении с «нет», Впервые фундаменталь-
любое «больше» — в сопоставлении с «меньше», «война» — ное значение противопостав-
с «миром», «дворцы» — с «хижинами»… ления выяснил основатель Фердинанд де Соссюр.
Итак, каждый раз, создавая информацию или переда- современной лингвистики
вая её, мы делаем цельное дискретным, вычленяем эле- Фердинанд де Соссюр (1857—1913), изучавший язык как
менты. В некоторых случаях дискретность очевидна: вклю- знаковую систему. Именно он показал, что ни один знак не
чена сирена — не включена, подал руку — не подал. Такие имет смысла сам по себе, он существует исключительно в
оппозиции, устроенные по принципу «или — или», назы- оппозиции (противопоставлении) с другими знаками. Невоз-
ваются бинарными. В этих случаях одно состояние есте- можен светофор с одним постоянно горящим фонарём,
ственным, очевидным образом отделено от другого, раз- невозможен алфавит из одной буквы. Даже когда кажется,
личие между ними бросается в глаза (в случае с сиреной — что знак всего один, в действительности это не так.
в уши). С наступлением весны всё гораздо сложнее. В ми- Например, сирена — звуковой знак, означающий «внима-
ре много процессов, не содержащих явных порогов. Эти ние» или «опасность». Но если подумать, становится по-
пороги устанавливаем мы сами, вводя дискретность сво- нятно, что и здесь есть противопоставление: наличие звука
ей волей. «Совсем зарос, — говорит мама, — стричься по- — отсутствие звука. Молчание сирены тоже значимо, оно
ра». — «Не совсем, в глаза же не лезут, — отвечает сын. — выражает смысл «всё как обычно», «ничего особенного не
Ещё так похожу». Здесь разные ситуации разграничива- происходит». Знаки, у которых внешняя форма состоит в
ются по количеству или степени признака. Допустим, сте- отсутствии объекта, называются нулевыми. Примеры
пень «лохматости»: лысый — нулевая, коротко стрижен- нулевого знака — пробел (пауза) между словами, негорящие
ный — первая, волосы немного отросли — вторая, лезут в лампочки на приборе, непротянутая в знак неуважения рука.
глаза — третья, заплетаются в косичку — четвёртая и т. д.
Так организуется градуальная оппозиция. Способ деле-
ния непрерывности бывает различным. Понятно, что, ес-
ли выделять градуальные оппозиции произвольно, это не
даст выполнить важнейшее условие передачи информа-
ции — точность. Представим себе, что не существует еди-
ного календаря, а каждый решает сам, ориентируясь на
собственные ощущения, когда, по его мнению, пришла
весна, а когда кончится сегодня и наступит завтра. Созда-
ние общих для всех и потому обеспечивающих точность
передачи информации знаковых систем — задача, кото-
13
Информация и информатика
14
Информация и человек
ПРЕДСТАВЛЕНИЕ ИНФОРМАЦИИ
Для хранения, преобразования и передачи информа- Появились фотостудии, где уже предлагают сде-
ции важнее её различные представления и методы их лать голографическую, псевдотрёхмерную фотогра-
использования, чем строгое определение. фию родных, домашних питомцев.
Информация обязательно должна быть зашифро- 2. Акустическая информация (речь, звук). Практиче-
вана в виде знаков, символов, кодов. Кодирование ски все животные в той или иной степени способны
может производиться много раз и с различными це- воспринимать звук: они предупреждают друг друга об
лями: обеспечить передачу по тем или иным каналам опасности, устанавливают свой статус в сообществе, воз-
связи, уменьшить нагрузку на какой-либо из них, со- можно, даже согласовывают действия при совместной
хранить конфиденциальность информации и т. д. Пе- охоте. Но только человек с помощью речи выражает
ревод на другой язык — то же кодирование, осуще- чувства, мысли, до некоторой степени заменяет визуаль-
ствляемое для того, чтобы информацию мог ное восприятие информации. Если рассказчик красноре-
воспринять человек, незнакомый с языком, т. е. с ис- чиво, ярко, образно опишет что-то, то слушатель вооб-
ходным представлением информации. разит изображаемый предмет, словно он его видит. На
В последнее время широкое распространение по- компьютере речь бывает представлена как любой дру-
лучила цифровая телефония. Любой человек может гой звук или музыка либо разбита на отдельные звуки —
купить карточку с персональным кодом и позвонить фонемы или даже целые слова.
в другой город или даже в другую страну. Во время 3. Символьная информация (текст, письменность).
разговора происходят следующие информационные С помощью письменности человек обрёл нечто по-
процессы. Сначала информация шифруется в мозгу добное бессмертию: мысли, однажды занесённые на
человека последовательно в виде образов, мыслей, папирусные свитки, пергамен, бумагу, на различные
речи. С помощью телефонного устройства колебания цифровые носители, при условии правильного хране-
(речь) преобразуются в электрические импульсы. На ния будут существовать почти вечно.
компьютерных станциях-коммутаторах аналоговые Любая подобная классификация будет неполной —
электрические импульсы трансформируются в циф- всегда есть такое представление информации, кото-
ровой код, который обрабатывается при помощи спе- рое не подходит под составленную схему. К чему от-
циальных алгоритмов, чтобы ускорить его передачу. нести биологическую информацию в ДНК? Или на-
Потом код передаётся по каналам связи, ещё раз пре- пряжения в земной коре, свидетельствующие о
терпевая кодирование, на этот раз для того, чтобы глубинных тектонических процессах? Или излучение
обеспечить его корректную доставку получателю. далёких звёзд, по которому можно определить их вид,
На принимающей станции происходит обратный про- состав, процессы, идущие в них?
цесс (раскодирование): цифровой код преобразуется Поэтому классифицировать информацию необхо-
в аналоговый электрический импульс, затем в теле- димо в зависимости от использования. То ли это ин-
фоне — в звуковые колебания, которые наконец вос- формация, воспринимаемая человеком, то ли инфор-
принимаются вторым собеседником. мация, обрабатываемая компьютером, то ли
В такой длинной цепочке изменялось представле- многовековые знания человечества — везде необхо-
ние информации, но целевое содержание (передава- дима своя целевая классификация.
емая информация) осталось неизменным.
В мире существуют многообразные виды инфор-
мации. Предложим классификацию, основанную на
восприятии человека.
1. Визуальная (зрительная) информация. Такую ин-
формацию, конечно, понимает не только человек, но
и животные. В отличие от животных, в основном усва-
ивающих всего лишь отражение внешнего мира, чело-
век смог записать, сохранить визуальную информацию
сначала в виде наскальных рисунков, потом иконопи-
си, живописи, фотографии, видео. Прогресс идёт впе-
рёд, XXI век — это время создания и широкого внедре-
ния технологии записи и воспроизведения не плоского,
а уже настоящего трёхмерного изображения, на кото-
рое можно посмотреть сбоку, сверху, его можно обой-
ти и увидеть, что происходит с другой стороны.
15
Информация и информатика
16
Информация и человек
17
Информация и информатика
ТЕОРИЯ ИНФОРМАЦИИ
18
Информация и человек
19
Информация и информатика
Распределению вероятностей
P = {p1, ... , pm } сопоставляется число
H(P) = p1log2(1/p1) + ... + pmlog2(1/pm),
называемое энтропией источника и
служащее мерой неопределённости.
Чаще всего в этой формуле исполь-
зуются логарифмы по основанию 2,
и тогда количество информации,
необходимой для восстановления
значения источника (т. е. устране-
ния неопределённости), измеряется
в битах. Один бит соответствует ко-
личеству информации, получаемой
из ответа на вопрос с двумя равнове-
роятными ответами.
Первая теорема Шеннона — теоре-
ма кодирования для канала без шума
утверждает, что для любого кодирова-
ния (с однозначным декодированием)
его средняя длина E(L) не меньше энт-
ропии H(P), а с другой стороны, суще-
ствуют кодирования со средней дли-
ной, сколь угодно близкой к H(P). Тем
самым теорема означает, что сообще-
ния от источника могут быть закоди-
рованы в двоичной форме со средней
длиной представления, незначительно
большей, чем энтропия источника, и
Как сравнивать различные коди- что «экономнее» энтропии никакой ис-
рования (однозначные) по эффектив- точник сообщений представить нель-
ности, что выбрать в качестве меры зя. Величину r(L) = E(L) – H(P) называ-
эффективности? ют избыточностью кодирования L, тем
Шеннон предложил рассматри- самым 0 < (L) < 1 для однобуквенных
вать среднюю длину кодирования кодировок.
(среднюю длину кодовых слов)
E(L) = p1 L1 + ... + pm Lm, где Li — длина
i-го слова, и считать кодирование оп-
тимальным с минимально возмож-
ной средней длиной. Ясно, что не-
важно, как называются буквы А, Б...
или X, Y..., а важно только, сколько
букв и вероятности Pi их появления,
т. е. всё определяется распределени-
ем вероятностей P = {p1, ... , pm }. Мно-
жество букв (алфавит) с заданным
распределением вероятностей назы-
вают источником сообщений.
Для алфавита, состоящего из че-
тырёх букв (A, B, C, D), и распределе-
ния вероятностей: P(A) = 1/2, P(B) =
= 1/4, P(C) = P(D) = 1/8. Естественно,
что P(A) + P(B) + P(C) + P(D) = 1/2 +
1/4 + 1/8 + 1/8=1. Средняя длина кода,
описанного в предыдущем примере,
E(L) = p1 L1 + ... + pm Lm равна 7/4, что
меньше 2 бит, необходимых при рав-
номерном кодировании.
20
Информация и человек
21
Информация и информатика
КОДЫ ХЭММИНГА
История кодов, исправляющих ошибки, началась чуть двух позициях. Так как в каждом шаре 8 точек (7 плюс
более полувека назад, когда молодой американский центр), а всего слов в пространстве 128, то можно
учёный Ричард Уэсли Хэмминг решал задачи на одной разместить не более чем 128/8=16 непересекающих-
из первых вычислительных машин. Компьютеры того ся шаров, т. е. код Хэмминга оптимален.
времени были ненадёжны и часто ошибались. Приме- Код Хэмминга задаётся как множество решений
няемый уже тогда простой метод обнаружения ошибок однородной (т. е. правая часть равна 0) системы из
(проверка на чётность, каждому машинному слову из 0 четырёх линейных уравнений с семью неизвестными
и 1 приписывается дополнительный избыточный бит, x1 , ... , x7, у которой столбцы матрицы коэффициен-
равный 0, если в слове чётное число единиц, и 1 — ес- тов пробегают все 7 ненулевых столбцов из 0 и 1, а ра-
ли нечётное) позволял обслуживающему персоналу пе- венство нулю понимается как равенство по модулю два
резапустить вычислительный процесс. Но по выходным (т. е. результат арифметических действий, как с обыч-
дням, когда у Хэмминга было основное машинное вре- ными целыми числами, должен быть чётным числом).
мя, компьютер никто не обслуживал, и в результате мно- Пусть x = (x1 , ... , x7) — кодовое слово, а y = (y1 , ... ,
го вычислений проводилось напрасно. Тогда ему приш- y7) — принятое (из канала) слово, отличающееся от x не
ла мысль, что если коды могут обнаруживать ошибки более чем в одной позиции. Декодирование, т. е. вос-
автоматически, то должны быть и коды, способные ис- становление x по y, происходит следующим образом.
правлять ошибки. Сначала вычисляется синдром s(y) = (s1 , ... , s4) слова y,
Так появился теперь хорошо известный [7,4]-код как значения правых частей четырёх уравнений, в кото-
Хэмминга, исправляющий одиночные ошибки. Этот рые подставлены yi (вместо xi). Затем ищется такая по-
код позволяет представить (закодировать) 4 бит ин- зиция i, где соответствующий столбец коэффициентов
формации с помощью 7 бит таким образом, что лю- уравнений совпадает с синдромом и исправляется (т. е.
бая одиночная ошибка в 7-бит-
ном представлении будет
исправлена, в результате чего
удастся правильно восстано-
вить исходные 4 бит.
Так как 4 бит информации
представляют 24 =16 различ-
ных сообщений, то код Хэм-
минга состоит из 16 так назы-
ваемых кодовых слов длины
7. Свойство исправления оди-
ночных ошибок означает, что
искажение любого бита в
каком-то кодовом слове и лю-
бого (или ни одного) бита в
другом не может привести к
одному и тому же 7-битному
слову, имеется множество
(«пространство») из 27 = 128
7-битных слов, и в нём под-
множество (код) из 16 слов.
Вокруг каждого кодового сло-
ва есть «облако» («шар») из
7 слов, полученных в резуль-
тате одиночных ошибок, «об-
лака» («шары») не должны пе-
ресекаться. Последнее условие
исправления одиночных оши-
бок равносильно тому, что лю-
бые два кодовых слова долж-
ны отличаться более чем в Устранение одиночных ошибок (диаграммы Венна).
22
Информация и человек
23
Информация и информатика
24
Информация и человек
25
КОДИРОВАНИЕ ИНФОРМАЦИИ
ОТ РИСУНКА К БУКВЕ
Первые начертания, смысл которых ности, с магией и со счётом. Забор —
нам понятен, — изображения живот- один из первых знаков собственно-
ных на стенах пещер, сделанные на- сти, корона или скипетр — знаки вла-
шими далёкими предками десятки сти и положения в обществе, хрус-
тысяч лет назад. Однако между ними тальный шар — символ ясновидения,
и письменностью — огромная дис- а камешки давно превратились в ко-
танция. стяшки счётов.
Для передачи информации изна- Вероятно, именно со счётом были
чально использовались так называе- связаны знаки, переходные от пред-
мые предметные знаки: ракушки, метов к изображению. Это зарубки на
камешки, кости и перья животных, палке, которыми обозначался долг.
узелки и т. д. Такой знак может, на- Когда нанесённые на какую-либо
пример, указывать на наличие цело- поверхность значки используются
го класса аналогичных предметов уже не только для счёта, но и для
(именно на этом принципе строит- передачи развёрнутых сообщений,
ся заполнение витрин магазинов, ког- возникает идеографическое, т. е.
да выставляются только некоторые картинно-изобразительное, письмо,
предметы из ассортимента). В дру- нечто среднее между рисунком и
гом случае предметный знак высту- знаковым письмом. Картинка в целом
пает как символ понятия, предмета могла изображать некую ситуацию,
или целой ситуации. Так, в одном из как в наскальной живописи, но в ней
африканских племён в качестве уже выделялись элементы, не столько
знака оповещения о казни осуждён- изображающие, сколько обознача-
ному посылалось яйцо попугая. ющие отдельные элементы ситуации.
Наиболее типичные функции та- Закрепление отдельных знаков за
ких знаков связаны с обозначением определёнными понятиями, возмож-
принадлежности, статуса, собствен- ность их использования для описа-
26
Кодирование информации
27
Информация и информатика
28
Кодирование информации
29
Информация и информатика
30
Кодирование информации
СИСТЕМЫ СЧИСЛЕНИЯ
ий
ск
УРАРТУ
ое м о
Между реками Тигр и Евфрат, в могу-
чем государстве Вавилонии, высоко- Хаттуса
ХЕТТЫ
ре
го развития достигли счёт и системы ХУРРИТЫ
счисления (см. раздел «Старинные си-
стемы записи чисел» в томе «Матема-
тика» «Энциклопедии для детей»). Дур-Шаррукин
Вавилонские числа являются комби- ипр Ниневия
о .К
нацией не двух, а трёх клинописных
ое
Ашшур
знаков: единицы — , десятки — Ср н Мари ПАРФИЯ
еди зем Экбатана
е Библ АССИРИЯ
и сотни — . м ор Сидон
С помощью этих знаков можно за- Тир АККАД ПЕРСИЯ
писать любое число, используя прин- Вавилон
Сузы
цип сложения или умножения: м Урук
ли Пасаргады
уса
ер Ур Персеполь
— 10 .100 = 1000, И
Пер
— 10 + 1 = 11.
си
ск
д
ий
Кр
ив
ас
же позиционная шестидесятеричная
м оре
— 1 . 60 + 10 + 2 = 72.
31
Информация и информатика
1 2 3 4 5 6 7 8 9 10
20 30 40 50 60 70 80
Все остальные числа записывались
из этих знаков при помощи операции
сложения. Вначале писались числа
высшего порядка, а затем низшего:
=100+100+10+1+1+1+1=214.
32
Кодирование информации
Γ (Γεντε) — пять,
∆ (∆εκα) — десять,
Η (Ηκατον) — сто,
Χ (Χιλιασ) — тысяча,
Μ (Μυριασ) — десять тысяч,
Ι, ΙΙ, ΙΙΙ, ΙΙΙΙ — соответственно 1, 2,
3, 4,
∆∆∆ΙΙΙΙ — 10 + 10 + 10 + 4 = 34.
33
Информация и информатика
ДВОИЧНОЕ КОДИРОВАНИЕ
34
Кодирование информации
413 1
206 0
103 1
51 1
25 1
12 0
6 0
3 1
1 1
35
Информация и информатика
A — 10,
B — 11,
C — 12,
D — 13,
E — 14,
F — 15.
10016 = 25610,
Перевод из шестнадцатеричной
системы в двоичную и обратно ана-
логичен действиям с восьмеричной
системой. Надо опять запомнить таб-
лицу перевода, где вместо триад сто-
ят тетрады (четвёрки):
36
Кодирование информации
37
Информация и информатика
КОДИРОВАНИЕ ИЗОБРАЖЕНИЙ
38
Кодирование информации
39
Информация и информатика
цвет, то при неизменной общей ярко- щена прямым светом, а другая — рас-
сти насыщенность спектрального цве- сеянным от того же источника, то
Часто используется та уменьшится. Интересно, что в при- цвета воспринимаются человеком по-
обозначение HSB роде мало что (или кто) отличается разному, несмотря на то что цвето-
(brightness) вместо насыщенностью цвета (возможно, вой тон и насыщенность этих частей
HSV. лишь тропическая флора и фауна). Ис- одинаковы.
кусственные краски, например изоб- Кодировка с помощью цветового
ражение на мониторе, обладают бо- тона, насыщенности и яркости поз-
лее высокой насыщенностью и воляет легко получить из цветной
поэтому так радуют человеческий глаз. картинки монохромную, или, как не
Яркость (светлота) определяется совсем верно говорят, чёрно-белую,
уровнем действующего на глаз излу- не меняя яркости объектов изобра-
чения. Если одна часть объекта осве- жения.
40
Кодирование информации
41
Информация и информатика
42
Кодирование информации
43
Информация и информатика
КОДИРОВАНИЕ ФИЛЬМОВ
44
Кодирование информации
45
Информация и информатика
Активы Пассивы
Экономические ре- Касса 50 Уставный капитал 85
сурсы в бухгалтерии Основные средства 01 Задолженность поставщикам 60
называют активами, Расчётный счёт 51 Задолженность по оплате труда 70
а привлечённый капи- Готовая продукция 40 Резервный капитал 80
тал — пассивами.
Поэтому основное В России сюда же для простоты Великий немецкий поэт Иоганн
уравнение можно за- включают и собственный капитал Вольфганг Гёте с иронией относился
писать так: предприятия, куда входят, например, к бухгалтерам, называя двойную бух-
Активы = Пассивы + и уставные взносы владельцев пред- галтерию «одним из самых замеча-
+ Капитал. приятия. Важнейшим понятием бух- тельных изобретений человеческого
галтерии является баланс. Это двусто- разума», хотя это высказывание и не
ронняя таблица, левая часть которой лишено здравого смысла.
представляет собой актив, состав и раз- Система двойной записи основы-
мещение хозяйственных средств пред- вается на принципе двойственности.
приятия, а правая часть — пассив (или Все экономические явления имеют два
пассив плюс капитал), где группиру- аспекта — увеличение и уменьшение,
ются все поступления. Сумма активов компенсирующие друг друга, как буд-
баланса должна совпадать с суммой то подчиняясь «закону сохранения».
пассивов, так как актив и пассив — это В этой системе факт хозяйствен-
фактически две точки зрения на одни ной жизни должен быть зафиксиро-
и те же средства. ван как минимум дважды: по дебету од-
Информация, необходимая для ного счёта и кредиту другого — так,
управления и учёта на предприятии, чтобы общая сумма по дебету уравно-
должна накапливаться и всегда быть вешивала общую сумму по кредиту.
под рукой у руководителя. Система Запись в таблице, похожей на бук-
хранения информации при бухгал- ву «T», включает название счёта, дебет
терском учёте состоит из счетов. Счёт (левая часть) и кредит (правая часть).
создают на каждый вид актива, пас- Пусть в кассу поступают деньги (ле-
сива или капитала, включая доходы и вая часть) и из неё производятся вы-
расходы. Соответственно счета ис- платы (правая часть):
пользуются для учёта активов или пас-
сивов. Каждый счёт имеет свой шифр, Касса
который можно писать вместо назва- 10 000 5000
ния счёта. В небольшой фирме доста- 3000 1200
точно иметь в плане несколько десят- 1000
ков счетов, в крупной корпорации их 14 000 6200
тысячи.
Когда бухгалтерский учёт ведётся Сальдо 7800
вручную, на каждый счёт выделяют
отдельную страницу или карточку. Активные счета имеют дебетовое
сальдо, которое показывает остаток
средств, а пассивные счета — кре-
дитовое сальдо, учитывающее все
источники поступлений. По кредиту
пассивных счетов отражается увели-
чение, по дебету — уменьшение этих
источников.
Каждая хозяйственная операция
показана в дебете одного и в кредите
другого счёта в одинаковой сумме
(проводка). Это и называется спосо-
бом двойной записи. Между счетами
И. Г. Тишбейн. возникает взаимосвязь: один счёт по
Иоганн Вольфганг
Гёте в римском дебету связан с другим счётом по кре-
предместье. 1787 г. диту. Например, при начислении из-
46
Кодирование информации
47
Информация и информатика
где тип — это своего рода шифр про- проводки, отчётная информация за
водки, по которому из других таблиц определённый период времени и
Система двойной за- можно ссылаться на таблицу типов многое другое. Но даже по предло-
писи возникла в эпо- проводок, название — полное назва- женной модели легко подсчитать
ху Ренессанса. Ещё в ние проводки, шифр дебета и шифр итоговый оборот средств по любо-
1494 г. францискан- кредита — шифры счетов, участву- му счёту за любой период времени.
ский монах Лука Па- ющих в проводке. Независимо от количества проводок
чоли, друг Леонардо Про каждую проводку важно знать: компьютер выполнит эту задачу без
да Винчи, дал первое её тип, когда произошла и какое ко- ошибок!
описание двойной за- личество средств было переведено. Программа бухгалтерского учё-
писи. Если 31 декабря 2002 г. проводкой но- та способна облегчить и повседнев-
мер 23450 начислили износ в разме- ный труд работников бухгалтерии.
ре 10 тыс. рублей, то запись в табли- Например, при выдаче денег из кассы
це проводок выглядит так: помимо бухгалтерской проводки
необходимо заполнить расходный
Номер Тип Дата Количество ордер. Данную работу также выпол-
няет компьютер: бухгалтер указы-
23450 3 31.12.2002 10 000 вает сумму выдачи, а компьютер де-
лает проводку и печатает ордер.
Разумеется, объём хранимой в Это не только экономит время, но
бухгалтерии информации куда боль- и гарантирует, что сумма, указанная
ше. Существуют первичные докумен- в ордере, совпадает с суммой про-
ты, на основании которых сделаны водки.
48
Кодирование информации
ски все они основаны на одной из Всего на весь текст будет потраче-
двух простых идей. но 500 + 500 . 9 = 5000 бит, что зна-
Первая идея была предложена Дэ- чительно меньше, чем 8000 бит в ис- Идеи Хаффмана ис-
видом Хаффманом в 1952 г. и бази- ходном тексте. пользуют сжатие
ровалась на том, что в обычном тек- Вторая основная идея упаковки CCITT (аббревиатура
сте частоты появления разных состоит в том, что в сообщениях Международного ко-
символов различны. При стандарт- часто встречаются несколько под- митета по телегра-
ном кодировании текста каждый ряд идущих одинаковых байтов, фии и телефонии)
символ кодируется одним байтом. а некоторые последовательности при передаче факсов.
Использование одного байта на байтов повторяются многократно.
один символ упрощает обработку При упаковке графической инфор-
текста. Но перед длительным хране- мации чаще встречается первая си-
нием (или перед передачей по кана- туация, а при упаковке текстов —
лам связи) можно позволить себе бо- вторая, так как в русском языке ред-
лее сложную кодировку текста. При ко встречаются две, а тем более боль-
упаковке по методу Хаффмана час- шее число подряд идущих одинако-
то встречающиеся символы кодиру- вых букв. На рисунке, например,
ются короткими последовательно- голубое небо использует один цвет,
стями битов (короче 8), а более который многократно повторяется
редкие — длинными (может быть, при кодировании этого изображе-
более 8). В результате в среднем по- ния. Да и для хранения графической
лучается менее 8 бит на символ. информации требуется значитель-
Это легко проиллюстрировать. но больше места, поэтому задача её
Пусть в тексте из 1000 байт 50 % про- упаковки наиболее важна. Графиче-
белов. Тогда можно закодировать ская информация вообще очень ред-
текст в виде последовательности дво- ко хранится в компьютере в неупа-
ичных 0 и 1. кованном виде.
Если в тексте встретился пробел, Дэвид Альберт Хаффман.
то в конец последовательности пи-
шется 0, а если встретился непробел, ГРУППОВОЕ
то запишется 1, а за ней добавится
двоичный код этого символа, т. е.
КОДИРОВАНИЕ
1 + 8 бит. Поскольку текст наполови-
ну состоит из пробелов, то на их ко- RLE-кодирование (англ. Run-Length
дировку тратится 500 раз по одному Encoding — «кодирование путём учё-
биту, а на каждый из 500 непробелов та числа повторений») — метод, при-
расходуется по 9 бит. менимый не только к изображениям,
49
Информация и информатика
15 A
LZW-КОДИРОВАНИЕ
Абрахам Лемпель. Другой пример: ФФФААААКУУУУК
потребует уже не двух, а 10 байт: Схема сжатия Лемпеля — Зива — Уэл-
ча (LZW) является одной из самых
3 Ф 4 A 1 К 4 У 1 К распространённых при упаковке изо-
бражений. В 1977 г. Абрахамом Лем-
Таким образом, можно сказать, что пелем и Джекобом Зивом был создан
последовательность одиночных, не- первый алгоритм LZ77. Описанный
повторяющихся байтов при RLE-упа- ими алгоритм работал примерно так.
ковке займёт даже больше места, чем Сжатие происходит за счёт замены
изначально. уже встречавшихся ранее в последо-
Можно предложить следующую вательности одинаковой группы сим-
модификацию метода RLE. волов тройкой значений (триадой):
Пусть первый байт несёт не только указателя на группу, длину совпада-
информацию о числе повторений, но ющей группы и первого отличающе-
и о том, есть ли эти повторения. Если гося символа, идущего за группой.
старший (самый левый) бит равен 1, Максимальная длина фрагмента F
Джекоб Зив. то следующий байт данных надо при определяется равной 10–20 симво-
распаковке повторить столько, сколь- лам. А «скользящее» окно, через ко-
ко записано в оставшихся 7 бит. торое просматривается текст, обо-
Например, байт 100001012 говорит, значалось N.*
что следующий за ним байт нужно по- При очередном шаге самая длин-
вторить 5 раз (так как 1012 = 5). На- ная последовательность в фрагмен-
против, если старший бит первого те «ло ко д» ищется в буфере «ышко
байта равен 0, то просто надо взять весело пошло ко д». При этом най-
несколько следующих байтов данных денная совпадающая группа симво-
без всяких изменений. Сколько имен- лов может перекрывать фрагмент F,
но — опять записано в оставшихся но, естественно, не совпадать с ним.
7 бит. Например, байт 000000112 го- В примере такая группа символов
ворит, что следующие за ним 3 байт найдена — «ло_» (с пробелом в кон-
нужно взять без изменений. це), она и заменится при сжатии на
Например, на последовательность триаду (7, 3, к).
ФФФААААКАЮК потребуется уже не После этого окно сместится на дли-
12 байт, а всего 9: ну группы + 1 (3 + 1 = 4) символов. **
Весьма вероятно, в буфере не бу-
дет найдено даже начало фрагмента,
100000112 Ф 100001002 A 000001002 К А Ю К
т. е. фрагмент начинается с символа,
50
Кодирование информации
АЛГОРИТМ LZW
Метод LZW обычно использует словарь, содержащий 4096 Существуют модификации этого алгоритма, сбрасы-
элементов. Элементы с номерами 0–255 содержат все 256 вающие при переполнении не весь словарь, а только ка-
символов из 8-битной кодировки. Эти элементы словаря кую-то его часть, например первую половину.
всегда постоянны, а остальные элементы с номерами Алгоритм распаковки работает по такому же прин-
256–4095 изначально пусты, но в процессе работы запол- ципу, но несколько сложнее:
няются словами по следующему алгоритму:
алг декодирование LZW
алг кодирование LZW дано в словаре 256 символов
дано в словаре 256 символов надо напечатать раскодированные символы
надо напечатать коды LZW нач лит слово, символ, цел к, к0
нач лит слово, символ | к0:= Прочитать код
| слово:= ”” | вывод Словарь(к0)
| нц | нц
| | символ:= Символ из текста | | к:= Прочитать код
| | если Есть в словаре(слово + символ) | | слово:= Словарь(к0)
| | | то слово:= слово + символ | дописывание | | если Cловарь(к)<>Пусто | Слово есть в
||| символа к слову || словаре?
| | | иначе вывод Код(слово) | код из словаря | | | то вывод Словарь(к)
| | | Добавить к словарю (слово + символ) | | | символ:= Первый символ в Словаре(к)
| | | слово:= символ | | | иначе символ:= слово[1] | первый символ
| | всё | | всё
| кц | | Добавить к словарю (слово + символ)
кон | | к0:= к
| кц
Когда словарь переполняется, алгоритм Уэлча его очи- кон
щает, как бы начиная работу сначала.
51
Информация и информатика
Фрактальное
изображение.
52
Кодирование информации
53
Информация и информатика
54
Кодирование информации
СЖАТИЕ ЗВУКА
55
Информация и информатика
56
Кодирование информации
57
Информация и информатика
Полоса № … 7 8 9 …
Уровень (dB) … 10 60 35 …
58
Кодирование информации
59
НАУКА ИНФОРМАТИКА
ИНФОРМАТИКА
60
Наука информатика
61
Информация и информатика
62
Наука информатика
63
Информация и информатика
64
Наука информатика
65
Информация и информатика
66
Наука информатика
НОРБЕРТ ВИНЕР
67
Информация и информатика
68
Наука информатика
69
Информация и информатика
70
Наука информатика
71
Информация и информатика
72
Наука информатика
73
Информация и информатика
74
Наука информатика
ТРОПА В АКАДЕМГОРОДКЕ
А. П. Ершов
75
Информация и информатика
Фундаментальные исследования
А. П. Ершова в области схем программ
А.П. ЕРШОВ — УЧЁНЫЙ И ЧЕЛОВЕК и теории компиляции оказали замет-
ное влияние на его многочисленных
Вокруг Андрея Петровича Ершова всегда кипела жизнь — его окружа- учеников и последователей.
ли студенты и школьники, аспиранты и молодые исследователи, зару- Книга А. П. Ершова «Программи-
бежные учёные и сибирские журналисты. Андрей Петрович не был ни рующая программа для быстродейст-
администратором по призванию, ни воспитателем по образованию, вующей электронной счётной ма-
но тем не менее к нему постоянно обращались за советами, консуль- шины» — одна из первых в мире
тациями, с просьбами. Приходили и в радости: «Родился сын!», и в пе- монографий по автоматизации про-
чали: «Что делать? Провалился на защите». Среди его аспирантов друж- граммирования.
но и увлечённо работали узбеки и евреи, русские и татары, украинцы За существенный вклад в теорию
и литовцы. У него для каждого находилось нужное слово, правильный смешанных вычислений в 1983 г.
тон. Речь идёт о человеке предельно загруженном, ценящем и умею- А. П. Ершов был удостоен премии име-
щем считать каждую секунду. Но никто и никогда не слышал от него, ни академика А. Н. Крылова.
казалось бы, очень естественной реплики: «Я занят! Мне некогда!». Язык программирования «Альфа»
Интеллигент высшей пробы, он навсегда остался в памяти коллег, дру- и оптимизирующий «Альфа»-транс-
зей и родных настоящим человеком. лятор, первая советская система раз-
Не часто пользовался он служебным автомобилем: пешая прогул- деления времени «Аист-0», система
ка по лесным тропинкам Академгородка ранним утром на работу и по- учебной информатики «Школьница»,
здним вечером домой стали частью его повседневной жизни. система подготовки печатных изда-
Академик А. П. Ершов уделял много внимания проблемам инфор- ний «Рубин», многопроцессорная ра-
мационного обеспечения учёных. Он очень любил книги и собирал их бочая станция «Мрамор» — все эти
всю жизнь. В его личной библиотеке хранилось более 30 тыс. книг, жур- значительные проекты инициирова-
налов, трудов конференций, препринтов и отдельных оттисков статей лись А. П. Ершовым и выполнялись
практически на всех европейских языках. После смерти Андрея Петро- под его руководством.
вича его наследники передали библиотеку в Институт систем инфор- Благодаря уникальным способ-
матики. Теперь это Мемориальная библиотека имени А. П. Ершова. ностям научного предвидения Анд-
Андрей Петрович Ершов был не только талантливым учёным, учи- рей Петрович одним из первых в на-
телем и борцом за свои идеи, но и выдающейся, разносторонне ода- шей стране осознал ключевую роль
рённой личностью. Он любил музыку, поэзию, писал сам и переводил вычислительной техники в прогрессе
на русский язык стихи английских поэтов. Им сделан замечательный науки и общества. Его блестящие
перевод киплинговского стихотворения «Когда» («К сыну»), который идеи заложили основу для развития
специалисты считают лучшим (а ведь существуют переводы и таких в России таких научных направле-
столпов поэзии, как С. Я. Маршак и М. Л. Лозинский). Любимым мес- ний, как параллельное программи-
том отдыха были музыкальные вечера в Доме учёных. рование и искусственный интеллект.
Андрей Петрович прекрасно играл на гитаре и пел. Приятно вспом- В 1980 г. академик начал экспери-
нить вечер у костра в сосновом лесу на берегу Оби. Школьники, слуша- менты по преподаванию программи-
вшие днём лекции «О человеческом и эстетическом факторах в програм- рования в средней школе. Это приве-
мировании», окружают плотным кольцом любимого учителя, взявшего ло к введению в школьную программу
в руки гитару, и тихонько подпевают. Все, кто имел счастье общаться курса информатики и вычислитель-
с академиком Ершовым, будут всегда помнить его блестящие идеи, ной техники. Широко используемый
выдающиеся достижения и необыкновенную доброжелательность. сейчас термин «школьная информа-
Работал он удивительно. Конечно, святыми были рабочий кабинет тика» рождён в кабинете Ершова в Вы-
и университетская библиотека. Но выдающийся учёный не видел за- числительном центре СО АН. С его не-
труднений, если приходилось писать на откидном столике самолётно- посредственным авторским участием
го кресла или в междугородном автобусе Новосибирск — Барнаул. (предложил описание школьного ал-
Младшие коллеги и ученики Ершова старались подражать стилю его горитмического языка) подготовлен
работы даже в мелочах. Каждая страничка рукописей имела пометки первый советский школьный учеб-
даты, часа и минут. Редкая сосредоточенность и целеустремлённость ник по информатике. Кроме того, он
позволяли не забывать о широком диапазоне поглощавших его дел. создал ряд учебных телепередач по
Даже встречу в палате Онкологического центра незадолго до данному курсу. А. П. Ершов был по-
кончины Ершова нельзя было назвать посещением больного. Рядом стоянным и самым дорогим гостем
с больничной койкой стоял столик с книгами и рукописями, Андрей всех Всесоюзных летних школ юных
Петрович постоянно работал, говорил о делах и заботах посетите- программистов, регулярно проводив-
ля, а не о мучившей его болезни. шихся в новосибирском Академго-
родке.
76
Наука информатика
77
Информация и информатика
ЧТО МОЖЕТ
ПРОГРАММИСТ
Вы прирождённый
программист, если
в ваших наручных
часах стоит про-
цессор классом не
ниже Pentium IV.
78
Наука информатика
79
Информация и информатика
80
Наука информатика
81
Информация и информатика
82
Наука информатика
83
АЛГОРИТМ
АЛГОРИТМЫ И ПРОГРАММЫ
86
Алгоритм
87
Алгоритмизация
88
Алгоритм
ПЕРВЫЕ АЛГОРИТМЫ
89
Алгоритмизация
90
Алгоритм
лем, таких, для которых нельзя найти именно и для чего делается, далеко не
процедуру решения. Следовательно, просто.
надо было научиться математиче- Для записи алгоритмов необходим
ски строго доказывать факт отсутст- некоторый язык. При этом крайне
вия соответствующего алгоритма. Это важно, какой именно язык выбран.
можно сделать только в том случае, Неудобство русского (равно как и лю-
если существует строгое определение бого другого естественного) языка
алгоритма. Попытки выработать та- для этих целей очевидно. Фраза
кое определение привели на рубеже «мальчик взял с собой тетрадь в клет-
20—30-х гг. XX в. к возникновению ку» может сообщать нам о школьни-
теории алгоритмов. ке, подготовившемся к уроку ариф-
Почти в это же время возникла метики. Но может иметься в виду
и практическая потребность в осуще- юный любитель животных, который
ствлении сложных вычислений. собирается у клетки с тигром запи-
На повестку дня встала необходимость сывать свои наблюдения и ощуще- Евклид.
решения задач из разных научных ния... Слова могут иметь самые раз-
и инженерных дисциплин: радиоло- ные смысловые оттенки, и понять их
кации, самолётостроения, моделиро- без детального анализа всего текста
вания физических процессов (осо- подчас просто невозможно.
бенно из области ядерной физики, Весьма распространённым явля-
баллистики и многих других). Вычис- ется графический способ записи ал-
лительные возможности человека горитмов на языке блок-схемы. Она
были существенно ограничены, сред- представляет собой набор элемен-
ства механизации, а тем более авто- тов (блоков), соединённых стрел-
матизации вычислений практически ками. Каждый элемент — это неко-
отсутствовали. Появление первых торая часть алгоритма. Элементы
проектов вычислительных машин блок-схемы делятся на два вида:
стимулировало исследование возмож- содержащие какие-либо действия
ностей практического применения обозначают прямоугольниками, а
алгоритмов, использование которых содержащие проверку условия —
ввиду их трудоёмкости было ранее ромбами. Из прямоугольников всег-
недоступно. Дальнейший бурный про- да выходит только одна стрелка
гресс вычислительной техники опре- (входить может несколько), а из
делил развитие как теоретических, так ромбов — две. Первая помечается
и прикладных аспектов изучения ал- словом «да», а вторая — «нет» (они
горитмов. показывают, выполнено условие или
нет).
На рисунке показана блок-схема
КАК ЗАПИСЫВАТЬ алгоритма нахождения НОД:
АЛГОРИТМЫ
91
Алгоритмизация
ПРОГРАММА
Слово «программа» имеет несколько
значений: план деятельности или ра-
бот, краткое изложение содержания
учебного предмета, содержание кон-
церта или циркового представления
и некоторые другие. Среди них от-
дельно выделено одно, специальное
значение: программа — это описание
алгоритма решения задачи на языке
компьютера.
92
Алгоритм
93
Алгоритмизация
как Abu ‘Abd Allah Muhammad ibn Musa в одном из германских математичес-
al-Khwarismi и означает «Мухаммад, ких словарей «Vollstandiges mathema-
сын Мусы, отец Абдуллы, родом из Хо- tisches Lexicon», изданном в Лейпциге
резма». Хорезм — это историческая об- в 1747 г. Термин algorithmus объясня-
ласть на территории современного Уз- ется в нём как понятие о четырёх ариф-
бекистана, центром которой является метических операциях. Но такое зна-
древний город Хива. чение не было единственным, ведь
Почти все словари сходятся в том, терминология математической науки
что первоначально слово имело фор- в те времена ещё только формирова-
му algorismi и лишь спустя какое-то вре- лась. В частности, латинское выраже-
Аль-Хорезми. мя потеряло последнюю букву, приоб- ние «algorithmus infinitesimalis» приме-
ретя более удобный для европейского нялось к способам выполнения
произношения вид algorism. Позднее действий с бесконечно малыми вели-
и оно, в свою очередь, неоднократно чинами.
подвергалось искажениям, последнее Постепенно все старинные значе-
из которых, скорее всего, связано со ния вышли из употребления. К нача-
словом arithmetic, имеющим гречес- лу XX в. слово «алгоритм» уже означа-
кое происхождение. Уже в новом на- ло «всякий арифметический или
писании слово встречается в XVIII в. алгебраический процесс, который вы-
полняется по строго определённым
правилам», именно так оно объясня-
ется в Большой советской энцикло-
СПОР АЛГОРИСМИКОВ И АБАЦИСТОВ педии (1926 г.).
Можно проследить процесс про-
Многие века абак фактически был единственным средством для прак- никновения слова «алгоритм» в рус-
тических вычислений. В историю математики вошло упорное проти- ский язык. Его не было ни в «Толковом
востояние лагерей абацистов и алгорисмиков (первых иногда называ- словаре живого великорусского язы-
ли гербекистами). Началось оно с появления в 1202 г. знаменитой ка» В. И. Даля (1863 г.; а вот слово «ал-
«Книги абака» Леонардо Пизанского (Фибоначчи), где впервые было гебра» там присутствует), ни в «Толко-
сказано, что кроме счёта на пальцах и на абаке возможен также счёт вом словаре русского языка» под
на бумаге. Алгорисмики предложили использовать для вычислений редакцией Д. Н. Ушакова (1935 г.). За-
арабские цифры, только-только начавшие проникать в Европу благо- то слово «алгорифм» есть и в популяр-
даря переводам сочинений восточных математиков. Но прошло це- ном дореволюционном Энциклопеди-
лых три столетия, прежде чем новый способ счёта окончательно ческом словаре братьев Гранат, и в уже
утвердился, — столько времени потребовалось, чтобы выработать упоминавшемся первом издании БСЭ,
общепризнанные обозначения, усовершенствовать и приспособить где говорится, что в Средние века так
к записи на бумаге методы вычислений. И хотя трактат Луки Пачоли называли «правило, по которому вы-
«Сумма знаний по арифметике, геометрии, отношениям и пропорцио- полняется то или другое из четырёх
нальности» (1494 г.) подвёл черту под этим спором, счётная доска ещё арифметических действий по десятич-
долго не выходила из употребления. ной системе счисления». А вот «Мате-
матическая энциклопедия» даёт его
расширенное толкование: не только
как искусства счёта в десятичной по-
зиционной системе счисления, но
и как самой десятичной системы.
То, что алгоритм воспринимался
как термин сугубо специальный и ма-
лозначительный, подтверждается от-
сутствием соответствующих статей
в менее объёмных изданиях. В част-
ности, его нет даже в десятитомной
Малой советской энциклопедии
(1957 г.), не говоря об однотомных
энциклопедических словарях. Но за-
то спустя десять лет в третьем изда-
Лука Пачоли. нии БСЭ (1969 г.) «алгоритм» уже ха-
рактеризуется как «одно из основных
94
Алгоритм
95
ОСНОВЫ ПРОГРАММИРОВАНИЯ
ПРОСТЕЙШИЕ ПРОГРАММЫ
ввод а
96
Основы программирования
97
Алгоритмизация
вперёд 20
вправо 90
вперёд 20
вправо 90
вперёд 20
вправо 90
вперёд 20
вправо 90
98
Основы программирования
99
Алгоритмизация
a:= 1
если a < 3
| то b:= “подходящий результат”
всё
c:= 10
100
Основы программирования
101
Алгоритмизация
нц <выражение> раз
| <серия>
кц
102
Основы программирования
шения формально отсутствует, его такого цикла? Для этого есть две воз-
участие в выполнении команды оче- можности:
видно: цикл завершается, как только • если группа команд, которые же-
неявно формируемое и увеличиваю- лательно выполнить в теле команды
щееся на единицу при каждом повто- повторения, может понадобиться
рении тела цикла значение счётчика в программе неоднократно, то реко-
сравняется с n. Так, цикл мендуется создать процедуру из этой
группы команд, и тогда на соответст-
a:= 10 вующей ветви выражение <команда>
b:= 12 записать как вызов процедуры. Вот как
i:= 1 Кукарача решает задачу спуска вниз
s:= 0 по лесенке:
нц a + b раз
| s:= s + m [i] ЭТО СПУСК
| i:= i+1 ПОВТОРИ 9 ЛЕСЕНКА
кц КОНЕЦ
ЭТО ЛЕСЕНКА
суммирует первые 22 значения мас- ВПРАВО
сива m, от m[1] до m[22]. ВНИЗ
В языке управления исполнителем КОНЕЦ
Кукарача, где в качестве тела цикла
<серия> допускается единственная ко-
манда, цикл с фиксированным числом
повторений выглядит совсем просто:
ПОВТОРИ n <команда>
ПОВТОРИ 9 ВПРАВО
ПОВТОРИ 9 ВНИЗ
ПОВТОРИ 9 ВЛЕВО
ПОВТОРИ 9 ВВЕРХ
103
Алгоритмизация
нц пока <условие> нц
| <тело цикла> | <тело цикла>
кц кц при <условие>
a:= 10
b:= 12
i:= 1
s:= 0
нц
| s:= s + m [i]
| i:= i + 1
кц при i < a + b
104
Основы программирования
105
Алгоритмизация
МАССИВЫ
106
Основы программирования
107
Алгоритмизация
СТРУКТУРЫ ДАННЫХ
108
Основы программирования
109
Алгоритмизация
110
Основы программирования
111
Алгоритмизация
Дно
стека
Пружина
СТЕК
Стек легко представить в виде рас-
Стек — самая популярная и, пожалуй, положенной вертикально трубки
самая важная структура данных с пружинным дном. Верхний конец
в программировании. Стек представ- трубки открыт, и в него можно до-
бавлять элементы. Каждый новый
элемент проталкивает на одну пози-
цию вниз элементы, помещённые
в стек ранее. При извлечении эле-
мента из стека все остальные как бы
выталкиваются вверх. (Общеприня-
тые английские термины здесь очень
выразительны: операция добавления
элемента в стек обозначается словом
push — «затолкнуть», «запихнуть»,
а операция удаления словом pop —
«выстреливать».) Пример стека — ма-
газин карабина.
112
Основы программирования
ИСПОЛЬЗОВАНИЕ СТЕКА
В ПРОГРАММИРОВАНИИ
113
Алгоритмизация
РЕАЛИЗАЦИЯ СТЕКА
НА БАЗЕ МАССИВА
114
Основы программирования
Вершина стека SP
Элементы
стека
115
Алгоритмизация
Адрес возврата SP
222
333
116
Основы программирования
× + 2 3 – 15 7,
2 3 + 15 7 – × .
117
Алгоритмизация
118
Основы программирования
119
Алгоритмизация
120
Основы программирования
121
Алгоритмизация
122
Основы программирования
ДЕРЕВЬЯ И ГРАФЫ
Деревья в программировании —
Граф — это фигура, которая состоит наиболее часто используемый вид гра-
из вершин и рёбер, соединяющих вер- фа. Так, на их построении основаны
шины. Примером графа является схе- многие алгоритмы сортировки и по-
ма линий метро. Рёбра могут иметь иска. Компиляторы в процессе пере-
направления, т. е. изображаться стре- вода программы с языка высокого
лочками; такие графы называют ори- уровня на машинный язык представ-
ентированными. ляют фрагменты программы в виде
Дерево — связный граф без цик- деревьев, которые называются син-
лов. Кроме того, в нём выделена одна таксическими.
вершина, которая называется корнем Деревья естественно появляют-
дерева. Остальные вершины упоря- ся всюду, где имеются какие-либо
дочиваются по длине пути, который иерархические структуры (структуры,
123
Алгоритмизация
124
Основы программирования
125
Алгоритмизация
РЕАЛИЗАЦИИ МНОЖЕСТВА:
ПОСЛЕДОВАТЕЛЬНЫЙ
И БИНАРНЫЙ ПОИСК,
ХЕШИРОВАНИЕ
БИНАРНЫЙ ПОИСК
0 1 Число элементов — 1 N –1
Допустим, можно сравнивать элемен-
ты множества друг с другом, опреде-
ляя, какой из них больше. (Например,
126
Основы программирования
127
Алгоритмизация
Элементы
множества
128
Основы программирования
129
Алгоритмизация
СОРТИРОВКА
130
Основы программирования
131
Алгоритмизация
О ВАЖНОСТИ ПОРЯДКА
132
Основы программирования
133
Алгоритмизация
БЫСТРАЯ СОРТИРОВКА
Этот метод сортировки используют
в основном обмены. Главная его идея
заключается в том, чтобы осуществ-
лять перестановки элементов на как
134
Основы программирования
135
Алгоритмизация
oстаток:= 0
нц для i от 1 до 40
| нц для j от 1 до 50
| | если a[i, j]= 0
Билетная касса | | | то остаток:= остаток+1
в кинотеатре. | | всё
| кц
Пусть надо организовать предва- кц
рительную продажу билетов на один
сеанс в кинотеатр, где в зале 40 рядов Для того чтобы определить общую
по 50 мест. Для этого необходимо стоимость непроданных билетов, на-
знать, на какие места билеты уже про- до знать цену каждого билета, одна-
даны. Раньше перед кассиром лежал ко в кинотеатре цена билетов разная,
план с изображением всех мест в ки- в зависимости от ряда. Следователь-
нозале, где крестиками отмечали ме- но, в модель логично включить ин-
ста, билеты на которые уже проданы. формацию о ценах на билеты, пред-
Таблица заменила план в информа- ставив её в виде линейной таблицы
ционной модели: или вспомогательного алгоритма
s:= 0
нц для i от 1 до 40
| нц для j от 1 до 50
| | если a[i, j]= 1
| | | то s:= s + цена(i)
| | всё
| кц
кц
136
Основы программирования
137
Алгоритмизация
ПАРАЛЛЕЛЬНОЕ ПРОГРАММИРОВАНИЕ
138
Основы программирования
нять сразу несколько программ), при цессов при доступе к общему ресур-
этом работа каждого кассира рассмат- су. Для этого нужно выделить в
ривалась как независимый процесс, а каждом процессе часть, называемую
список билетов — как общий ресурс. критической секцией или крити-
ческим интервалом, где происходит
доступ к общему ресурсу. Например,
ПРОБЛЕМА ВЗАИМНОГО алгоритм «процесс» выполняется цик-
лически: начинается с обращения к
ИСКЛЮЧЕНИЯ вспомогательному алгоритму «кри-
тическая секция», и заканчивается вы-
Требуется решить проблему син- полнением вспомогательного алго-
хронизации выполнения двух про- ритма «окончание».
139
Алгоритмизация
140
Основы программирования
141
Алгоритмизация
142
Основы программирования
143
Алгоритмизация
144
Основы программирования
145
ТЕОРИЯ ПРОГРАММИРОВАНИЯ
МАТЕМАТИЧЕСКАЯ ЛОГИКА
Логика (от греч. «ло-
гос», означающего од-
новременно «слово» и КЛАССИЧЕСКАЯ ЛОГИКА Ещё античные философы замети-
«смысл») — наука о за- ли, что очень часто рассуждения име-
конах, формах и опе- Наука логика известна с глубокой ют значительное сходство в своём
рациях правильного древности, её отцом считается вели- строении, которое не зависит от со-
мышления. Её основ- кий древнегреческий философ Ари- держания входящих в него утверж-
ная задача заключа- стотель (384—322 до н. э.). дений.
ется в нахождении и Если идёт снег, то сейчас зима; идёт Вот другой пример.
систематизации пра- снег; следовательно, сейчас зима. Если воду нагреть до 100° С, то она
вильных способов рас- Это рассуждение состоит из трёх закипает; воду нагрели до 100° С; сле-
суждения. утверждений. Первые два утвержде- довательно, вода кипит.
ния называют посылками, а третье — Несмотря на различие содержания,
заключением. форма (схема) у обоих рассуждений
одинакова.
Если есть первое, то есть и вто-
рое; первое имеет место; следова-
тельно, имеет место и второе.
Разумно оценивать правильность
рассуждения теми результатами, к ко-
торым оно приводит. Рассуждение
с использованием этой схемы оста-
нется правильным, о каких бы объек-
тах ни велась речь. Если рассуждение
правильное, то из его посылок следу-
ет заключение. В таких случаях гово-
рят, что схема рассуждения представ-
ляет собой логический закон.
146
Теория программирования
147
Алгоритмизация
• ассоциативным x ϕ1 ϕ2 ϕ3 ϕ4
(a+b)+c=a+(b+c), 0 0 0 1 1
1 0 1 0 1
(a. b). c=a. (b. c);
148
Теория программирования
x1 x2 x3 ϕ(x 1, x 2, x 3)
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 1
149
Алгоритмизация
• Правила де Моргана:
– –
x1∧x2=x1∨x2 ,
– –
x1∨x2=x1∧x2 .
• Идемпотентность:
x∧x=x,
x∨x=x.
• Двойное отрицание:
=
x =x.
• Закон противоречия:
x∨x =0.
150
Теория программирования
• Обобщённое склеивание: – –
x1∨x2 = x1∨x2=x x ,
1 2
–∨xy= xz∨yz
xz∨yz –. – ∨x
x1x2=x1x2 =x –
1 2.
151
Алгоритмизация
152
Теория программирования
153
Алгоритмизация
«Человек не знал двух слов — “да” и “нет”. Он отве- Лукасевича значения могли быть истинными, лож-
чал туманно: “Может быть, возможно, мы подума- ными и нейтральными. Спустя год американский
ем”...». Эту запись находим на страницах знамени- учёный Эмиль Пост (1897—1954) создал её обоб-
тых «Записных книжек» замечательного писателя щённую модель — k-значную логику. Ещё позднее,
Ильи Ильфа (одного из соавторов романов «Две- в 1930 г., Ян Лукасевич и Альфред Тарский (1902—
надцать стульев» и «Золотой телёнок»). 1983) разработали бесконечнозначную логику.
И в самом деле, часто нам явно не хватает двух Для многозначных логик также можно опреде-
известных слов, точнее, двух логических значений. лять алгебры, подобные булевой. Для k-значной ло-
Ведь то и дело мы слышим высказывания, про ко- гики операции отрицания, конъюнкции и дизъюнк-
торые нельзя сказать, истинны они или ложны. ции можно задать следующим образом:
«Возможно, я получу на экзамене отличную оцен-
ку». Или, например, обычной является ситуация, ког- –
x=(k – 1) – x,
да мы должны принять решение — делать что-либо
или нет, не имея при этом всей необходимой инфор- x1∧x2= min(x1, x2),
мации либо не зная степени её достоверности.
Учёные давно пытались преодолеть ограниче- x1∨ x2 = max(x1, x2).
ния классической аристотелевой логики. Например,
русский логик Н. А. Васильев в 1910 г. разработал Для двузначной логики, т. е. для случая k=2, это
оригинальную систему, назвав её «воображаемая ло- определение приводит к уже известным булевым
гика». Согласно Васильеву, каждое суждение может операциям.
быть утвердительным, отрицательным или акциден- Применяется в логике и так называемый лингви-
тальным. стический подход, при котором истинность пере-
Если акцидентальное суждение истинно, то и менных задаётся не числовыми значениями, а упо-
утвердительное, и отрицательное суждения явля- рядоченным набором словесных характеристик.
ются ложными. Тем не менее одно и то же сужде- Например, набор значений лингвистической пере-
ние не может быть одновременно и истинным, и лож- менной «Рост человека» можно упорядочить (по воз-
ным. Логика Васильева не имела большой растанию): лилипут, очень маленький, маленький,
известности и только в последние годы учёные вновь ниже среднего, средний, выше среднего, высокий,
стали обращаться к его идеям. очень высокий, великан.
Зато самое широкое распространение получили Лингвистические переменные имеют прямое от-
так называемые многозначные логики. В них значе- ношение к так называемой нечёткой математике, по-
ния истинности переменных и функций располага- строенной на базе понятий нечёткого множества
ются в диапазоне от 0 до k – 1 (тогда 0 можно пони- и нечёткого вывода. С её помощью решаются мно-
мать как абсолютную ложь, а k – 1 — как абсолютную гие важные практические задачи. Например, в об-
истину). ласти искусственного интеллекта, где разрабатыва-
Основоположником новой науки стал польский емые для разных аналитических и диагностических
логик и математик Ян Лукасевич (1878—1956), пред- целей технические, медицинские и другие эксперт-
ложивший в 1920 г. трёхзначную логику. В логике ные системы в основе механизма принятия решения
содержат нечёткий вывод.
Основоположником нечёткой математики явля-
ется американский учёный Лофти Заде, развива-
ющий свою теорию с 60-х гг. XX в.
Существует ещё и совершенно особая женская
логика! Великий русский писатель Иван Сергеевич
Тургенев так охарактеризовал её, вложив в уста Пи-
гасова (персонаж романа «Рудин») слова: «...мужчи-
на может, например, сказать, что дважды два не че-
тыре, а пять или три с половиною, а женщина скажет,
что дважды два — стеариновая свечка».
Но тут уж пасуют и математика, и информа-
тика...
154
Теория программирования
ТЕОРИЯ АЛГОРИТМОВ
ФОРМАЛИЗАЦИЯ
ПОНЯТИЯ АЛГОРИТМА Суперпозиция — подстановка одних функций в другие. Она
порождает математические формулы. Например, если в функ-
цию xy+z вместо y подставить функцию t – u, а вместо z функ-
Теория алгоритмов строит и изучает
цию vw, получим формулу x(t – u)+vw.
конкретные модели алгоритмов. Эти
модели различаются наборами преоб-
разуемых объектов и элементарных
шагов, способами выбора следующе-
го шага и т. д.
Можно выделить три главные ли-
нии построения теоретических мо- НОРМАЛЬНЫЕ АЛГОРИТМЫ МАРКОВА
делей алгоритмов.
Первая линия связана с тем очевид- Для нормальных алгоритмов задаются ко-
ным фактом, что любые данные могут нечный алфавит и конечное множество
быть закодированы числами. Каждое подстановок (правил замены одних час-
преобразование данных сводится к тей слова на другие). Работа алгоритма
арифметическим вычислениям, а каж- состоит из выполнения в определённом
дый алгоритм находит значение неко- порядке двух операторов: операторов-
торой числовой функции. Элементар- распознавателей и операторов подста-
ными шагами алгоритма являются новки. Оператор-распознаватель находит
выполняемые арифметические опера- вхождение левой части подстановки
ции. Последовательность элементар- в слово, а оператор подстановки заменя-
ных шагов определяется в таких моде- ет это вхождение на соответствующую
лях либо с помощью суперпозиции правую часть.
функций, либо с помощью рекурсии. Пусть заданы алфавит A={x, y} и мно-
Вторая линия связана с предполо- А. А. Марков жество подстановок yyxÕy; xxÕy; yyyÕx!
жением, что любой алгоритм можно (Последняя — заключительная подстанов-
представить как последовательное ка, после выполнения которой процесс останавливается.) Исходное
преобразование входных слов, со- слово p = x y x x x y y.
ставленных из символов конечного Если с помощью оператора-распознавателя выяснилось, что первая
алфавита. Таким образом возникло подстановка к этому слову неприменима, надо перейти к анализу вто-
понятие нормальных алгоритмов, рой подстановки. Оператор-распознаватель выделяет первое вхожде-
предложенных и изученных А. А. Мар- ние её левой части (xx) в p: p=xy(xx)Õxyy. Оператор подстановки вы-
ковым (1903—1979). полнит подстановку, в результате чего получается новое слово p1=xyyxyy.
Третья линия достаточно близка К нему применима первая подстановка: p1=x(yyx)yyÕxyyy=p2. К полу-
ко второй. Только в отличие от неё ченному слову применима лишь третья подстановка: p2=x(yyy)Õxx=p3.
использует не абстрактные подста- Это была заключительная подстановка, поэтому слово p3 — оконча-
новки, а определяет какие-либо кон- тельный результат работы алгоритма.
кретные механизмы. При этом пред-
полагается: каждый шаг алгоритма
таков, что его может выполнить до-
статочно простое устройство (маши-
на). Желательно, чтобы оно было уни-
версальным, т. е. чтобы на нём можно
было выполнять любой алгоритм.
Значит, надо представить механизм
работы машины в виде стандартной
схемы, максимально простой по логи-
ческой структуре, но настолько точной,
чтобы она могла служить предметом
математического исследования. Впер-
вые это было сделано американским
математиком Эмилем Постом в 1936 г.,
155
Алгоритмизация
{
S 1, M1
число клеток может быть увеличено). • команда разветвле- S 2, M2
В каждой клетке может быть записан ния, записываемая так: ? …
один символ из фиксированного ал- S n, Mn
фавита. В любой конкретный мо-
мент головка обозревает одну клет- Здесь S1, S2, ... — некоторые симво-
ку и способна работать только с ней. лы из алфавита машины Поста, M 1,
M2, ... — отсылки. По этой команде ана-
лизируется символ из обозреваемой
клетки. Если он совпадает с Si, следу-
ющей будет выполняться команда
с номером Mi. При этом головка ни-
куда не перемещается и на ленту ни-
чего не записывается. Если в клетке
стоит символ, не упомянутый в ко-
манде разветвления, то происходит
так называемая безрезультатная оста-
новка машины Поста (иначе говоря,
машина ломается).
Другими возможными исходами
выполнения программы на машине
Поста являются бесконечная работа
и результативная остановка, которая
вызывается выполнением команды
СТОП.
Вот пример. Пусть алфавит маши-
ны Поста состоит из символов {-, 0, 1}
(символом «-» обозначим пробел), а на
ленте записана последовательность
символов 1 и 0. Головка «смотрит» на
самый левый элемент этой последо-
вательности. Требуется заменить все
символы 1 на 0, а 0 на 1. Программа
(вместе с комментариями, которые
размещаются между % ... %) будет вы-
глядеть так:
156
Теория программирования
157
Алгоритмизация
158
Теория программирования
159
Алгоритмизация
СЛОЖНОСТЬ АЛГОРИТМОВ
160
Теория программирования
161
Алгоритмизация
162
Теория программирования
163
Алгоритмизация
Программы для самых первых ком- ставленных в виде двоичных или вось-
пьютеров записывались как последо- меричных кодов. Конечно, составлять
вательность машинных команд, пред- и отлаживать большие программы
164
Теория программирования
165
Алгоритмизация
〈предложение〉→
〈группа подлежащего〉 〈группа сказуемого〉.
166
Теория программирования
Продолжим вывод:
〈определение〉〈группа подлежащего〉〈группа
сказуемого〉→
зелёная 〈группа подлежащего〉
〈группа сказуемого〉→
зелёная 〈подлежащее〉 〈группа сказуемого〉→
зелёная карета 〈группа сказуемого〉→
зелёная карета 〈сказуемое〉 〈обстоятель-
ство〉→
зелёная карета катится 〈обстоятельство〉→
зелёная карета катится по дороге.
167
Алгоритмизация
168
Теория программирования
Операционная система UNIX содержит несколько стан- скольких файлах. В качестве образца поиска можно за-
дартных программ, работа которых основана на теории дать либо произвольный фрагмент текста, либо регу-
регулярных языков. Прежде всего это программа LEX, лярное выражение. Причём поиск происходит очень
осуществляющая лексический анализ текста, т. е. раз- быстро, он занимает время, линейно зависящее от дли-
бивающая текст на слова в соответствии с определён- ны входного файла и не зависящее от длины искомого
ным набором регулярных выражений. Также это про- фрагмента. Высокая скорость работы объясняется тем,
грамма GREP (англ. Get Regular Expression Pattern — что программа GREP строит для поиска конечный авто-
«выделить образец по регулярному выражению»), мат, на который последовательно подаются символы из
осуществляющая контекстный поиск в одном или не- входного потока.
169
Алгоритмизация
170
Теория программирования
〈формула〉→〈формула〉 + 〈формула〉 |
〈формула〉 * 〈формула〉 | (〈формула〉) |
〈переменная〉 | 〈константа〉
171
Алгоритмизация
НИСХОДЯЩИЙ
В грамматике арифметических формул имелось правило: (РЕКУРСИВНЫЙ) РАЗБОР
〈формула〉→〈формула〉 + 〈терм〉.
Пусть в грамматике имеется правило
Попытка выполнить нисходящий разбор в этой грамматике при-
ведёт к бесконечной рекурсии, поскольку подпрограмма 〈фор- A→BtD,
мула〉 будет постоянно обращаться сама к себе, не прочитав ни
одного символа, содержащегося во входной цепочке. Следова- где A, B, D — нетерминалы, а t — тер-
тельно, эта грамматика не допускает нисходящего разбора (но минал (т. е. обычный символ). Надо
допускает восходящий разбор!). создать подпрограмму с именем «A»,
которая пытается выделить из вход-
ной цепочки начальный отрезок,
выводимый из нетерминала A. По ука-
Всякая грамматика, обладающая занному правилу этот отрезок дол-
свойством LL(1), располагает также жен начинаться с отрезка, выводимо-
свойством LR(1), т. е. класс LR(1)- го из нетерминала B ; затем следует
грамматик включает в себя класс обычный символ t и далее отрезок,
LL(1). В то же время есть LR(1)-грам- выводимый из нетерминала D. Под-
матики, которые не являются LL(1): программа A сначала вызывает под-
например, детерминированная грам- программу B, которая читает и раз-
матика языка арифметических фор- бирает начальный отрезок цепочки,
мул и грамматика языка С. Вообще, соответствующий нетерминалу B. За-
построить леворекурсивную грам- тем подпрограмма A проверяет, сов-
матику всегда сложно: даже если это падает ли очередной символ цепоч-
удаётся сделать, результат выглядит ки с символом t , пропускает его
крайне неестественно. Напротив, и вызывает подпрограмму D. Таким
LR(1)-грамматика обычно очень лег- образом, обработка отрезка, пред-
ко выписывается для большинства ставляющего нетерминал A, сводится
алгоритмических языков. к обработке более коротких отрез-
Зачем же вообще рассматривать ков, представляющих нетерминалы
LL(1)-грамматики и рекурсивные B и D.
алгоритмы? Единственная причина Если имеются два разных правила
состоит в том, что понимание алго- для нетерминала A, например
ритма восходящего разбора, исполь-
зующегося в большинстве случаев, A→BtD,
требует некоторой программист- A→EFg,
ской культуры. Нужно хотя бы знать,
что такое стек. то подпрограмма A по первому сим-
Поэтому многие пособия по про- волу входной цепочки должна разо-
граммированию для начинающих браться, какое из этих двух правил
ограничиваются только рекурсив- нужно применить. Это можно сде-
ными алгоритмами разбора. лать, только если любые цепочки,
выводимые из нетерминалов B и E ,
обязательно начинаются с разных
символов.
Слово «рекурсивный» в названии
алгоритма употребляется потому, что
в определении нетерминала B снова
может встретиться нетерминал A (либо
в грамматике будет правило, которое
содержит A как в левой, так и в правой
частях). Следовательно, подпрограм-
ма B, в свою очередь, вызывает A (либо
подпрограмма A вызывает сама себя).
Поэтому при нисходящем разборе
возможна рекурсия.
172
Теория программирования
ВОСХОДЯЩИЙ РАЗБОР
В алгоритме восходящего разбора ис-
пользуется стек. Его можно представ-
лять как слово, состоящее из тер-
миналов и нетерминалов, которое
наращивается или изменяется только
с правого конца. Для примера можно
рассмотреть грамматику арифмети-
ческих формул:
F→F+F | V | C
V→x | y
C→1 | 2 | ... | 9,
173
Алгоритмизация
174
Теория программирования
175
Алгоритмизация
176
Теория программирования
В точку (5) переходим из (3), ес- procedure Euclid (x0, y0: integer; var d: integer)
ли не выполняется предыдущее усло- var x, y: integer
вие x > y, т. е. при y >= x. Случай y = begin
x исключается, так как в (3) утверж- {(1) x0 > 0, y0 > 0}
дается, что x <> y. x:= x0; y:= y0;
{(2) x > 0, y > 0, НОД(x, y) = НОД(x0, y0)}
(6) x > 0, y > 0, while x <> y do begin
НОД(x, y) = НОД(x0, y0) {(3) x > 0, y > 0, x <> y,
НОД(x, y) = НОД(x0,y0)}
В точку (6) переходим из (4) и из (5). if x > y
При переходе из (4) выполняется then {(4) x > y > 0, НОД(x, y) = НОД(x0, y0)}
присваивание x:= x — y. Предположим, x:= x - y
что старое значение x (до присваива- else {(5) y > x > 0, НОД(x, y) = НОД(x0, y0)}
ния) было x_с, а новое (после присва- y:= y - x
ивания) — x_н. {(6) x > 0, y > 0, НОД(x, y) = НОД(x0, y0)}
В соответствии с (4) x_с > y, по- end
этому x_н = x_с – y > 0. {(7) x = y > 0, НОД(x, y) = НОД(x0, y0)}
Пусть d — произвольный общий d:= x;
делитель x_с и y. Очевидно, что раз- {(8) d = НОД(x0, y0)}
ность x_с — y делится на d, значит, d — end
общий делитель x_н и y.
177
ЯЗЫКИ ПРОГРАММИРОВАНИЯ
ЯЗЫК ПРОГРАММИРОВАНИЯ ЛОГО
178
Языки программирования
КВАДРАТ
179
Алгоритмизация
ЭТО УЗОР :А
ПОВТОРИ 8
[ВПЕРЁД :А НАПРАВО 45]
Спираль с шагом 50 УЗОР :А + 2
и углом 20. КОНЕЦ
180
Языки программирования
181
Алгоритмизация
182
Языки программирования
00 xx — число xx;
01 xx — ячейка памяти с номером xx.
183
Алгоритмизация
Это означает СЛоЖить ячейки Памя- лист привёл бы совсем в другую часть
ти №1 и №2, результат поместить города.
в ячейку Памяти №3. Потом ячейку Па- Можно было сохранить идею, ал-
мяти №3 разДЕЛить на 2 и результат горитм, общий принцип решения.
снова поместить в ячейку Памяти №3. А сам машинный код приходилось пи-
Такая символьная система записи сать (или исправлять) каждый раз за-
команд называется мнемонической ново.
(от греч. «мнеме» — «память»), т. е. Для решения задачи придумали си-
удобной для запоминания. стему именования адресов ячеек па-
Но одной только мнемонической мяти и участков кода. Каждой ячейке
записи для эффективного создания памяти присваивалось своё уникаль-
программ мало. Программистам при- ное имя, и дальше в программе ис-
ходилось постоянно «изобретать ве- пользовался уже не номер ячейки па-
лосипед» — писать код для одного и мяти, а соответствующее ей имя:
того же действия. Части кода про-
грамм, решавшие ту или иную подза- ИМЯ “X” П№1
дачу, конечно, можно было сохранить ИМЯ “Y” П№2
для последующего использования, ИМЯ “РЕЗУЛЬТАТ” П№3
но ценность такого сохранённого ко-
да невелика, поскольку его нельзя сра- СЛЖ X, Y > РЕЗУЛЬТАТ
зу же использовать при создании но- ДЕЛ РЕЗУЛЬТАТ, 2 > РЕЗУЛЬТАТ
вых программ.
Части машинного кода были «при- Таким образом, стало возможным
вязаны» не только к определённому выделение частей кода для решения
процессору, компьютеру, но и к про- отдельных подзадач в качестве еди-
грамме, в рамках которой они напи- ного целого. Эти небольшие програм-
саны. В машинном коде явно заданы мы называются подпрограммами или
адреса ячеек памяти для хранения ре- процедурами. У процедуры есть стро-
зультатов вычисления и адреса, по ко- го определённый набор начальных
торым передаётся управление при на- данных, которые ей необходимы для
ступлении тех или иных событий. работы, и набор выходных данных,
А в новой программе эти ячейки па- которые, собственно, и являются ре-
мяти могут уже использоваться сов- зультатом её работы.
сем по-другому. Старый машинный Для удобства процедуры объединя-
код «почувствовал» бы себя так же, как ют в библиотеки процедур. Обычно
и шофёр, если бы все улицы города процедуры в рамках одной библиоте-
внезапно переименовали. Путевой ки применяются для решения одина-
184
Языки программирования
ковых или похожих задач, обладают сту приходилось каждый раз «приду-
сходными правилами и предназначе- мывать» свою алгебру, геометрию,
ны для совместного использования. химию, вместо того чтобы восполь-
Может существовать библиотека про- зоваться готовым учебником и, от-
цедур для решения алгебраических толкнувшись от базовых знаний,
уравнений, библиотека для обработки изобрести что-то новое. Библиоте-
звука и видео и даже библиотека для ки процедур позволили программи-
работы с другими библиотеками про- стам быстрее и качественнее созда-
цедур. вать новые сложные программы.
Но недостаточно только придумать Эти два направления послужили
красивую систему записи программы. основой для развития новых языков
Такую программу компьютер выпол- и систем программирования.
нить не сможет, ему необходимы ма-
шинные коды. Процесс перевода мне-
монической записи в код легко ФОРМУЛЫ, ФОРМУЛЫ,
описать в виде простых пошаговых
инструкций. Однако если её будет
ФОРМУЛЫ... FORTRAN
выполнять человек, то вместо преиму-
ществ новой системы возникнет Язык Ассемблер был хорош для про-
большое количество ошибок, описок граммистов, разрабатывающих при-
и времени это займёт немало. Выпол- кладные программы, операционные
нение подобной скучной, чисто меха- системы. Но, несмотря на его мнемо-
нической, кропотливой и просто ничность, он не подходил для основ-
неинтересной, но в то же время ответ- ных пользователей компьютеров то-
ственной работы (по таблицам вмес- го времени — учёных, проводивших
то одного набора значков-операторов сложные математические расчёты.
подставлять другой набор значков-ко- Язык Ассемблер из-за своей бли-
дов операций) необходимо передать зости к машинному коду сам по се-
компьютеру. бе труден для изучения. Кроме того,
В 1952 г. американка Грейс М. Хоп- он предназначался для определён-
пер создала первый в мире мнемони- ного процессора, а значит, человек,
ческий язык программирования работающий на нескольких компью-
Ассемблер (от англ. assemble — «со- терах, должен был знать несколько
бирать», «компоновать»). Он включал иногда существенно разных языков.
в себя мнемоническую систему ко- И наконец, язык Ассемблер представ-
манд (список команд), библиотеки лял собой несколько «очеловечен-
процедур и специальную программу ную» запись машинных кодов.
для перевода текста программы в ма- Для программирования на этом
шинный код. Такая процедура полу- языке необходимо представить все
чения машинного кода называется действия в виде простейших кирпи-
компиляцией (от англ. compile — «со- чиков, сложные формулы разбить на
ставлять», «собирать»), а программа, последовательности отдельных опе-
её осуществляющая, — компилято- раций. Программист же оперирует
ром, который также придуман Грейс в уме более общими категориями:
М. Хоппер. вычислить формулу, напечатать чис-
Это был первый шаг — создание ло на экране, повторить операцию
языка программирования как спе- десять раз и т. п.
циального языка, понятного и чело- Для решения этих проблем был
веку, и компьютеру. До тех пор су- предложен язык программирования,
ществовал только один язык — язык при создании которого применялся
компьютеров, а человек как более новый способ — разработка языка
разумное существо просто «разгова- по предварительной спецификации,
ривал» на нём. описанию. Сотрудники фирмы IBM
Второй шаг — создание библиоте- подготовили документы, подробно
ки процедур, т. е. повторное исполь- описывающие новый язык програм-
зование кода. До этого, если немного мирования и требования к нему.
преувеличить, каждому программи- В отличие от языка Ассемблер он Грейс Хоппер.
185
Алгоритмизация
RES = (A+B)/2
186
Языки программирования
187
Алгоритмизация
188
Языки программирования
REAL I1
.... (несколько страниц кода)
I1 = 3./2.
189
Алгоритмизация
190
Языки программирования
191
Алгоритмизация
192
Языки программирования
193
Алгоритмизация
194
Языки программирования
195
Алгоритмизация
МАССИВЫ И УКАЗАТЕЛИ
то p = a поместит в p адрес первого элемента масси- Используются два указателя на строки pstr и pcopy.
ва а. Чтобы получить доступ к нему, используют Дальше в соответствии с приоритетами операторов
выражение с указателем в виде *p. При увеличении в языке С загадочная операция присваивания обра-
указателя на 1 он станет указывать на следующий эле- батывается таким образом:
мент, т. е. запись *(p +1) эквивалентна a[1]. Указа- 1. Вычисление правого операнда присваивания.
тели можно и вычитать. Если есть два указателя: a) берётся значение указателя pstr, используется
один — на первый элемент массива, а другой — на ка- для применения оператора *;
кой-то произвольный элемент, то индекс этого эле- b) указатель pstr увеличивается на 1 (т. е. проис-
мента получают простым вычитанием указателя нача- ходит переход к следующему элементу массива).
ла массива из указателя элемента. То есть, если pa — 2. Вычисление левого операнда присваивания.
указатель на начало массива, а pe — указатель на про- a) берётся значение указателя pcopy, использует-
извольный элемент, его индекс i равен pe-pa. Это оче- ся для применения оператора *;
видно, если вспомнить, что указатель на элемент мас- b) указатель pcopy увеличивается на 1 (т. е. проис-
сива является суммой указателя на начало массива ходит переход к следующему элементу массива).
и индекса элемента, т. е. pe = pa+i. 3. Производится само присваивание, т. е. эле-
Использование указателей позволяет иногда эле- менту новой строки, полученному на шаге 2, присва-
гантно и необычно решить хорошо известную задачу. ивается значение элемента, полученное на шаге 1.
Например, копирование одной символьной строки, 4. Значением всего выражения в целом является
оканчивающейся символом с нулевым кодом, в дру- значение обрабатываемого элемента массива.
гую. Простейшее решение на языке Pascal может вы- В результате проведения операции были достиг-
глядеть так: нуты все цели. Во-первых, в элемент новой строки
попало значение элемента копируемой строки, во-
var str : array [0...255] of char; вторых, указатели для обеих строк перешли на сле-
var copy : array [0...255] of char; дующие элементы, и, наконец, в качестве значения
var i : integer; выражения мы получили значение элемента, которое
можно сравнить с нулём, чтобы определить допус-
for i := 0 to 255 тимый конец строки.
begin
copy[i]:= str[i];
if str[i] = ‘\0’ then goto finish;
end;
finish: ;
196
Языки программирования
197
Алгоритмизация
В последние дни Второй мировой войны немецкий ин- Из битов строятся скалярные типы — двоичные целые
женер и изобретатель Конрад Цузе оказался в малень- числа с фиксированной и плавающей запятой. Состав-
ком селении Хинтерштейн в Альпах. Впервые за несколь- ные объекты (сейчас их назвали бы структурами дан-
ко лет попав в спокойную обстановку (как он писал, «без ных) также образуются из битов. Например, можно оп-
бомбёжек, телефонных звонков и визитёров») и не имея ределить массив произвольной размерности: n × S0
возможности продолжать работу над своим компьюте- (одномерный булевский массив длиной n), m × n × S0
ром Z4, он решил завершить начатое ещё в 1943 г. (двумерный булевский массив m × n) и т. д.
изучение описаний различных вычислительных задач. Кроме массивов в языке Plankalkul есть записи, объ-
Немецкое слово rechnen означает «вычислять», поэто- единяющие данные разных типов (их элементами мо-
му Цузе использовал для этих описаний термин гут быть и другие записи). Хотя записи и появились
Rechnenplan — «план вычислений» (слово «программа» в специализированном языке Cobol в 1959 г., затем ис-
было придумано несколько позднее). Разработанную пользовались в языке PL/I и Pascal.
систему для записи «планов вычислений» Цузе назвал Зато ещё одна идея Цузе долго не имела аналогов
Plankalkul. Считается, что это первый в истории язык в других языках. В текст своих программ он включал
программирования, более чем на десять лет опередив- выражения, задающие условия, которые должны быть
ший FORTRAN и Algol-60. истинными при выполнении тех или иных операторов.
Однако сам Цузе не рассматривал Plankalkul как Например, пусть объект (массив из четырёх битов) ис-
язык программирования. Он хотел создать универсаль- пользуется для записи десятичных цифр. Но так как
ную систему обозначений, дающую возможность опи- цифр всего десять, а объект может принимать 16 раз-
сывать любое преобразование информации. Plankalkul ных значений, на них можно наложить ограничение:
можно было использовать для записи алгоритмов — быть не больше десяти. Только спустя 50 лет анало-
и, в самом деле, Цузе написал на нём множество алго- гичная идея была реализована программистом из Ка-
ритмов решения самых разных задач. С неизменным ус- лифорнии Бертраном Мейером, автором языка про-
пехом он применял Plankalkul и для описания работы граммирования EIFFEL.
аппаратуры компьютера. Тем более удивительно, на- Столь же уникально предложение языка Plankalkul,
сколько Цузе удалось предугадать многие свойства по- позволяющее выбирать из множества объектов лишь
явившихся гораздо позднее языков программирования, те, которые обладают заданным свойством. Конечно,
а некоторые его идеи реализованы совсем недавно! Что это просто сделать с помощью оператора цикла или
же представлял собой язык Plankalkul? процедуры, но специальные конструкции есть не во
Прежде всего, в языке принята очень интересная всех современных языках программирования.
система типов данных. «Вычисления начинаются с би- Plankalkul достаточно богат выразительными воз-
та», как считал Цузе, поэтому простейшим типом у не- можностями. Помимо операторов присваивания в нём
го является бит (состояние да/нет), обозначавшийся S0. имеются условные операторы, операторы повторе-
Биты принимают значения L и 0, так что последова- ния (аналог современных циклов), возможность об-
тельности битов записываются как L0L0, 0LL0 и т. д. ращения к подпрограммам и т. д. Несомненно, он об-
198
Языки программирования
199
Алгоритмизация
200
Языки программирования
201
Алгоритмизация
202
Языки программирования
203
Алгоритмизация
204
Языки программирования
205
Алгоритмизация
206
Языки программирования
207
Алгоритмизация
208
Языки программирования
209
Алгоритмизация
задач символьной обработки. Попыт- первой версии языка LISP (его ещё на-
ки же встроить в них нужные свойства зывают «чистый LISP») явилась потреб-
(например, корпорация IBM разрабо- ность в удобных средствах обработки
тала в 1958 г. расширение языка FOR- списков.
TRAN — язык FLPL) не были удачными. Дальнейшее изучение новой моде-
Поэтому для решения задач искусст- ли вычислений привело Мак-Карти
венного интеллекта стали разрабаты- к мысли построить универсальную
ваться специализированные языки. функцию языка LISP, способную вы-
числять любую функцию этого языка
(подобно универсальной машине Тью-
LISP ринга, имитирующей работу любой
другой машины Тьюринга). Такая
Джон Мак-Карти. Первым таким языком стал LISP (от функция (она получила название
англ. List processing — «обработка спис- EVAL) была разработана и использо-
ков»), появившийся в 1959 г. Его авто- вана в качестве интерпретатора язы-
ром был выдающийся американский ка LISP 1.5, описание которого было
учёный Джон Мак-Карти, внёсший опубликовано в 1965 г. Именно с это-
огромный вклад в развитие информа- го момента начинается широкое рас-
тики. Кстати, термин «искусственный пространение языка. Он молниенос-
интеллект» впервые использовал имен- но завоёвывает популярность —
но он. Первоначально Мак-Карти не на новом языке пишут программы
имел намерения разработать именно почти все исследователи, работающие
язык программирования. Его целью в области искусственного интеллек-
было создание новой модели вычис- та. Язык совершенствуется, появляет-
лений, более удобной, чем машины ся множество его версий и диалектов
Тьюринга. (среди них можно особо отметить ин-
В процессе работы выяснилось, что тересный язык Scheme, 1975 г.), но од-
основой такой модели может стать ре- новременно возникает проблема
курсивная обработка символьных спи- переносимости программ. Для её ре-
сков. Используя её, Мак-Карти сумел шения в 1984 г. был выработан еди-
найти весьма элегантный алгоритм ре- ный стандарт языка Common LISP.
шения задачи символьного дифферен- LISP относится к классу функцио-
цирования алгебраических выраже- нальных языков программирования.
ний. Однако ему не хотелось утяжелять В отличие от обычных (императив-
алгоритм сугубо техническими дета- ных) процедурных языков они не
лями, такими, как явное введение опе- используют ни переменные, ни опе-
раторов динамического размещения раторы присваивания. В них отсутст-
и удаления списков из памяти, но при вуют операторы цикла, а повторение
использовании языка FLPL это было действий реализуется с помощью ре-
неизбежно. Более того, FLPL не поддер- курсии. Программа в таких языках
живал рекурсию. Тогда Мак-Карти по- представляет описание функций, а вы-
нял, что ему необходим новый полнение программы — процесс при-
язык. Так что предпосыл- менения функций к аргументам. Прав-
кой появления да, современный LISP нельзя назвать
функциональным языком в полном
смысле этого слова (им был только
чистый LISP). Он обладает и некото-
рыми свойствами, присущими проце-
дурным языкам.
В языке LISP используются лишь
два типа данных — атомы и списки.
Атомы очень похожи на обычные
идентификаторы в традиционных
языках; кроме того, атомами считают-
ся и числовые константы. Списками
называют заключённые в скобки по-
следовательности элементов — ими
210
Языки программирования
могут быть как атомы, так и другие работали в начале 70-х гг. XX в. Ален
списки. Например, список L = (A (B) C Колмерье и Филипп Руссель из Мар-
(D E F) (G H)) состоит из пяти элемен- сельского университета и Роберт Ко- LISP более 20 лет
тов. Первый и третий из них — это вальски из Эдинбургского универси- безраздельно гос-
атомы A и C, а остальные являются тета. Они развивали свои идеи почти подствовал в облас-
списками. Обратите внимание, что десять лет, но те не получали особой ти искусственного
второй элемент, (B), — это не атом, известности. Всё изменилось в 1981 г., интеллекта. Но и се-
а список, состоящий из одного эле- когда появился так называемый «япон- годня, несмотря на
мента, атома B. ский вызов» — масштабный проект появление многочис-
LISP содержит набор элементарных правительства этой страны, связан- ленных конкурентов,
(или системных) функций, основны- ный с созданием ЭВМ пятого поколе- он по-прежнему яв-
ми среди них являются (CAR L), ния. Резкое повышение интеллекту- ляется самым распро-
(CDR L) и (CONS M L). Функция CAR ального уровня будущих компьютеров странённым языком
выбирает из списка L его первый эле- и возможность общения с ними на для решения задач
мент («голову»), функция CDR удаля- языке, максимально приближённом в этой области.
ет из списка L его «голову» (оставляя к естественному, были важнейшими
«хвост»). В нашем примере (CAR L) = A, целями проекта. Язык Prolog стал осно-
(CDR L) = ((B) C (D E F) (G H)). Эти две вой разработок, что привлекло к нему
функции «разбирают» список на час- всеобщее внимание и вызвало бурный
ти, а вот функция CONS создаёт но- рост его популярности во всём мире.
вый список, помещая элемент M в «го- Что же такое логическое програм-
лову» списка L: (CONS M (B C D)) = мирование? В императивных и функ-
= (M B C D). циональных языках программист зна-
Указанными тремя функциями на- ет, что должна выполнить программа.
бор элементарных функций, разуме- Его задача — дать указание компьюте-
ется, не исчерпывается. Кроме того, ру, как именно надо выполнить вычис-
язык предоставляет удобные средст- ления. Логическое программирование
ва, с помощью которых из элементар- коренным образом отличается и от им-
ных функций можно строить более перативного, и от функционального.
сложные. Программа на языке Prolog не содер-
В языке LISP принята единая фор- жит указаний, как вычислять резуль-
ма записи данных и программ. Напри- тат. Она лишь описывает требуемый
мер, выражение (F X Y) может воспри- вид результата. Получение его — это
ниматься либо как список из трёх дело заложенных в язык механизмов
элементов, либо как обращение к логического вывода (основанных на
функции F с аргументами X и Y. Бла- так называемом методе резолюций).
годаря этому программа пользовате- Программа на языке Prolog состоит из
ля способна в процессе работы не операторов. Операторы делятся на
только создавать новые функции факты и правила. Факт — это некое
и программы, но и немедленно выпол- безусловное утверждение, которое
нять их. Эта возможность языка явля- предполагается истинным. Приведём
ется его уникальной особенностью примеры фактов, записанных в виде
(ведь в программе на императивном операторов языка:
языке все операторы должны быть вы-
писаны до начала её работы и в про- слон (джумбо).
цессе работы не могут изменяться) лягушка (флик).
и очень мощным оружием в руках про- сильнее (джумбо, флик).
граммистов.
Это означает, что объект джумбо яв-
ляется слоном, объект флик — лягуш-
PROLOG кой, а также что джумбо сильнее флика.
Более сложен другой тип операто-
Альтернативным подходом к реше- ров. На языке Prolog правила записы-
нию задач искусственного интеллекта ваются в таком виде: Y: — X, Z... Эта за-
стала концепция логического програм- пись определяет некоторое условие
мирования, реализованная в языке следования и читается так: «справед-
Prolog (Programming in logic). Его раз- ливо Y, если справедливы X и Z, и...».
211
Алгоритмизация
212
Языки программирования
213
ПРОГРАММИСТЫ
И ПРОГРАММИРОВАНИЕ
АВГУСТА АДА БАЙРОН, ЛЕДИ ЛАВЛЕЙС
214
Программисты и программирование
215
Алгоритмизация
216
Программисты и программирование
ПРОГРАММИСТЫ
217
Алгоритмизация
218
Программисты и программирование
РЕКУРСИЯ
219
Алгоритмизация
ЭТО УГОЛ
ПОВТОРИ 4 [ВПЕРЁД 6 ВПРАВО 90]
КОНЕЦ
ЭТО КВАДРАТ :К
ПОВТОРИ 4 [ВПЕРЁД :К ВПРАВО 90]
КОНЕЦ
то с помощью другой процедуры —
КВАДРАТЫ, которая вызывает при своём (В языке ЛОГО принято имя перемен-
Параметром процеду- выполнении первую процедуру, мож- ной величины предварять двоеточи-
ры называют пере- но изобразить, например, такую кар- ем без пробела.)
менную величину, ис- тинку: Теперь вызов программы КВАДРАТ 5
пользуемую в теле будет работать точно так же, как про-
процедуры, если её цедура КВАДРАТИК, а вызов КВАДРАТ 6 —
значение задаётся при как процедура УГОЛ.
вызове процедуры. В примере, где программа КВАДРА-
Формальный пара- ТИК_ПОШИРЕ обращается к программе
метр (или параметр УГОЛ, нет ничего необычного: одна
описания) — это имя процедура вызывает другую, отлича-
переменной, а факти- ющуюся от первой. А что произойдёт,
ческий параметр (или ЭТО КВАДРАТЫ если заменить вызывающую и вызы-
параметр вызова) — КВАДРАТИК ваемую программы на процедуру с па-
это значение. ПОВТОРИ 3 раметрами КВАДРАТ :К
[
ПЕРОПОДНЯТЬ ЭТО КВАДРАТ :К
ВПЕРЁД 10 ПОВТОРИ 4 [ВПЕРЁД :К ВПРАВО 90]
ПЕРООПУСТИТЬ КВАДРАТ :К + 1
КВАДРАТИК КОНЕЦ
ВПРАВО 90
] где значение параметра К = 5? Не па-
КОНЕЦ радокс ли: программа КВАДРАТ будет
вызывать программу КВАДРАТ?
А вот пример вызывающей про- Парадокса нет. Ситуация, в кото-
граммы КВАДРАТИК_ПОШИРЕ; при этом рой процедура А вызывает процедуру
роль вызываемой программы играет А (процедуру с тем же именем, но, воз-
процедура УГОЛ: можно, с другим значением фактиче-
ского параметра), часто встречается
ЭТО КВАДРАТИК_ПОШИРЕ в программировании и имеет специ-
ПОВТОРИ 4 [ВПЕРЁД 5 ВПРАВО 90] альное название — «рекурсия». Следо-
УГОЛ вательно, выше был приведён пример
КОНЕЦ рекурсивной процедуры КВАДРАТ.
220
Программисты и программирование
221
Алгоритмизация
222
Программисты и программирование
ЭТО ПРОГУЛКА
ПОВТОРИ 9 ВПРАВО
ПОВТОРИ 9 ВНИЗ
ПОВТОРИ 9 ВЛЕВО
ПОВТОРИ 9 ВВЕРХ Вот вызов программы, в которой Кукарача решает
ПРОГУЛКА «выясняются» эти отношения. Здесь задачу
с нерекурсивной
КОНЕЦ и процедура ЛЕСЕНКА, и процедура СТУ- процедурой.
ПЕНЬ не обращаются к одноимённой
заставит исполнителя долго-долго процедуре.
обходить поле размером 10 × 10. Прав-
да, остановить выполнение такой ЛЕСЕНКА
программы иначе как прерыванием ЭТО ЛЕСЕНКА
трудно. Допускаемый языком цикл СТУПЕНЬ
с предусловием (цикл ПОКА) использу- КОНЕЦ
ет условие так же, как и в условных ко- ЭТО СТУПЕНЬ
мандах. Например, по командам ВНИЗ
ВПРАВО
ПОКА ПУСТО ВНИЗ ЕСЛИ НЕ * ЛЕСЕНКА
ВПРАВО КОНЕЦ
ЭТО СПУСК
ВНИЗ
ЕСЛИ ПУСТО СПУСК
КОНЕЦ
223
Алгоритмизация
224
Программисты и программирование
225
Алгоритмизация
226
Программисты и программирование
227
Алгоритмизация
ЗАДАЧА О ТРЕУГОЛЬНИКЕ
Даны три натуральных числа. Определить тип треуголь- (В списке нет варианта «равнобедренный, прямоуголь-
ника по заданным сторонам (равносторонний, равнобед- ный», так как он невыполним при сторонах, заданных на-
ренный, разносторонний) и углам (остроугольный, пря- туральными числами.)
моугольный, тупоугольный). Очевидно, что при тестировании каждый из перечис-
Ограничения: 0 < a, b, c < 1000. ленных ответов нужно получить хотя бы по одному разу.
Ввод: 3 4 5 Какие типичные ошибки могут быть допущены при ре-
Вывод: треугольник разносторонний, прямоугольный. шении этой задачи? Обратим особое внимание на симмет-
Чтобы подготовить хороший набор тестов, надо хотя рию входных данных. Все три заданных числа равноправ-
бы в общих чертах представлять себе возможные реше- ны, так как в условиях ничего не сказано о каком-то
ния и ошибки. Исходные данные заведомо корректные, специальном порядке. В такой ситуации в решении часто
т. е. удовлетворяют заданным в условиях ограничениям. возникают ошибки. Неравенство треугольника, например,
Подготовка тестов начинается с анализа условий. Лег- может проверяться не для всех трёх сторон. Практический
ко заметить, что в условиях совсем не говорится об одном вывод: нужны тесты, в которых одни и те же числа будут
крайне важном обстоятельстве: треугольник может вооб- располагаться в различном порядке.
ще не существовать. Это бывает при нарушении неравен- Необходимо отдельно рассмотреть предельный слу-
ства треугольника: каждая сторона должна быть меньше чай, когда сумма двух сторон равна третьей. Кроме того,
суммы двух других. Таким образом, получается следу- нужно проверить предельные значения, лежащие на гра-
ющий список возможных реакций программы на коррект- нице допустимого диапазона.
ные входные данные: Часто встречается ошибка переполнения. Она возни-
• не существует; кает, когда в программе использованы 16-битные числа,
• равносторонний, остроугольный; поскольку их не хватает для возведения в квадрат (для
• равнобедренный, остроугольный; определения углов треугольника стороны возводят в ква-
• равнобедренный, тупоугольный; драт). Тесты в последней секции специально подобраны
• разносторонний, остроугольный; так, чтобы данная ошибка сразу обнаруживалась.
• разносторонний, прямоугольный; В таблице приведён примерный набор тестов для за-
• разносторонний, тупоугольный. дачи о треугольнике.
228
Программисты и программирование
229
Алгоритмизация
230
Программисты и программирование
Общеизвестно, что у любого чело- и надо сделать так, чтобы при этом
века почерк уникален, как отпечатки не возникало лишних трудностей.
пальцев. Но почерк, в отличие от от- Вот несколько рекомендаций, ко-
печатков, можно оценить: красивый — торые позволяют понять, что такое
некрасивый, разборчивый — нераз- хороший стиль.
борчивый. Руку специально готовят Кто ясно мыслит, тот ясно из-
к письму: особые упражнения по об- лагает!
разцам помогают развить внимание, Прежде чем писать программу, на-
мышление и воображение. до чётко уяснить, какая поставлена за-
Это применимо и к стилю про- дача и как её решить. Если в мыслях
граммирования, который бывает как нет ясности — не помогут никакие
хорошим, так и плохим. Ему нужно приёмы и ухищрения.
учить, и лучше, если начинающий Не забывать о комментариях!
программист придерживается неко- Все языки программирования поз-
торого стандарта, как первоклассни- воляют включать в программу ком-
ки — прописей. ментарии — пояснительный текст, ко-
Стиль программирования сравним торый нужен только для человека.
и со стилем речи, где имеются свои
нормы (есть даже понятие стилисти-
ческой ошибки). У каждого человека
есть свои любимые слова, своя манера
построения фраз, свой способ изложе-
ния. Эксперты-литературоведы спо-
собны по фрагменту текста определить
его автора. Но ведь и речевой стиль то-
же можно оценивать! Ведь говорят о
хорошем и плохом стиле речи.
И ещё одно необычное сравне-
ние — кулинарное. Стиль программи-
рования подобен приправам. Пище-
вая ценность блюда определяется
основными использованными про-
дуктами. Полученные калории и чув-
ство сытости от приправ не зависят,
а вот вкусовые ощущения складыва-
ются во многом благодаря именно им.
Если повар забыл положить их или,
что ещё хуже, использовал неверно,
насытиться полученным блюдом бу-
дет всё-таки можно, а вот получить
удовольствие — вряд ли.
Мыслитель.
Необходимо всё время помнить, Скульптура
что программу кто-то будет читать, Огюста Родена.
231
Алгоритмизация
232
Программисты и программирование
233
Алгоритмизация
234
Программисты и программирование
235
ХРАНЕНИЕ ИНФОРМАЦИИ
КОМПЬЮТЕР И КНИГОПЕЧАТАНИЕ
238
Хранение информации
239
Хранение и обработка информации
БУМАГА
рус, в изобилии произраставший в до-
лине Нила и даже возделывавшийся
как культурное растение. Из него из-
готовляли верёвки, циновки, обувь,
лодки и паруса к ним. Из его стеблей
египтяне вырезали длинные полосы,
смазывали их клеем, клали под пресс
и высушивали на солнце. Получались
удобные для письма тонкие, гибкие и
прочные листы, которые склеивали и
сворачивали в длинные свитки. Так что
не случайно слово «бумага» в европей-
ских языках напоминает нам о папи-
русе: papier — во французском и не-
мецком, paper — в английском.
Из Египта приблизительно в VII в.
до н. э. папирусные свитки проникли
в Грецию, а уже оттуда — в Рим. Папи-
рус был достаточно редок, поэтому
в других странах находили иной ма-
териал для письма. В Китае это был
Старинный способ Свои первые тексты человек выводил шёлк, на Руси в быту употребляли бе-
изготовления бумаги. прутом на песке и углем на стене пе- рёсту — на ней писали письма, дело-
щеры, выцарапывал на табличках из вые документы: расписки, завещания
сырой глины и высекал на каменных и т. д. (знаменитые новгородские бе-
плитах... Но все они были либо недол- рестяные грамоты донесли до наших
говечны, либо хрупки, либо слишком дней многие подробности повседнев-
неудобны в пользовании (говорят, что ной жизни предков). В Пергамском
в Древнем Китае для перевозки неко- царстве стали использовать особым
Знаменитый норвеж- торых сочинений требовалось неско- образом выделанные телячьи и бара-
ский учёный и путе-
шественник лько телег, ведь написаны они были ньи шкуры — пергамен. К сожалению,
Тур Хейердал (1914— на бамбуковых дощечках). Подходя- он был слишком дорог и, кроме того,
2002) совершил щий для письма материал первыми об- весьма подвержен действию влаги.
плавание через
Атлантику на папирус- наружили жители Древнего Египта. А в повседневной жизни с античных
ной лодке «Ра». Это был похожий на нашу осоку папи- времён применяли маленькие вощё-
ные дощечки, на которых острым
стержнем писали какие-либо замет-
ки или расчёты (другой конец стерж-
ня делался в виде плоской лопаточки,
чтобы разравнивать воск).
Во II в. н. э. в Китае изобрели спо-
соб производства бумаги из расти-
тельного сырья: бамбука, тростника,
древесной коры. Позднее секрет её из-
готовления узнали арабы (применяв-
шие пеньковое и льняное тряпьё), а
приблизительно в X столетии — и ев-
ропейцы. Качество бумаги было столь
высоким, что рукописи того времени
дошли до наших дней в прекрасном
состоянии: она осталась такой же бе-
лоснежной, сохранила свою гибкость.
Она оказалась гораздо дешевле пер-
гамена и благодаря этому быстро вы-
240
Хранение информации
241
Хранение и обработка информации
лПДЙТПЧЛЙ ФЕЛУФБ
242
Хранение информации
243
Хранение и обработка информации
244
Хранение информации
ТЕКСТОВЫЕ РЕДАКТОРЫ
245
Хранение и обработка информации
РЕДАКТОРЫ — СИСТЕМЫ
ДЛЯ ВИЗУАЛИЗАЦИИ
И ИЗМЕНЕНИЯ ТЕКСТА
Все современные редакторы при вво-
де и изменении текста поддерживают
Фото с экрана Запись последовательности команд его изображение на экране монито-
программы имеет устрашающий вид бессмыслен- ра. Основная работа редактора — по-
редактора текста
«МикроМир» ного набора символов. Командные ре- казать введённый текст; при нажатии
для DOS. дакторы, такие, как TECO, называются пользователем какой-либо клавиши
также строчными (англ. line editors). определить, как это должно изменить
Их главное неудобство заключается текст; откорректировать изображе-
в том, что при редактировании необ- ние текста на экране.
ходимо знать и указать в команде но- Кроме того, современные редак-
мер строки и номер символа, которые торы выполняют много других
надо изменить. функций: проверяют набираемый
Следующее поколение редакто- текст, форматируют его, выводят на
ров — экранные редакторы (screen edi- печать, отправляют по электронной
tors), или WYSIWYG-редакторы (от почте и др.
англ. what you see is what you get — «что
видите, то и имеете»). При их исполь-
зовании текст выводится на экран в ЗАЧЕМ НУЖНЫ МЕНЮ
таком виде, какой он будет иметь на
печати. Место изменения текста ука- Каждую команду редактора можно вы-
зывается специальным значком — кур- звать нажатием какой-либо определён-
сором, который можно «гонять» по ной клавиши. Чем больше в редакторе
разнообразных функций (команд), тем
больше различных клавиш требуется
для их вызова.
На запоминание комбинации кла-
виш придётся потратить немало сил
и времени, поэтому для удобства ис-
пользуют меню. Меню в последнее
время становятся всё более стандарт-
ными. В верхней строке экрана ре-
дактора располагаются несколько
ключевых слов: «Файл» (папка), «Прав-
ка», «Вид», «Формат» и некоторые дру-
гие. Каждому слову соответствует своё
меню, которое скрыто от пользова-
теля. Оно высвечивается только при
вызове: если стрелку-указатель «мы-
ши» подвести к подходящему слову и
нажать кнопку «мыши». В меню пере-
числены команды, связанные с клю-
чевым словом.
246
Хранение информации
247
Хранение и обработка информации
Фото с экрана
офисной системы
X-Windows Linux.
МАКЕТИРОВАНИЕ
248
Хранение информации
249
Хранение и обработка информации
Книги редко бывают совсем без книги. Здесь вступает в дело версталь-
иллюстраций. Порой просто невоз- щик. Он и собирает из отдельных ку-
можно что-то объяснить, не проил- сочков целое — книгу в том виде, в ко-
люстрировав написанное. Способов тором видит её читатель. Следуя
создания книжных иллюстраций мно- задумке дизайнера (а иногда сочетая
жество. две специальности — дизайнера и
Можно рисовать красками, каран- верстальщика), он «заливает» текст,
дашами или чем-то иным на бумаге располагает картинки, подписи, ком-
либо любой другой поверхности или ментарии на страницах будущей кни-
делать рисунки в компьютерных про- ги так, чтобы, с одной стороны, было
граммах, с помощью которых можно красиво, а с другой — понятно. Это не
создавать специальный файл с изоб- всегда просто, процесс творческий...
ражением. Компьютер верстальщика — его
Ещё один способ — использовать основной инструмент. И достаточно
фотографии, сканируя их в компью- часто это не привычный IBM РС, а
тер с отпечатка, с другой книги или Macintosh. В США такие компьютеры
прямо с негатива, применяя слайд-ска- широко распространены, особенно
неры. Или без сканера — фотографи- в образовании и полиграфии. В Рос-
руя на цифровую камеру, создающую, сии считается, что этот компьютер
в отличие от обычного фотоаппара- создан специально для издательской
та, изображение не на плёнке, а на ци- деятельности и художников. Вероят-
фровом носителе в виде компьютер- но, здесь сказывается надёжность ма-
ного файла. шин и удобство интерфейса, ведь
Можно делать коллажи, т. е. совме- творческому человеку трудно пере-
щать разные изображения в одном, делывать несколько раз одно и то же
например взять изображение с фото- из-за «зависания» программы.
графии, «вырезав» на компьютере Так на замечательной машине вер-
только одного человека, и поместить стальщик создаёт виртуальную книгу,
его на новый фон — побережье океа- существующую сначала только как
на с живописными пальмами или компьютерный файл. Потом этот
у входа в отель. файл попадает в типографию (в со-
Когда собран основной материал — временных типографиях ручного на-
тексты и иллюстрации, разработан бора уже не бывает), и там другие «вол-
макет, пора браться за изготовление шебники» печатают книгу.
ЭЛЕКТРОННЫЕ ТАБЛИЦЫ
250
Хранение информации
251
Хранение и обработка информации
252
Хранение информации
N a b c x1 x2 Ч. к.
1 1 2 1 –1.00 –1,00 1
2 1 –2 1 1.00 1,00 1
3 1 –1 3 ###.## ###.## 0
4 2 4 1 –1,71 –0,29 2
5 2 8 1 –3,87 –0,13 2
6 2 12 1 –5,92 –0,08 2
7 2 16 1 –7,94 –0,06 2
8 2 20 1 –9,95 –0,05 2
d = b*b - 4*a*c
x1 = (–b – SQRT(D)) / (2*a)
x2 = (–b + SQRT(D)) / (2*a)
Ч. к. =
при D > 0 : 2
при D = 0 : 1
иначе: 0
ГРАФИЧЕСКИЕ
ВОЗМОЖНОСТИ
253
Хранение и обработка информации
254
Хранение информации
255
Хранение и обработка информации
256
Хранение информации
257
Хранение и обработка информации
Фамилия
Тогда СУБД по первому индексу Здесь была
...... ссылка на
найдёт следующий список ссылок:
Богданов 201 запись 021
044 135 172, по второму индексу
Богданова 015
получит такой список ссылок:
.......
044 056 084 135 142 179; затем, вы-
.......
полнив операцию «пересечение» меж-
Староверов 093 127
ду списками, получит в итоге ответ:
Стойнова 413
044 135.
Стаханов 516
Добавление/удаление записи из
Страхов 135 172
файла базы данных сопровождается
Страхова 044
изменением индексов. Если в файл
данных под номером, например, ......
516 вносят запись «Стаханов, родив-
шийся 4 мая», то по всем полям, име- День И здесь была
ющим индексы, создаются пары рождения ссылка на
ключ — ссылка, сохраняя порядок: .... запись 021
0228 244
Фамилия 0321 056 084 142
...... 0329 135
Богданов 201 0331 044 179
Богданова 015 0402 127 278 299 305 432
....... 0419 093
....... 0423 112
Староверов 021 093 127 0405 516
Стойнова 413 ....
Стаханов 516
Страхов 135 172
Страхова 044 И лишь после этого удаляется запись
...... из файла данных.
Процесс изменения файла ин-
дексов обычно продолжительнее,
День
чем добавление записи в файл дан-
рождения
ных.
....
Давайте продемонстрируем это на
0228 244
таком примере — ошибочно введён-
0321 056 084 142
ной фамилии Староверов вместо
0329 135
правильной — Старовер. Если СУБД
0331 044 179
каждый индекс записывает в отдель-
0402 127 278 299 305 432
ный файл, то изменение одного поля
0419 021 093
в файле данных (замена фамилии
0423 112
Староверов на Старовер) приведёт к
0405 516
изменениям в файле индексов «Фа-
....
милия»:
258
Хранение информации
259
Хранение и обработка информации
..................
Антипин Володин Жмуров
..................
..................
260
Хранение информации
ХЕШИРОВАНИЕ
Так же как и в хеш-реализации структуры данных множе- алг цел хеш_функция (целтаб
ства, при поиске в файле данных удобно использовать хе- фамилия[1:20], цел длина, N)
ширование. Каждой записи ставится в соответствие не- дано
которое число, которое эффективно вычисляется с надо
помощью какой-нибудь простой процедуры. Для постро- нач цел K
ения индексов фамилий достаточно пронумеровать все | знач:=0
буквы алфавита, чтобы любой букве соответствовало чис- | нц для Кот 1 до длина
ло от 1 до 33: | | знач := mod (знач + фамилия [K],N)
А—1; Б—2; В—3 ... Я—33. | кц
И дальше фамилия рассматривается как последователь- кон
ность кодов букв (от 1 до 33). Например, фамилия Бабен-
ко в таблице запишется так: (Функция mod(x,y) возвращает остаток от деления нацело
x на y, её ещё называют модулем, а записывают выраже-
2 1 2 6 15 12 16 ние так: y mod y.). Чтобы различные ключи давали сов-
падения не слишком часто (ведь это псевдоуникальные,
А «длина» будет равна 7, по числу букв. а не уникальные числа), необходимо оставлять около чет-
верти хеш-таблицы пустой. Если всё-таки возникли сов-
алг цел индекс (целтаб падения — коллизии, то можно подобрать временно сво-
фамилия[1:20], цел длина) бодное место в той же таблице, последовательно перебирая
дано места. Для большей эффективности удобно провести вто-
надо ричное хеширование, выбрав вторичную хеш-функцию
нач цел K аналогично первой:
| знач:=0
| нц для Кот 1 до длина алг цел вторичная хеш_функция
| | знач := знач * 33 + фамилия [K] (целтаб фамилия[1:20], цел длина,
| кц N, M, шаг)
кон дано
надо
Полученное значение — уникальное число, которое и нач цел K
можно считать ссылкой на запись. Однако такое число | знач:=0
будет огромным. Для приведённой в примере фамилии | нц для Кот 1 до длина
Бабенко индекс составит порядка 1010! Данный подход | | знач := mod (знач + фамилия [K],M)
требует невероятно больших объёмов памяти, что неэф- | кц
фективно, так как не все комбинации букв составляют фа- | знач := mod (знач * шаг + хеш_функция
милии. Обычно для решения этой проблемы использует- | (фамилия, длина, N), N)
ся алгоритм вычисления псевдоуникального числа, который кон
и называют хеш-функцией. Удобно считать сумму кодов
букв в фамилии, вычисленной по модулю размера табли- Число M выбирают взаимно простым с N, обычно M=
цы N, которая отведена под фамилии (хеш-таблицы): = N–2. Если при хешировании возникла коллизия, то
вычисляют значение вторичной хеш-функции с «шагом»,
равным 1. Если снова появляется коллизия, то «шаг» уста-
навливают 2 и т. д. Идея состоит в том, чтобы избегать
коллизий «по модулю», беря в качестве последователь-
ных индексов хеш+вторичная хеш, хеш+2 вторичная
хеш, хеш+3 вторичная хеш ...
При хешировании близко расположенные по алфави-
ту фамилии могут быть произвольно разбросаны по таб-
лице, вообще говоря, они не обязаны быть упорядочены
по алфавиту. В результате поиска записи «Староверов»
невозможно получить ответ на запросы о близких фами-
лиях типа Старовер или Стройнова.
261
Хранение и обработка информации
262
Хранение информации
В одном гигабайте 230 байт, или, как пишут в современных • протокол операций с банковским счётом крупной
книгах (считая, что 1кбайт = 1000 байт, а не 1024), около фирмы более чем за 5 тыс. лет.
миллиарда байтов памяти. В такой памяти можно хранить: Стоимость устройства, способного хранить около
• 500 тыс. страниц текста, т. е. около 1 тысячи рома- 1Гбайт информации (для сравнения: на трёх CD ROM со-
нов, — целая библиотека; держится 2Гбайт информации), в настоящее время
• около 1 тысячи цветных слайдов высочайшего каче- не превышает 1 доллара США. А стоимость аренды про-
ства; странства для хранения 1Гбайт в компьютерных сетях со-
• до 5 тыс. цветных цифровых фотографий растра ставляет всего несколько долларов США в год. Можно
1280 × 1024 в формате JPEG; ожидать, что через 10—15 лет всё сказанное останется
• аудиозапись более чем 100-часовой речи (при этом верным , если место гигабайта займёт терабайт (1Тбайт =
запись равноценна по качеству телефонному разговору); = 240 байт).
• более чем 10 ч музыкальной записи, использующей
алгоритмы сжатия MP 3. Она неотличима на слух от за-
писи на компакт-диске (эта технология используется в
FM-радиовещании);
• музыкальную запись в том же формате MP 3, но про-
должительностью более 20 ч. Правда, за счёт увеличения
объёма качество ухудшается и соответствует качеству за-
писи хорошего кассетного магнитофона;
• без малого 2-часовой музыкальный фрагмент CD-ка-
чества;
• почти 15-секундный цветной фильм высочайшего
качества записи без использования алгоритмов сжатия;
• более чем 2-часовую видеозапись с использовани-
ем алгоритмов сжатия изображения и звука MPEG (ка-
чество записи лишь немного уступает телевизионному);
263
Хранение и обработка информации
264
Хранение информации
265
ОПЕРАЦИОННАЯ СИСТЕМА
КОМПЬЮТЕРА
ВОЗНИКНОВЕНИЕ ОПЕРАЦИОННЫХ СИСТЕМ
266
Операционная система компьютера
267
Хранение и обработка информации
Программа
Программа управления вводом-выводом управления
памятью
268
Операционная система компьютера
ПЛАНИРОВЩИК ПРОЦЕССОВ
269
Хранение и обработка информации
270
Операционная система компьютера
алг Вычисление π
нач
| нц пока не определили число π
| | вычислять
| кц Для достижения такой справедли-
кон вости в операционную систему вво-
дится понятие приоритета процес-
Таким образом, один процесс, са. Этот приоритет выражается целым
выполняющий вычисления, всё вре- числом, показывающим, как долго
мя занимает процессор или, учиты- процесс не выполнялся на процес-
вая наличие другого процесса, хочет соре.
его занять (постоянно борется за ре- Планировщик после истечения
сурс процессора). Другой процесс — очередного кванта уменьшает при-
текстовый редактор — в основном оритет выполнявшегося процесса, по-
выполняет операцию ввода и конку- сле чего запускает алгоритм перепла-
рирует за процессор от случая к слу- нирования, который выбирает среди
чаю. Действительно, даже профес- конкурирующих процессов процесс
сиональная машинистка набирает с наибольшим приоритетом.
текст со скоростью 600 символов В примере, после того как пройдёт
в минуту, или 1 символ в 100 мс. Ес- десять квантов, в течение которых
ли квант выполнения составляет процесс-редактор ждёт ввода симво-
10 мс, то текстовый редактор, ожидая ла и выполняется вычислительный
ввода очередного символа, факти- процесс, приоритет вычислительно-
чески не конкурирует за процессор го процесса окажется равен 0, а прио-
в течение 10 квантов. Когда процес- ритет процесса-редактора — 10. По-
сы равноправны, планировщик от- этому на протяжении следующих
даст один квант выполнения редак- десяти квантов приоритет процесса-
тору, после чего отдаст следующий редактора будет выше и планировщик
квант процессу, вычисляющему π . отдаст предпочтение ему. Затем при-
Установлено, что человек считает, оритеты процессов станут одинако-
будто символ появляется на экране выми, и планировщик выберет оче-
мгновенно, если задержка между вво- редной процесс случайным образом.
дом и изображением символа не пре- Описанный алгоритм называют ал-
вышает 20 мс (или два кванта выпол- горитмом планирования по круговой
нения). Если редактор не успеет
обработать символ за один квант, ему
придётся ждать времени на процес-
соре ещё один квант. В результате че-
ловек ощутит задержки при вводе
символов.
Чтобы это исправить, следует от-
дать процессу-редактору более одно-
го кванта (справедливо отдать де-
сять — ровно столько времени он
не выполнялся на процессоре). По-
лучается, что для обеспечения равно-
правности надо сделать процессы не-
равноправными!
271
Хранение и обработка информации
алг Проигрывание
нач
| нц пока не конец файла
| | прочитать очередную порцию данных
| | записать прочитанную порцию
| | в регистры звуковой карты
| кц
кон
272
Операционная система компьютера
273
Хранение и обработка информации
Кабина Boeing 707. и алгоритм перепланирования запу- дуется впустую, на постоянное выпол-
скается по истечении кванта. Если нение алгоритма перепланирования.
событие наступит в неудачный мо- Операционная система — вспомога-
мент (например, в начале очередно- тельная программа, и там, где этого
го кванта выполнения), скорее всего, не требуется, занимать ресурс процес-
не будет возможности его обработать, сора выполнением алгоритмов самой
но и процессорное время не израсхо- операционной системы не стоит.
274
Операционная система компьютера
275
Хранение и обработка информации
276
Операционная система компьютера
277
Хранение и обработка информации
Пусть для простоты примера в компьютере имеется чер это правило должен где-то хранить. Если на каждый
16 Мбайт памяти. Тогда последний байт памяти имеет фи- виртуальный адрес хранить в таблице его физический,
зический адрес 16777215 (16х1024х1024 — 1) в десятич- то потребуется 48 Мбайт памяти = 16 Мбайт памяти ×
ной системе исчисления или 0хFFFFFF в шестнадцатерич- × 3 байт (размер адреса); это в три (!) раза превышает
ной системе исчисления (буква «х» обозначает, что число объём памяти.
записано в шестнадцатеричной системе), в которой при- Поэтому используют разбиение памяти на страницы раз-
нято записывать адреса. В этом случае физическое ад- мером 4 кбайт, пронумеровав их, начиная с 0. Зная адрес,
ресное пространство выглядит так: 0x000000 — 0xFFFFFF легко вычислить номер страницы: нужно отбросить послед-
(т. е. набор адресов от 0 до 0xFFFFFF). ние три цифры в шестнадцатеричной системе исчисления.
Виртуальное адресное пространство пронумеровано Например, адрес 0x35367 находится в странице 0x3516 или
также от 0x000000 по 0xFFFFFF (объём — 16 Мбайт). Тог- 5310 в десятичной системе исчисления.
да виртуальным адресам ставятся в соответствие физиче- Теперь правила соответствия памяти в терминах стра-
ские по следующему правилу: ниц выглядят следующим образом:
278
Операционная система компьютера
279
Хранение и обработка информации
280
Операционная система компьютера
водит к тому, что область подкачки тельно освободить место, что означа-
используется неэффективно: свобод- ет просто аварийно уничтожить ка-
ное место в области подкачки есть, кой-либо процесс.
но использовать его нельзя, оно за- Можно разработать и другие алго-
резервировано. ритмы, которые пытаются предска-
Другой способ состоит в том, что зать будущее на основе прошлого
операционная система берёт на себя опыта. Например, вместо того чтобы
«повышенные обязательства» и выде- забирать память у самой «старой»
ляет виртуальную память, пока есть страницы, забирать память у наименее
свободное место в физической памя- используемой страницы. (Это не то
ти и в области подкачки (по-англий- же самое!)
ски эта стратегия называется over- В области алгоритмов распределе-
commitment). Если в области подкачки ния памяти постоянно ведутся иссле-
свободного места нет, придётся совер- дования, здесь всегда есть место для
шать неприятные действия: принуди- улучшений.
ФАЙЛОВАЯ СИСТЕМА
281
Хранение и обработка информации
282
Операционная система компьютера
283
Хранение и обработка информации
ФАЙЛЫ В OC UNIX
Подход заключается в том, чтобы посмотреть на ти- 13-м блоком в индексе. В третьем блоке косвеннос-
пичную длину файла в файловой системе и создать ти могут храниться до 256 вторых блоков косвенно-
требуемое число индексов в зависимости от объёма сти. Всего, 10 + 256 + 2562 + 2563 = 16 843 018 бло-
диска. Например, в современных ОС UNIX типичная ков, т. е. максимальный размер файла может
длина файла 10 кбайт. Значит, нужно на каждые десять составлять 16 Гбайт. Третьего блока заведомо хва-
логических блоков файловой системы отводить один тит для хранения файла объёмом 2 Гбайт. Структу-
индекс, если логический блок имеет размер 1 кбайт. ра списка блоков в индексе получилась следующей.
Со списком блоков дело обстоит сложнее. Надо Номера первых десяти блоков файла.
уметь адресовать каждый байт файла. Адресация Первый блок косвенности. f Номера следующих
в файле традиционно устроена как смещение отно- 256 блоков файла.
сительно текущей позиции указателя чтения/записи; Второй блок косвенности. f Номера 256 первых
смещаться можно как вперёд, так и назад, поэтому блоков косвенности. f Номера следующих 2562 бло-
адрес будет 32-разрядным числом со знаком. И мак- ков файла.
симальный объём файла 2 Гбайт, ровно столько мож- Третий блок косвенности. f Номера 256 вторых
но адресовать 32-разрядным числом со знаком. блоков косвенности. f Номера 2562 первых блоков
В списке блоков может присутствовать до 2 млн косвенности. f Номера следующих 256 3 блоков
элементов (число элементов в списке блоков = объём файла.
файла/размер блока = 2 Гбайт/1 кбайт=2.220), а для Для хранения номеров блоков понадобится за-
хранения списка понадобится 8 Мбайт (2.220 . 4 байт резервировать 52 байт в индексе (13 номеров бло-
в 32-разрядном адресе блока=8 Мбайт). ков × 32 бит = 52 байт). Общий размер — 84 байта.
Номера нескольких первых блоков хранятся пря- Однако при работе с большими файлами за ком-
мо в индексе файла. Поскольку считается, что типич- пактный индекс придётся заплатить производитель-
ный файл занимает десять блоков, на него отводит- ностью. Действительно, чтобы считать 11-й килобайт
ся в индексе место для десяти блоков. Далее вводится файла, надо прочитать два блока — первый блок ко-
понятие (аналогичное директории страниц) «блок ко- свенности, чтобы узнать номер блока, и сам блок.
свенности». В нём хранятся не записи файла, а номе- Для чтения каждого блока из первого мегабайта по-
ра блоков в списке. Блок косвенности будет 11-м бло- требуется прочитать три блока — второй блок кос-
ком в индексе файла. Так как размер блока принят венности, первый блок косвенности и сам блок. На-
равным 1 кбайт, размер адреса — 32 бит; в блоке ко- конец, для чтения блока из сотого мегабайта
свенности можно хранить номера 256 блоков. Всего потребуется прочитать четыре блока — третий блок
266 блоков, или первые 266 кбайт файла. косвенности, второй блок косвенности, первый блок
Вообще в одном блоке косвенности может хра- косвенности и сам блок.
ниться информация о 256 кбайт файла. Для хране- Объём современных дисков составляет десятки
ния файла размером 2 Гбайт нам нужно 8 тыс. бло- гигабайт; если выделять один индекс на каждые
ков косвенности (2.220 блоков в списке/256 блоков 10 кбайт, нам понадобится 1 млн индексов, соответ-
в блоке косвенности = 8.210 блоков косвенности), ственно размер массива индексов составит 84 Мбайт,
что потребует 32 кбайт в индексе. Это меньше, чем или менее 1 % объёма диска, что немного.
8 Мбайт в случае хранения просто номеров блоков,
но всё ещё много, чтобы хранить все блоки косвен-
ности в каждом индексе.
Второй блок косвенности содержит номера пер-
вых блоков косвенности (которые уже содержат но-
мера блоков файла) и является 12-м блоком в индек-
се файла. Во втором блоке косвенности можно
хранить номера 256 первых блоков косвенности. Ито-
го, 10 + 256 + 2562 = 65 802 блока, или чуть боль-
ше 64 Мбайт файла. Для хранения 2 Гбайт нам по-
надобится 32 вторых блока косвенности (2.220 блоков
в списке/2562 блоков во втором блоке косвенности =
= 32 вторых блока косвенности), что потребует
128 байт в индексе. Третий блок косвенности содер-
жит номера вторых блоков косвенности. Он будет
284
Операционная система компьютера
285
Хранение и обработка информации
286
Операционная система компьютера
287
Хранение и обработка информации
288
Операционная система компьютера
289
Хранение и обработка информации
Стандартная оконная
система ОС Linux.
ОС UNIX
Сегодня UNIX по праву считается эта- будущее». Можно сказать, что удалось
лоном в мире операционных систем. выполнить лишь половину поставлен-
На протяжении 30 лет любое дости- ной цели: ОС Multics действительно
жение в области операционных си- была надёжной и безотказной систе-
стем, вычислительной техники и ин- мой, в компании Ford она проработа-
формационных технологий так или ла с 1974 по 1997 г.
иначе связано с ОС UNIX. В чём заклю- В апреле 1969 г., за несколько ме-
чается такой успех? Что позволяет сяцев до появления первой версии
UNIX не только оставаться на плаву, ОС Multics, руководство компании
но и быть лидером в ряду универсаль- AT&T решило выйти из проекта и, бо-
ных операционных систем? лее того, закрыло все исследования
Созданию ОС UNIX предшество- в области построения операционных
вал проект вычислительной системы систем. В Bell Telephone Laboratories
Multics (1964 г.), объединивший раз- эта новость вызвала разочарование,
работчиков из Массачусетсского тех- ведь разработчики нуждались в опе-
нологического института, компании рационной системе, которая позво-
General Electric и Bell Telephone ляла бы не только эффективно решать
Laboratories — научно-исследователь- многие задачи, но и была бы центром,
ского центра компании AT&T. Цель вокруг которого формируется сооб-
проекта — операционная система щество пользователей. Опыт эксплуа-
разделения времени, которая могла тации операционных систем разделе-
бы не только работать непрерывно ния времени показал, что совместная
и безотказно 7 дней в неделю, 24 ч работа нескольких пользователей —
в сутки, предоставляя максимальный это не просто интерактивная работа,
спектр возможностей, но и, по сло- а скорее питательная среда для обме-
вам разработчиков, «удовлетворить на идеями — основы научной деятель-
почти все требования, выдвигаемые ности человека.
к большой компьютерной системе Группа специалистов из Bell Tele-
на сегодняшний день и ближайшее phone Laboratories: Кен Томпсон,
290
Операционная система компьютера
Деннис Ритчи, Джо Оссанна, Руд Ке- шла первая версия операционной си-
недей и Дуг Мак-Илрой — продолжи- стемы на ЭВМ PDP-7. Чуть позже,
ла разработку отдельных частей в 1970 г., Брайан Керниган предло-
экспериментальной операционной жил имя для этой ОС — UNICX (англ.
системы, в том числе и файловую Uniplexed Information and Computing
систему. Service — «Простая информацион-
В течение 1969 г. Кен Томпсон при- новычислительная служба»), это ан-
думал игру «Космическое путешест- тоним Multics (англ. Multiplexed In-
вие», которая по существу представля- formation and Computing Service —
ла собой программную модель физики «Сложная информационно-вычис-
движения космических тел в Солнеч- лительная служба»). Вскоре название
ной системе. Играть в неё на лабо- редуцировалось до UNIX.
раторной ЭВМ было весьма расто- Ключевой момент в истории
чительно: расход вычислительных UNIX — изобретение Дугом Мак-Ил-
ресурсов, потребляемых игрой, состав- роем и Рудом Кенедеем в 1973 г. про- Кен Томпсон.
лял 75 долларов в час. К счастью, Томп- граммных каналов (связывающих
сон нашёл подходящую вычислитель- поток вывода одной программы с по-
ную аппаратуру — ЭВМ PDP-7 током ввода другой, чтобы получить
с графическим терминалом. PDP-7 вы- конвейер команд), после чего эта ОС
глядел карманным компьютером по и стала ОС UNIX в современном по-
сравнению с сервером. В ходе пере- нимании.
носа игры на PDP-7 была создана так Для иллюстрации работы про-
называемая кросс-технология, когда граммного канала можно рассмотреть
программы для одной ЭВМ пишутся следующий пример. Есть книга, кото-
с использованием другой ЭВМ. рая состоит из глав, каждая глава рас-
Для операционных систем кросс- положена в отдельном файле. Нужно
технология — необходимый шаг. В на- напечатать книгу с нумерацией стра-
чале разработки требуется создать ниц. В UNIX это может выглядеть так:
исполняемый файл операционной си-
стемы (образ ОС), которой ещё не су- cat глава1 глава 2 глава3 глава4
ществует. Это напоминает известный глава5 | mpage -H | lpr
вопрос: «Что появилось раньше: кури-
ца или яйцо?». Решение состоит в раз- Здесь cat — программа, которая чи-
работке инструментальных средств, тает файлы глава1 — глава5 и записы-
способных создавать исполняемые вает их в свой поток вывода; mpage —
файлы на другой ЭВМ. программа, которая форматирует Деннис Ритчи.
Для «Космического путешествия» текст, разбивает его на страницы и, до-
понадобилась специальная среда ис- бавляя номер страницы, записывает
полнения. Здесь и пригодилась фай- всё это в свой поток вывода; lpr — вы-
ловая система Bell Telephone Labo- вод на печать потока ввода. Знак
ratories. Дополненная простейшей « | » связывает поток вывода с потоком
подсистемой управления процессами, ввода через программный канал.
она сформировала простейшую опе- С появлением каналов ОС UNIX
рационную систему разделения вре- приобрела новое качество: из опера-
мени. Эта ОС была многопользова- ционной системы она превратилась
тельской (к PDP-7 подключались два в набор инструментальных средств
терминала!), но каждый пользователь программиста, значительно облегча-
мог одновременно запустить только ющий программирование приклад-
одну программу. Для системы были со- ных задач. UNIX предложила новый
зданы небольшой набор пользователь- подход в использовании вычисли-
ских утилит, расчитанных на работу тельной техники: комбинирование
с файлами (текстовый редактор, ути- универсальных программ вместо раз-
литы копирования, удаления, печати работки единой самодостаточной си-
файлов), и командный интерпрета- стемы специального назначения.
тор — программа, с помощью которой Изобретение программных кана-
пользователи запускали все остальные лов — такое же значимое событие,
программы. Именно в таком виде вы- как и изобретение первого спутника Дуг Мак-Илрой.
291
Хранение и обработка информации
292
Операционная система компьютера
наченные для работы под управлени- версии 0.01 был выложен для свобод-
ем UNIX (в версии от SUN UNIX назы- ного копирования в Интернете.
валась SunOS, а потом была переиме- Стремительному развитию про-
нована в Solaris). Ориентация на UNIX екта Linux способствовали два фак-
позволила продукции SUN лидиро- тора. Во-первых, в начале 90-х гг. уже
вать во второй половине 80-х гг. До- не существовало проектов свободно-
стижение SUN в области UNIX — со- распространяемых операционных
здание сетевой файловой системы систем, которые находились бы в
NFS, которая разрешает работать начальной стадии развития. Следо-
с файловыми системами удалённых вательно, войти в группу разработ-
ЭВМ, объединённых сетью. чиков и принять участие в таких
Следующий этап развития UNIX проектах было довольно сложно: тре-
связан с Linux, который придумал бовалось обладать запасом знаний Линус Торвальдс.
студент второго курса отделения вы- о конкретных деталях той или иной
числительной техники факультета операционной системы. Linux же бы-
естественных наук Университета Хель- ла небольшой операционной систе-
синки Линус Торвальдс. Во время учё- мой и идеальным полигоном для ис-
бы он изучал курс по теории операци- пытаний новых идей. Во-вторых,
онных систем, в основе которого была новые версии ОС Linux выпускались
ОС Minix — UNIX-подобная ОС, со- очень быстро, изменения между вер-
зданная знаменитым специалистом сиями были небольшими, что позво-
в области операционных систем Эн- ляло легко находить и устранять
дрю Таненбаумом специально для ошибки в коде. Рекордной можно
учебных целей. Поначалу Торвальдс считать серию ядер Linux 2.1, в рам-
хотел, чтобы система была сделана не- ках которой было выпущено чуть ме-
множко лучше, чем Minix, и не претен- нее 150 версий.
довал на что-то серьёзное — это было Сейчас Linux — это система мил-
просто хобби. В сентябре 1991 г. Linux лионов пользователей. Эндрю Таненбаум.
293
МУЛЬТИМЕДИА
ПЕРЕХОД К ЦИФРОВОМУ ПРЕДСТАВЛЕНИЮ
ИНФОРМАЦИИ
294
Мультимедиа
АУДИОИНФОРМАЦИЯ
Компакт-диск, или DVD-диск, может
хранить информацию о звуке, изоб-
ражении, письме в виде миллиардов
двоичных нулей и единиц. Долговеч-
ность лазерного диска (сотни лет) во
многом объясняется самими прин-
ципами цифровой технологии. В от-
личие от виниловой пластинки ла-
зерный диск не боится пыли, а мелкие
царапины не ухудшают качества вос-
произведения.
295
Хранение и обработка информации
ИЗОБРАЖЕНИЕ
Если вы не можете ра- Для ввода изображений с фотографий
зобрать собственный или гравюр можно использовать всё
почерк, но набираете те же сканеры, так как они позволяют
текст на компьютере вводить их с очень хорошим разреше-
со скоростью свыше нием. Уже нет смысла сначала делать
70 слов в минуту, то фотографии обычным фотоаппара-
вы, скорее всего, не том, а потом сканировать отпечатан-
гений, а просто со- ное изображение или слайд. Совре-
временный человек... менные цифровые фотоаппараты
не уступают по качеству снимков сво-
им аналоговым собратьям. То же от-
носится и к цифровому видео.
Сложной пока остаётся проблема
представления пространственных
объектов (однако подробные объём-
ные фотографии уже возможно со-
Томограф. здавать). Существует два основных
способа такого представления — за-
музыкальных центров имеют встро- дание сетки точек на поверхности
енный цифровой процессор, пред- рассматриваемого объекта и прибли-
ставляющий собой особую микросхе- жение объекта различными геомет-
му для обработки звуковых сигналов рическими фигурами, имеющими
в цифровой форме. Современные строгое математическое представле-
DVD-проигрыватели и видеомагни- ние. Первый способ применяется при
тофоны также имеют встроенные описании сложных объектов, таких,
процессоры для обработки звука, по как скульптура или сам человек. Вто-
качеству не уступающие Dolby АСЗ- рой способ широко используется в
системам, которые устанавливают в системах автоматического проекти-
кинотеатрах. На цифровую запись и рования (САПР), в станках с чис-
обработку звука перешли многие ра- ловым программным управлением
диостанции и телестудии. Даже дома (ЧПУ) для производства необходи-
записи на MD (мини-диски) часто мых деталей.
Оборудование для производят не старым, аналоговым, Медики на основе серии парал-
создания объёмной способом (с потерей качества при пе- лельных снимков, получаемых на спе-
фотографии посту- резаписи), а цифровым (точная ко- циальном приборе — томографе,
пило в продажу уже пия исходной записи). строят трёхмерное изображение ис-
в 2002 г. Ещё одним направлением посто- следуемых органов и частей тела че-
янных исследований является распо- ловека. Без компьютерной обработки
знавание голоса, чтобы использовать таких изображений нельзя проводить
для ввода текста ЭВМ. современные операции с использо-
ванием лазеров, например удаление
внутренних опухолей без разрезов
или повреждения соседних тканей.
Компьютер способен не только видо-
изменять уже существующую инфор-
мацию, но и создавать новую.
Обработка графики и видео значи-
тельно облегчается при использова-
нии цифровой информации. Профес-
сиональные графические редакторы,
такие, как Adobe Photoshop или Corel
Draw, предоставляют большой выбор
различных эффектов, цифровых филь-
тров, настроек в домашних условиях.
А ведь раньше для этого требовалась
296
Мультимедиа
Растровый
и векторный цветок.
297
Хранение и обработка информации
298
Мультимедиа
299
Хранение и обработка информации
300
Мультимедиа
301
Хранение и обработка информации
Фрагмент фотогра-
фии, обработанной
при помощи алго-
ритма сжатия JPEG.
PNG (англ. Portable Network Graphic TIFF (англ. Tagged Image File Format —
Format — «формат для передачи гра- дословно «формат изображений,
фики по сети», а произносится как снабжённый “ярлыками” — тегами»),
«пинг») создан по инициативе группы разработанный Aldus Corporation в
программистов из США (23 человека), 1986 г., предназначался в качестве
возглавляемой Томасом Бутеллом. стандарта для хранения чёрно-белых
Большинство форматов графиче- изображений, введённых со сканеров.
ских файлов разрабатывались одним- Это наиболее широко поддержива-
двумя программистами, и как резуль- емый формат растровой графики, ко-
тат созданный формат было трудно торый применяется в настольных из-
модифицировать под новые требова- дательских системах. Версия TIFF 4.0
ния. PNG-формат разработан специ- позволяла хранить несжатые цветные
ально созданным комитетом, особое изображения. Очередная модифика-
внимание уделялось документирова- ция, появившаяся в августе 1988 г., уже
нию PNG, поэтому все его последующие использовала цветовую палитру и ал-
модификации не требуют доработки горитм сжатия LZW. В июне 1992 г.
уже работающих с ним графических версия TIFF 6.0 поддерживала не толь-
редакторов. ко RGB-изображения, но и кодиров-
PNG разрабатывался как альтерна- ку CMYK, YUV, а также алгоритм сжа-
тива GIF, причём PNG и GIF89а име- тия JPEG.
ют много общего, в частности, они ор- TIFF считают одним из самых слож-
ганизованы как поток данных, могут ных форматов графических файлов.
поэтапно выводить изображение и Файл состоит из списка так называемых
делать прозрачным основной цвет тегов, или полей, и растровых масси-
и т. д. Однако PNG позволяет хранить вов. Положение списка и массивов не
не только изображение true color фиксировано, вероятно, поэтому фор-
(24 бит), но и 48 бит на пиксель. PNG мат и считается сложным. Устройство
использует открытый алгоритм сжа- TIFF похоже на устройство файловой
тия LZ77 (он, в отличие от LZW, не тре- системы: список — это директория, каж-
бует лицензионных платежей), обес- дый элемент списка (тег) — имя файла,
печивающий сжатие без потерь. растровый массив — данные файла.
302
Мультимедиа
Фотография
без сжатия.
Как и в файловой системе, тег мо- TIFF имеет более 70 различных ти-
жет содержать ссылку (указатель) на пов тегов. Тег одного типа хранит,
растровые данные, а директория — например, информацию о ширине
указатель на следующую директорию. изображения в пикселях, другого —
информацию о высоте изображения,
Количество тегов следующего — таблицу цветов... Также
Тег ... можно определить собственные типы
Тег n
тегов или игнорировать непонятные.
Растровый
Указатель массив
JPEG назван так по начальным буквам
Количество тегов комитета Joint Photographic Experts
Тег ... Group (Объединённая группа экспер-
тов по фотографии; сформирована в
Тег n
1987 г., входит в Международную ор-
Указатель ганизацию по стандартизации — ISO).
303
Хранение и обработка информации
304
Мультимедиа
305
Хранение и обработка информации
ЦИФРОВАЯ ФОТОГРАФИЯ
Ни для кого не секрет, что обработ- причём оно может быть как без по-
ка изображений на компьютере се- терь, так и с потерями информации.
годня дело привычное, если не ска- Программы сжатия производят
зать повседневное. Графика для анализ исходного изображения и от-
сайтов, фотомонтаж, вёрстка журна- брасывают «ненужные» точки. Чем
лов и газет — всё это и многое другое грубее этот анализ, тем быстрее и
выполняется на ЭВМ. сильнее сжимается изображение; при
В настоящее время существует сильном сжатии искажение изобра-
немало форматов для хранения изоб- жения может стать заметным. Совре-
ражений на компьютере. Самыми рас- менные методы компрессии (сжатия)
пространёнными и общеупотреби- изображений позволяют достичь
тельными являются, пожалуй, JPEG. очень хороших результатов при ми-
Если картинка, находящаяся в та- нимальных потерях данных.
ком файле, имеет большой размер, на- Перевод изображения в цифро-
пример около тысячи точек по верти- вой формат осуществляется с помо-
кали и горизонтали, то информация, щью специальных устройств — ска-
описывающая такую картинку, будет неров. Основной частью сканера
занимать довольно много места на но- является светочувствительный эле-
Пример возможностей сителе данных. Для уменьшения раз- мент. Он улавливает световой поток,
цифрового фото. меров файлов применяют сжатие, отражающийся от исходного бумаж-
ного изображения, и генерирует
электрический сигнал, который пре-
образуется в поток данных, описы-
вающий исходную картинку. Такой
поток уже может быть обработан на
компьютере.
Поскольку обычного дневного све-
та, как правило, недостаточно для
светочувствительного элемента, ска-
нер дополнительно оснащается мощ-
ной лампой, освещающей сканиру-
емый участок.
Светочувствительный элемент —
вещь достаточно дорогая, поэтому он
делается небольшого размера и уста-
навливается на движущееся шасси, ко-
торое шаг за шагом перемещается
вдоль изображения, и на ЭВМ пере-
даются данные о частях картинки.
Управляющая программа на компью-
тере «склеивает» отдельные кусочки
картинки и позволяет наблюдать на
экране конечный результат.
Другим устройством создания циф-
ровых изображений является цифро-
вая фотокамера. Принцип её работы
очень напоминает принцип работы
обычной плёночной камеры, только
вместо плёнки используется свето-
чувствительная матрица, улавлива-
ющая световой поток. Чем больше то-
чек может обработать матрица, тем
лучше качество картинки. Цифровые
камеры оснащены собственными но-
306
Мультимедиа
ЦИФРОВОЕ ВИДЕО
307
Хранение и обработка информации
308
Мультимедиа
309
Хранение и обработка информации
АУДИОМОНТАЖ
310
Мультимедиа
311
ВЫЧИСЛЕНИЯ
ВЫЧИСЛЕНИЯ НА КОМПЬЮТЕРЕ
312
Вычисления
АЛУ (арифметико-логическое
устройство) — это простейший вид
универсального арифметического
устройства. Оно обрабатывает целые
числа, выполняет операции сложения,
вычитания, сдвига и логические опе-
рации.
Специализированное АУ осуществ-
ляет группу близких по алгоритму
операций. Так, устройство сложения
выполняет операции сложения, вычи-
тания, сравнения; устройство умноже-
ния — операции умножения; устрой-
ство деления — деление и вычисление
квадратного корня.
Универсальное АУ cостоит из мень-
шего объёма оборудования (т. е. за-
нимает меньше места на полупро-
Ещё в 1965 г. Гордон Мур (один из основателей фирмы Intel)
водниковом кристалле, на котором
заметил, что через каждые несколько лет выпускается новый
изготовляется современный про-
кристалл полупроводниковой памяти, который имеет объём
цессор), чем несколько специализиро-
примерно в два раза больше, чем у предыдущего кристалла па-
ванных АУ, имеющихся в компьютере.
мяти. Подобные оценки справедливы и для количества транзи-
Наличие в машине специализирован-
сторов в кристалле микропроцессора, и для производительно-
ных АУ позволяет осуществлять не-
сти микропроцессора.
сколько арифметических операций
одновременно, что ускоряет и увели-
чивает производительность компью-
тера. числение квадратного корня) выпол-
Чем больше оборудования в крис- нялись с помощью специальных про-
талле, тем сложнее АУ и быстрее их ра- грамм, то сейчас это обычно делается
бота, повышающая производитель- в аппаратуре, что гораздо быстрее про-
ность микропроцессора. Кроме того, граммной реализации.
можно увеличивать количество ариф- В 90-х гг. появились мультимедий-
метических устройств в компьютере, ные арифметические устройства, их
распараллеливая тем самым процесс использование значительно расшири-
вычислений. Если раньше некоторые ло возможности обработки графиче-
операции (например, деление и вы- ской информации, возникли компью-
терная томография и виртуальная
реальность.
ПРЕДСТАВЛЕНИЕ ЧИСЕЛ
С ФИКСИРОВАННОЙ
ЗАПЯТОЙ
Числа, обрабатываемые в компьютере, Гордон Мур.
делятся на числа с фиксированной за-
пятой и числа с плавающей запятой.
Числа с фиксированной запятой —
это обычные целые числа, представ-
ленные в двоичном виде. Запятая,
отделяющая целую часть числа от
дробной, стоит в них на фиксирован-
ном, т. е. постоянном, месте. Обычно
это место справа от младшего разря-
да числа. В языках программирования Томограф.
313
Хранение и обработка информации
314
Вычисления
315
Хранение и обработка информации
316
Вычисления
Ч1 = (–1)Зн1 . М1 . 2П1,
Ч2 = (–1)Зн2 . М . 2П2,
2
317
Хранение и обработка информации
318
Вычисления
МЕТОДЫ ВЫЧИСЛЕНИЙ
319
Хранение и обработка информации
320
Вычисления
e –x = 1/e x.
eN + x = eN . ex
или
e N . x = (e x)N,
321
Хранение и обработка информации
322
Вычисления
xi+1 = xi + vi ∆t,
РЕШЕНИЕ ДИФФЕРЕН- vi+1 = vi – (kx/m)∆t.
ЦИАЛЬНЫХ УРАВНЕНИЙ Таким образом задача отыскания
функции на отрезке, т. е. объекта, за-
Приближение элементарных функ- даваемого бесконечным количеством Разреженной являет-
ций, решение уравнений — всё это ти- чисел, свелась к нахождению табли- ся матрица, у которой
пично математические задачи, встре- цы значений функций х и v в отдель- большинство элемен-
чающиеся, впрочем, на каждом шагу. ных точках этого отрезка. Такой про- тов равно нулю.
Непосредственно же рассмотрение цесс сведения «бесконечной» задачи
физической задачи приводит, как пра- к «конечной» называется дискрети-
вило, к дифференциальному уравне- зацией. Вопросами же оценки точно-
нию той или иной степени сложно- сти полученного решения и её зави-
сти или к системе таких уравнений. симости от N занимается теория
Рассмотрим тело, подвешенное на приближений.
пружине. Расположим ось X вдоль ли-
нии натяжения пружин. Если откло- ***
нить тело вдоль оси X, то на него будет
действовать сила, стремящаяся вернуть Существует ещё одна проблема, акту-
тело в первоначальное состояние. По альная для любого численного мето-
закону Гука эта сила равна да, — проблема эффективности. Обыч-
но в докомпьютерные времена для
F = – k x. оценки сложности работы програм-
мы подсчитывали количество умно-
Воспользовавшись вторым зако- жений. Однако в реальности доля
ном Ньютона, получаем умножений в вычислениях отнюдь
не самая большая. Во-первых, в со-
mа = –k x. временных компьютерах умножение
и сложение вещественных чисел тре-
Вспомнив, что ускорение есть буют одинакового или почти одина-
производная скорости (а = v'), а ско- кового времени. Но главное — время
рость — производная координаты доступа к оперативной памяти во
(v = х'), получаем систему дифферен- много раз больше, чем время выпол-
циальных уравнений нения любой арифметической опе-
рации. Кроме того, на практике при
v' = – kx/m, выборе того или иного способа ре-
х' = v. шения задачи на компьютере важ-
ную роль играет возможность при-
Теперь можно построить простой способить алгоритм к особенностям
метод для решения предложенной си- аппаратуры.
323
Хранение и обработка информации
МЕТОД НЬЮТОНА
Предположим, что нам известно значение Ньютону известно, что значение x = 2 мало
X0 , которое мало отличается от корня отличается от корня
Коэффициенты А и В в уравнении
для p можно легко вычислить, не де-
ТОЧНОСТЬ МЕТОДА НЬЮТОНА лая подстановку x = x0 + p и не выпи-
сывая уравнение для p. Поскольку
Если один шаг метода Ньютона не даёт требуемой точности, то мож- f(x0+ p) = g(p) = ... + Bp + A , то подста-
но сделать ещё один шаг: вив p = 0, убедимся, что A = f(x 0).
x2 = x1 – f(x1)/f '(x1) Аналoгично, продифференцировав
по переменной p обе части тождества
и т. д. Метод Ньютона замечателен тем, что если исходное прибли- f (x0 + p) = ... + Bp + A и подставив p = 0,
жённое значение корня достаточно близко к корню, то при каждом получим B = f '(x 0). Таким образом,
шаге Ньютона число верных десятичных знаков ответа будет как ми- вместо уравнения f(x0 + p) = 0 мы ре-
нимум удваиваться. Если попробовать решить методом Ньютона урав- шаем уравнение f '(x0)p + f(x0) = 0. Ко-
нение, в котором заранее известен точный корень: x2 – 1 = 0, то в ка- рень этого уравнения даётся форму-
честве приближённого значения корня берётся x0 = 1,1. Это лой p0 = – f(x0)/f '(x0), следовательно,
приближение имеет один верный знак. Можно предположить, что по- в качестве нового приближённого
сле одного шага Ньютона получится не меньше двух верных знаков, значения корня уравнения f(x) = 0
а после двух шагов — не меньше четырёх. Поскольку (x2 – 1)' = 2x, то: можно взять x1 = x0 – f(x0)/f '(x0).
Переход от приближённого значе-
x1 = x0 – f(x0)/f '(x0) = 1,1 – 0,21/2,2 . 1,1 – 0,095 = 1,005, ния корня x0 к более точному прибли-
жённому значению x1 называется ша-
x2 = x1 – f( x1)/f '( x1) = 1,005 – (1,0052 – 1)/2,010 × 1,005 –
гом метода Ньютона.
– 0,004985=1,00001. Метод Ньютона не работает, если в
уравнении f '(x0)p + f(x0) = 0 коэффи-
Результат превзошёл ожидания: после одного шага три верных циент f '(x0) равен нулю или близок к
знака, а после двух шагов — пять верных знаков. нулю. То же случается, когда рядом с
приближённым значением x0 два кор-
324
Вычисления
x = x0 + p, +2,000 000 00
y = y0 + q +0,100 000 00
– 0,005 400 00
и записав – 0,000 048 53
---------------
f(x0 + p, y0 + q) = ... + Аp + Bq + C = 0, +2,09455147 = x». Исаак Ньютон.
g(x0 + p, y0 + q) = ... + Dp + Eq + F = 0.
325
Хранение и обработка информации
КОМПЬЮТЕРНАЯ АЛГЕБРА
326
Вычисления
327
Хранение и обработка информации
(10a + b)(10c + d) =
=100ac + 10(ad + bc) + bd.
В научных исследованиях и технических расчётах специалистам
приходится гораздо больше заниматься преобразованиями фор-
Имеем четыре операции умноже-
мул, чем собственно численным счётом. Однако с появлением
ния однозначных чисел, три опера-
ЭВМ основное внимание уделялось автоматизации последнего,
ции сложения и две операции умно-
хотя более 40 лет назад ЭВМ применяли для решения таких за-
жения числа на степень 10. Будем
дач символьных вычислений, как символьное дифференцирова-
считать, что умножение на степень
ние. Активная разработка систем компьютерной алгебры нача-
10 выполняется очень быстро, сло-
лась в конце 60-х гг. С тех пор создано значительное количество
жение — медленнее, а умножение
систем, получивших различную степень распространения. Неко-
двух чисел — существенно медлен-
торые системы продолжают развиваться, другие отмирают, по-
нее (весьма естественное предполо-
стоянно появляются новые.
жение).
Можно ли уменьшить количество
умножений, увеличив, если необходи-
объектов сложной структуры значи- мо, количество сложений? Оказыва-
тельно шире. Поэтому ограничения ется, да. Впервые такой алгоритм, ис-
по времени счёта и по используемой пользующий только три умножения,
памяти в символьных вычислениях предложил в 1956 г. А. А. Карацуба.
существенно более обременительны, Перемножив a – b и d – c, получим
чем в вычислительных методах. ad + bc – bd – ac; два других умноже-
Использование компьютеров в ал- ния нужны, чтобы вычислить ac и bd.
гебраических исследованиях не толь- Комбинируя эти три значения, ис-
ко поставило перед специалистами пользуя лишь операции сложения и
ряд новых задач, но и заставило пе- сдвига (умножения на степень двой-
ресмотреть прежние задачи, в част- ки), легко получить искомую форму-
ности задачи, решённые «за конеч- лу, так как
ное число шагов». При этом методы
решения отличались большим разно- ad + bc = (a – b)(d – c) + ac + bd.
образием и универсальные методы
для конкретных вычислений практи- Задача допускает различные обоб-
чески не применялись. С увеличени- щения, например: перемножить два
ем размера задачи резко возрастали комплексных числа, используя только
время счёта и необходимая память три вещественных умножения; пере-
компьютера. множить две матрицы второго поряд-
В качестве примера рассмотрим ка, используя только семь скалярных
задачу перемножения двух двузнач- умножений.
ных чисел в некоторой позиционной Основой любой системы компью-
системе счисления, например в деся- терной алгебры являются вычисления
тичной: с многочленами. Вот две задачи, ак-
тивно исследуемые в последние де-
сятилетия. Первая из них — задача
факторизации, т. е. разложения мно-
гочлена на неприводимые множите-
ли. Пусть дан многочлен f (x) от одной
переменной с целыми коэффициен-
тами, требуется разложить его на не-
приводимые множители. С точки зре-
ния «чистой» математики эта задача
давно решена полностью и оконча-
тельно: есть алгоритм, позволяющий
находить требуемое разложение «за
конечное число шагов». Один из та-
ких алгоритмов получен в 1882 г. Лео-
польдом Кронекером, чьим именем
он и называется в настоящее время,
хотя ещё австрийский астроном Шу-
328
Вычисления
329
АВТОМАТИЗАЦИЯ
ИНТЕЛЛЕКТУАЛЬНОЙ
ДЕЯТЕЛЬНОСТИ
КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ
330
Автоматизация интеллектуальной деятельности
331
Хранение и обработка информации
332
Автоматизация интеллектуальной деятельности
333
Хранение и обработка информации
334
Автоматизация интеллектуальной деятельности
Если вы получили
счёт в сумме 0 р. 00
к. за коммунальные
услуги, то поспешите
позвонить в ДЭЗ.
Возможно, за неопла-
ту этого счёта авто-
матическая инфор-
мационная система
отключит вам горя-
чую воду.
бюджет и планируемая прибыль, а в процессе осуществления настройкой не обойтись. Процессы, протекающие на пред-
руководитель сможет в любой момент посмотреть текущее приятии, часто необходимо подвести под некоторый стан-
состояние выполнения работы, затраты на неё и финансо- дарт, принятый в настраиваемой системе, а часто, наобо-
вое состояние, то это может оказаться решающим факто- рот, перестроить систему, чтобы не разрушать привычные
ром, например при отказе от контракта на работу (вероятно, и отлаженные производственные процессы. То есть тут
он будет просто невыгодным). Или планируемые ресурсы осуществляется движение навстречу друг другу: предпри-
могут быть уже заняты (на другом строительстве). На все ятия к системе, а системы к предприятию.
эти вопросы даст ответы проектируемая система. Эффективность внедрения системы зависит от само-
Для производственных фирм естественной потребно- го ответственного этапа, когда осуществляются доводка
стью являются система управления производством, кон- и обучение персонала и от опытной эксплуатации перехо-
троль качества, учёт, распределение и планирование про- дят к промышленной, ведь всего 60 из 100 внедрений
изводственных мощностей. Не надо забывать, что оказываются по-настоящему успешными. Важно, чтобы
производство не должно быть убыточным. Фирма, процесс проектирования информационных систем проис-
выполняющая ремонт, т. е. сервисное обслуживание, есте- ходил по заранее разработанной технологии, чтобы вне-
ственно, должна иметь блок, управляющий и учитывающий дрение было производственным процессом, а не отдава-
этот часто циклический процесс. Так, на автосервисе важ- ло программистским шаманством.
но регулярно приглашать клиентов на техобслуживание.
Одной из современных частей таких систем стали мар-
кетинговые модули, которые позволяют учитывать и оце-
нивать эффективность тех или иных контактов и презента-
ций. Подобные системы собираются из кирпичиков-модулей
и затем настраиваются на конкретное предприятие.
Процесс конструирования и внедрения таких систем
непростой, он проводится в несколько этапов. Как прави-
ло, в любом внедрении принимают участие аналитики,
специалисты, хорошо представляющие область работы фир-
мы-заказчика, и программисты, которые осуществляют до-
водку и настройку системы на эту фирму. При работе ана-
литики часто используют специальные методы построения
модели и процессов, происходящих на предприятии. Эти
технологии хорошо проработаны, и, в идеале, результатом
такого проектирования будет автоматическая настройка
системы на конечную фирму. Необходимо всё-таки заме-
тить, что чудес не бывает, и в каждом конкретном случае
проявляется своя специфика. Поэтому параметрической
335
Хранение и обработка информации
ЭКСПЕРТНЫЕ СИСТЕМЫ
336
Автоматизация интеллектуальной деятельности
337
Хранение и обработка информации
338
Автоматизация интеллектуальной деятельности
ПОЛЬЗОВАТЕЛЬ
Интеллектуальный Логический
Базы знаний
интерфейс вывод
Преображение Приобретение
и объяснение знаний
решений
ЭКСПЕРТ
РАСПОЗНАВАНИЕ ОБРАЗОВ
339
Хранение и обработка информации
340
Автоматизация интеллектуальной деятельности
ния, где каждая строка является при- При обучении с учителем априор-
знаком. Для мелодии в качестве при- но задаётся совокупность объектов с
знакового пространства рассматри- известной принадлежностью к тому
вается совокупность коэффициентов или иному классу. Эта информация
разложения Фурье для акустических используется для разбиения призна-
колебаний, каждый из коэффициен- кового пространства на области, ас-
тов Фурье — признак. Очевидно, что социированные с соответствующим
размерность признаковых прост- классом. Качество обучения, т. е. ка-
ранств для приведённых выше при- чество распознавания, оценивается
меров может быть весьма велика, так по работе распознающей модели на
как в задачах не удаётся выделить не- контрольной совокупности объектов,
большое количество признаков, со- для которых известна принадлеж-
держащих исчерпывающую инфор- ность к конкретному классу, но эта
мацию для отнесения объектов к информация никак не используется
какому-либо классу. обученной моделью.
Основой всех моделей, использу- При втором способе также зада-
емых в теории распознавания, яв- ётся совокупность объектов, однако
ляется так называемая гипотеза их принадлежность к классам не
компактности. Согласно ей, предпо- определена. Вообще говоря, даже
лагается такое устройство признако- число классов может быть неизвест-
вого пространства, что в нём похожие но. В этом случае признаковое про-
объекты находятся близко, а непохо- странство разбивается на конечное
жие — далеко. Поскольку все дальней- число областей в соответствии с при-
шие построения математических мо- вносимым извне критерием, услов-
делей распознавания образов явно но отражающим гипотезу компакт-
или неявно опираются на данную ги- ности и специфику задачи.
потезу, успех решения конкретной за- Существующие методы решения
дачи идентификации определяется задач распознавания образов весьма
удачным выбором признакового про- сильно опираются на специфику ис-
странства. Классы объектов в призна- ходной информации. Поэтому к на-
ковом пространстве в соответствии с стоящему времени сформировались
гипотезой компактности расположе- широкие научные направления, спе-
ны так, что все объекты из одного и циализирующиеся на
того же класса близки друг к другу и распознавании визу-
далеки от объектов из чужих классов. альных, музыкальных
Человек, прежде чем решать лю- образов,
бую задачу распознавания, обязатель-
но проходит стадию обучения. Ему
показывают на примерах, какие объ-
екты к каким классам относятся, пе-
речисляют все классы, проверя-
ют, хорошо ли он усвоил
данные сведения. В мо-
делях применяется та-
кой же подход.
Другими слова-
ми, прежде чем
приступить к рас-
познаванию, мо-
дель необходи-
мо научить делать
разбиение призна-
кового пространст-
ва. В теории распозна-
вания образов существует
два способа обучения: обучение
с учителем и обучение без учителя.
341
Хранение и обработка информации
342
Автоматизация интеллектуальной деятельности
ДОМАШНИЙ ОФИС
343
Хранение и обработка информации
344
Автоматизация интеллектуальной деятельности
345
ИГРЫ
КОМПЬЮТЕРНЫЕ ИГРЫ
346
Игры
347
Информация и информатика
348
Игры
ФЕНОМЕН «ТЕТРИСА»
ТРЕНАЖЁРЫ
349
Информация и информатика
350
Игры
ИСКУССТВЕННЫЕ РЕАЛЬНОСТИ
«...Только вчера, только вчера я открыл ким солнцем пустыне. Липкий пот но-
эту сумасшедшую планету, находящу- ровил попасть в глаза, я смахнул при-
юся в миллионе световых лет от дома. липшие ко лбу спутавшиеся волосы.
Я выбивался из последних сил, ругал Колени и руки разбиты в кровь. Ог-
себя, что пошёл обследовать планету, лушительный рёв, от которого кровь
не взяв с собой робота. По инструк- стыла в жилах и страх парализовы-
ции, действующей на всём звёздном вал тело, снова прервал мои мысли.
флоте Земли, я не имел права даже ша- Только нечеловеческим усилием во-
гу ступить без него на новой планете... ли мне удалось заставить ноги дви-
Стояла страшная жара, задыхаясь, я гаться. До моего корабля оставалась
бежал по пыльной, выжженной жар- пара сотен метров, там спасительное
351
Информация и информатика
352
Игры
353
Информация и информатика
354
Игры
355
Информация и информатика
ОТ ИГР — К ЗНАНИЯМ
356
Игры
357
ИСТОРИЯ
ДОКОМПЬЮТЕРНОЙ ЭПОХИ
НА ПУТИ К СЧЁТНОЙ МАШИНЕ
360
История докомпьютерной эпохи
Механизм
калькулятора
Леонардо да Винчи.
361
Компьютер
АБАК И СЧЁТЫ
362
История докомпьютерной эпохи
363
Компьютер
364
История докомпьютерной эпохи
ваемый дощаной счёт, первый вари- ском музее в Москве самые старые из
ант русских счётов (спустя 100 лет по- дошедших до нас счётов. Они пред-
явилось и само слово «счёты»). Их уст- ставляют собой две соединённые ра-
ройство было достаточно сложным: мы, точнее, ящика, каждый из кото-
целых четыре счётных поля для рядов рых разделён на три счётных поля.
по десять косточек. К середине XVII в. В ящиках имеется по одному полю,
относятся хранящиеся в Историче- содержащему полные ряды по десять
Более трёх столетий приоритет в изобретении счётной трудно понять, зачем бы Шиккард стал вводить Кеплера в
машины безоговорочно признавался за Паскалем. заблуждение (тогда требования научной этики соблюдались
Историкам, конечно, было известно письмо от 20 сентября весьма строго!), а во-вторых, в его пользу убедительно
1623 г., адресованное знаменитому математику и астроному говорят найденные позднее эскизы других чертежей
Иоганну Кеплеру, в котором профессор Тюбингенского вычислителя и письменные инструкции для механика. Более
университета (в настоящее время эта земля принадлежит того, в 60-х гг. XX столетия учёным Тюбингенского универ-
Германии) Вильгельм Шиккард сообщал, что сконструировал ситета по этим чертежам и описанию удалось построить
машину для автоматического производства вычислений. действующую модель машины своего великого земляка.
Однако других тому подтверждений не имелось, и долгие После этого казалось, что историки смело могут увенчать
годы к этим сведениям относились с недоверием. вновь обретённого основоположника лаврами. Однако в
В своё время рукописи Кеплера были куплены императ- 1967 г. были обнаружены неизвестные записные книжки
рицей Екатериной II и сохранись в архиве Российской ака- (или дневники) Леонардо да Винчи, где имелся эскизный
демии наук. Уже после Второй мировой войны, в 1957 г., набросок 13-разрядного суммирующего устройства,
изучая фотокопии этих документов, директор Кеплеровского построенного на основе десятизубцовых колёс. Таким
научного центра, расположенного в Штутгарте, Франц образом, великий Леонардо обдумывал идею создания
Гаммер обнаружил набросок чертежа некоего механизма, вычислительной машины как минимум за 100 лет до
похожего на счётное устройство. Кропотливый и целе- Шиккарда! Точно датировать запись не удалось, хотя
направленный поиск позволил исследователю найти в письме известно, что дневник был начат ещё до открытия Америки
Шиккарда Кеплеру, написанном 25 февраля 1624 г., под- в 1492 г.
робное описание внешнего вида созданной им вычисли- История раннего периода развития вычислительной
тельной машины. техники до сих пор не написана до конца. Никто не знает,
Из описания можно сделать вывод, что шестиразряд- какие ещё интереснейшие открытия сделают учёные —
ный десятичный вычислитель состоял из десятизубцовых историки и архивисты.
и однозубцовых колёс и был рассчитан на выполнение
сложения, вычитания, а также табличного умножения и
деления. Шиккарду удалось решить проблему переноса
между разрядами: машина накапливала и переносила влево
десятки или сотни. При этом механизм передачи десятков
был реверсивным, так что вычитание выполнялось
вращением установочных колёс в обратном направлении.
В том же письме Шиккард извещал своего корреспон-
дента, что вместе с механиком Вильгельмом Пфистером
построил два экземпляра машины (он называет её часами
для счёта), которые, к сожалению, сгорели во время
большого пожара. Профессор писал о том, как тяжело он
переживает эту потерю, и жаловался на отсутствие времени
для постройки новой машины (кстати, одно из сгоревших
устройств предназначалось в подарок Кеплеру). Но, судя
по всему, к работе над вычислителем Шиккард так и не
вернулся, хотя он умер в 1635 г. (во время эпидемии
холеры).
Научному сообществу той поры не пришлось увидеть
счётную машину Шиккарда в действии, но сомнения в её
существовании, скорее всего, следует отклонить. Во-первых,
365
Компьютер
БЛЕЗ ПАСКАЛЬ
В математике издавна известна «улит- боту «Трактат о звуке». Через два года
ка Паскаля» — одна из замечательных мальчик самостоятельно (отец счи-
кривых четвёртого порядка. В этом тал, что сыну пока рано заниматься
названии увековечено имя Этьена Па- математикой, и прятал от него учеб-
скаля (1588—1651), в семье которо- ники) доказал теорему о сумме углов
го 19 июня 1623 г. родился сын, на- треугольника, а спустя ещё год его как
званный Блезом. Этьен Паскаль, равного приняли в кружок крупней-
принадлежавший к судейскому сосло- ших парижских математиков.
вию, человек богатый и образован- В 1640 г. Этьен Паскаль получил
ный, был неплохим математиком назначение «интендантом полиции,
и даже переписывался со знамени- юстиции и финансов» в Руан. Эта
тым французским учёным Пьером должность подразумевала и контроль
Ферма). После смерти жены он посвя- за сбором налогов по всей провин-
тил жизнь воспитанию детей. Блез ции. Считается, что мысль об ариф-
с самого раннего возраста проявлял метической машине возникла у юно-
признаки несомненной гениально- го Блеза из-за желания помочь отцу
сти. Он обладал феноменальной па- в сложных расчётах, которые тот про-
мятью, в четыре года умел читать и пи- изводил на бумаге и на счётной дос-
сать, а в десять лет, пытаясь понять, ке «с помощью пера и жетонов». Впол-
почему при ударе звенит фаянсовая не возможно, что первый толчок
тарелка, написал первую научную ра- к размышлениям дала ему мысль ве-
ликого философа Рене Декарта о том,
что некоторые умственные процес-
сы по сути своей не отличаются от
механических. Позднее и сам Паскаль
писал: «Действия арифметической ма-
шины больше похожи на действия
мыслящего существа, нежели живот-
ного, но у машины нет собственной
воли, а у животных есть». Судя по все-
му, он первым поставил вопрос о со-
отношении искусственного и чело-
веческого разума!
Так или иначе, к концу того же го-
да у Блеза сформировалась главная
идея конструкции будущей машины —
автоматический перенос разряда.
«...Каждое колесо... некоторого разря-
да, совершая движение на десять ариф-
метических цифр, заставляет двигать-
ся следующее только на одну цифру» —
Блез Паскаль. именно так будет звучать формула изо-
366
История докомпьютерной эпохи
367
Компьютер
в жизнь. Ему принадлежит идея гид- вышедшая из-под его пера, — это дра-
равлического пресса. Он же первым гоценный камень», — сказал один из
в истории предложил организовать его соотечественников.) «Мысли»,
движение городского транспорта: главное сочинение Паскаля, восхи-
большие кареты (омнибусы) должны щали своей глубиной Стендаля и Льва
были перевозить по установленным Толстого, Бодлера и Тургенева...
маршрутам пассажиров, причём весь- Через века прошли названия: «тео-
ма дёшево. Всем известная обычная рема Паскаля» — в проективной гео-
тачка тоже была придумана им! А его метрии, «треугольник Паскаля» —
роль как создателя первой арифме- вматематике, «закон Паскаля» — в гид-
тической машины отмечал «отец ки- ростатике. Уже в наши дни имя учё-
бернетики» Норберт Винер. ного получили единица давления
Язык прозы Паскаля-писателя при- и один из самых популярных языков
знан образцовым. («Каждая строка, программирования.
В. Брюсов
368
История докомпьютерной эпохи
369
Компьютер
370
История докомпьютерной эпохи
ЧАРЛЗ БЭББИДЖ
371
Компьютер
372
История докомпьютерной эпохи
373
Компьютер
МАШИНЫ БЭББИДЖА
y = x2 + 3x – 4. ∆21 = Y2 – Y1 = 6 – 0 = 6.
374
История докомпьютерной эпохи
375
Компьютер
АНАЛИТИЧЕСКАЯ МАШИНА
Разностная машина Бэббиджа, в от- После испытаний 1833 г. Бэббидж за-
личие от всех предыдущих разрабо- думал создать принципиально новую
ток, могла наряду с одним заранее за- машину, способную выполнять раз-
данным действием (вычисление личные действия в соответствии
полиномов по методу конечных раз- с предварительно составленным пла-
ностей) вычислять значения некото- ном работ — программой. Первые
рых функций с помощью специаль- чертежи появились в 1834 г., машину
но подобранных формул. назвали аналитической.
Постройка разностной машины Бэббидж решил слегка изменить
представляла большую проблему: тре- конструкцию разностной машины:
бовалось разрабатывать не только но- расположить оси по окружности так,
вые конструкции и узлы, но и неред- чтобы колонка результата располага-
ко инструменты для их изготовления; лась рядом с колонкой последней раз-
точность обработки металла была ности и легко связывалась с ней. Это
очень приближённой, да и рабочих позволило бы управлять процессом
нужной квалификации не хватало. вычислений, воздействуя на порядок
В 1822 г. Бэббидж опубликовал расчёта. Вскоре учёный сформулиро-
статью «Заметки о применении вал идею независимого устройства
машин в вычислениях астрономиче- управления вычислениями, с помо-
ских и математических таблиц» щью которого можно было произво-
с описанием машины для вычисле- дить все арифметические действия.
ния и печати таблиц математических Аналитическая машина задумыва-
функций и в том же году продемон- лась как чисто механическое устрой-
стрировал работающую модель. Она ство, однако учёный хотел выполнять
содержала три пятиразрядных реги- расчёты не вручную, а с применени-
стра, т. е. предназначалась для вычис- ем внешнего источника энергии, в ча-
ления полиномов второй степени. стности парового двигателя.
На этой машине Бэббидж рассчитал
таблицу квадратов. Автор был полон
Аналитическая энтузиазма: Лондонское королевское
машина Чарлза
Бэббиджа. общество высоко оценило его изо-
бретение.
В 1823 г. Бэббидж, получив финан-
совую поддержку британского пра-
вительства, начал постройку насто-
ящей разностной машины. Он
считал, что на её создание уйдёт три
года. Но машину не удалось постро-
ить и через десять лет. Бюджет был
превышен в пять раз.
В 1833 г. испытания построенной
части машины убедили автора в пра-
вильности расчётов: машина выпол-
376
История докомпьютерной эпохи
377
Компьютер
378
История докомпьютерной эпохи
ГЕРМАН ХОЛЛЕРИТ
379
Компьютер
5 июня 1895 г. император Николай II утвердил Поло- Перепись состоялась в назначенный срок. Её про-
жение о первой всеобщей переписи населения, в водили сотни тысяч счётчиков: переписные листы
котором говорилось, что перепись «есть дело для России заполняли местные чиновники, служащие, интелли-
совершенно новое, никогда в ней до сих пор небывалое. генция. Например, участком по проведению переписи
Перепись эта будет состоять в том, что будут пере- в Мелихове заведовал А. П. Чехов. Он в шутку называл
считаны поодиночке все жители государства для того, себя «ротным командиром» и «боцманом» местных
чтобы Правительство могло знать верные числа и счёт счётчиков.
населения как во всём государстве, так и в каждом уезде, «Выдали счётчикам отвратительные чернильницы,
в каждой волости, селении и усадьбе». отвратительные аляповатые знаки, похожие на ярлыки
Перепись была назначена на 9 февраля 1897 г. Пла- пивного завода, и портфели, в которые не лезут
нировалось собрать сведения о каждом жителе страны переписные листы, — и впечатление такое, будто сабля
по следующим признакам: имя, семейное положение, не лезет в ножны. Срам. С утра хожу по избам, с
отношение к главе хозяйства, пол, возраст, сословие, непривычки стукаюсь головой о притолоки, и, как
вероисповедание, место рождения, место жительства, нарочно, голова трещит адски…» — писал Антон
родной язык, грамотность, занятие, физические изъяны. Павлович 11 января. «Замучила перепись», — жалуется
В августе 1895 г. на сессии он 30 января. А 8 февраля с
Международного статистиче- облегчением подводит итог:
ского института в Берне (Швейца- «Перепись кончилась. Это дело
рия) директор Центрального ста- изрядно надоело мне, так как
тистического комитета (ЦСК) приходилось и считать, и писать
Н. А. Тройницкий познакомился до боли в пальцах, и читать лекции
с американским инженером Гер- 15 счётчикам. Счётчики работали
маном Холлеритом, чей доклад превосходно, педантично до
был посвящён использованию смешного. Зато земские на-
счётных машин при проведении чальники, которым вверена была
переписи. Заинтересованность в перепись в уездах, вели себя
сотрудничестве оказалась обоюд- отвратительно. Они ничего не
ной. Холлерит надеялся на рас- делали, мало понимали и в самые
ширение рынка сбыта своих ма- тяжёлые минуты сказывались
шин, а Тройницкий прекрасно больными».
понимал, что вручную обработать Но для ЦСК тяжёлые времена
данные переписи невозможно. были ещё впереди. Заполненные
В начале ноября 1896 г. Хол- переписные листы свозили для
лерит получил от российского обработки в столицу. Работа была
правительства приглашение участ- поставлена из рук вон плохо,
вовать в переписи и уже 15 де- многие сотрудники просто не зна-
кабря прибыл в Санкт-Петербург. ли, что и как они должны делать…
Договориться об условиях кон- Работа двигалась настолько мед-
тракта удалось очень быстро. ленно, что летом 1897 г. Холлерита
Согласно ему, фирма Холлерита вновь вызвали в Россию. И хотя
предоставляла России в аренду 35 его консультации несколько
старых машин, уже использовавшихся в других странах. поправили положение, в январе 1902 г. план обработки
Машины необходимо было вернуть к апрелю 1900 г., всё же пришлось значительно сократить. Подсчёты
до начала очередной переписи в США. Кроме того, продолжались почти восемь лет — общий свод
Россия закупала 70 новых табуляторов в комплекте с результатов переписи по империи был опубликован
сортировочными машинами, а также 500 перфораторов. лишь в конце 1905 г.
Сборку техники под руководством самого Холлерита В истории первая всероссийская перепись на-
решили производить в Петербурге. Здесь же в целях селения осталась примером того, как не надо ор-
экономии по его чертежам изготовляли отдельные узлы ганизовывать дело. А последний свидетель тех
и детали. Гонорар Германа Холлерита составил событий, единственный сохранившийся табулятор
67 571 доллар, из них 59 500 долларов причиталось за Германа Холлерита, с 1952 г. находится в собрании
новые машины. Политехнического музея в Москве.
380
История докомпьютерной эпохи
381
Компьютер
Томас Уотсон.
АВТОМАТИЗАЦИЯ И ПЕРФОКАРТЫ
382
История докомпьютерной эпохи
Перфокарта
70-х гг. XX в.
(написанный от руки
номер помогал не
перепутать карту в
колоде).
383
Компьютер
1 — ножи;
2 — рамная доска;
3 — рамные шнуры;
4 — аркатные шнуры;
5 — делительная доска;
6 — лицы;
7 — грузики;
8 — иглы;
9 — перфорированная призма;
10 — пружина;
11 — доска;
12 — крючки
«НАУЧНЫЕ» КАЛЬКУЛЯТОРЫ
КОНРАД ЦУЗЕ
Конрад Цузе родился 22 июня 1910 г. спустя несколько лет). Только в одном
в Берлине. В 1935 г. получил диплом отношении идеи Цузе уступали иде-
инженера-строителя, специалиста по ям его гениального предшественника:
прочности в Техническом универси- он не предусмотрел команды услов-
тете в Берлине. Работу над созданием ного перехода.
вычислительных устройств Цузе на- Цузе понял также, что вычисле-
чал ещё будучи студентом, в 1934 г. Так ние — универсальное понятие, что
что его без преувеличения можно на- это просто преобразование данных,
звать пионером современной вычис- которые можно представить в виде
лительной техники на европейском комбинации двоичных разрядов
континенте. (сейчас мы называем их битами, а
Цузе отличался аналитическим, на- сам Цузе использовал выражение
учным складом мышления. Для про- «состояние да/нет»). Теории нужда-
ведения сложных инженерных рас- лись в проверке практикой, и Цузе
чётов он хотел создать более мощный, начал с создания устройства памяти.
чем существующие, вычислитель. Об- Со времён Паскаля числа в вычи-
думывая проблему вычислений, Цузе слителях представлялись набором
вскоре пришёл к нескольким выво- дисков с нанесёнными на обод
дам. Во-первых, вычислитель должен десятью цифрами. Выбор двоичной
управляться с помощью программ, системы позволял использовать
причём предпочтительно использо- другие элементы, например реле,
вать двоичную систему счисления принимающие только два положе-
и арифметику с плавающей запятой. ния: «открыто» и «закрыто». Однако
Во-вторых, необходимо иметь полно- сначала Цузе всё-таки остановился
стью автоматическое арифметичес- на механическом решении. Скон-
кое устройство, память большого объ- струированная им память состояла
ёма и элементы с двумя устойчивыми из набора металлических пластин,
состояниями. Таким образом, Цузе способных перемещаться в опреде-
фактически воспроизвёл основные лённом направлении. Значения обра-
идеи аналитической машины Чарлза батываемых величин и выполняемая
Лампа Эдисона. Бэббиджа (о которой он узнает лишь операция задавались смещением пла-
386
История докомпьютерной эпохи
387
Компьютер
Одна из подпрограмм
игры в шахматы,
написанная К. Цузе
на языке Plankalkul.
388
История докомпьютерной эпохи
389
Компьютер
АНАЛОГОВЫЕ МАШИНЫ
390
История докомпьютерной эпохи
391
Компьютер
392
История докомпьютерной эпохи
Стандартный блок
усилителя
постоянного тока,
вставляемый
в аналоговую машину.
393
ЭВОЛЮЦИЯ КОМПЬЮТЕРА
В ХХ ВЕКЕ
ПЕРВОЕ ПОКОЛЕНИЕ КОМПЬЮТЕРОВ
394
Эволюция компьютера в XX веке
Электромеханическая
вычислительная
машина Mark I.
395
Компьютер
396
Эволюция компьютера в XX веке
397
Компьютер
398
Эволюция компьютера в XX веке
399
Компьютер
400
Эволюция компьютера в XX веке
401
Компьютер
Магнитный (ферритовый) сердечник представлял собой дечников, пропустив провода через каждый вертикаль-
кольцо небольшого диаметра. Он легко намагничивался ный и горизонтальный ряды, и пустить по ним ток силой
и долго сохранял такое состояние. Сердечники нанизы- в половину нормы (0,25 А), то можно изменить намагни-
вались на провод наподобие бус. Постоянный ток (око- ченность только одного сердечника (0,25 + 0,25 = 0,5),
ло 0,5 А) мог изменить намагниченность сердечника, ес- находящегося на пересечении горизонтальной и верти-
ли был пропущен через провод в одном направлении, кальной линий. Остальные не будут реагировать, так как
или оставлял её без изменений, если имел противопо- ток меньше 0,5 А.Чтобы определить значение сердеч-
ложное направление (намагниченность в одном направ- ника, его переводят всостояние 0 (намагниченность од-
лении — 0, в другом — 1). Если составить матрицу сер- ного направления). Если он уже в этом состоянии, то ни-
чего не произойдёт. Переход в другое
состояние вызовет возникновение тока в
дополнительном проводе, проходящем
через все сердечники на матрице (провод
считывания).
Магнитные барабаны имели тонкий
слой (около 0,025 мм) магнитного мате-
риала по поверхности немагнитного бара-
бана. Двоичные цифры записываются на
вращающийся с постоянной угловой ско-
ростью барабан путём намагничивания ма-
леньких участков, когда те проходят ми-
мо головки записи-чтения. Записанное
число может быть считано через один обо-
рот барабана. На вращающемся со скоро-
стью 6000 оборотов в минуту магнитном
барабане диаметром 15 см и длиной 30 см
Накопительная матрица Увеличенный фрагмент матрицы при плотности записи 60 цифр на 1 см2
на магнитных сердечниках. ферритовых сердечников. можно записать около 4 кбайт.
402
Эволюция компьютера в XX веке
403
Компьютер
404
Эволюция компьютера в XX веке
405
Компьютер
БОЛЬШИЕ СИСТЕМЫ
На ранних стадиях все программы работали авто- личия специальной программы-монитора, постоян-
номно и компьютер надо было останавливать для но находящейся в памяти компьютера, которая
ручной перенастройки на каждую новую программу. управляла потоком заданий. Управление велось в ре-
В машинах второго поколения появилась возмож- жиме мультипрограммирования: процессор времен-
ность подготовки пакета заданий-программ, пред- но приостанавливал выполнение текущей программы,
варительно сохранив их, например, на магнитной начинал следующую и позже возобновлял прерван-
ленте и затем обработав на компьютере. Результат ную программу. Это повышало эффективность ра-
при этом записывался на другую магнитную ленту. боты компьютера, особенно если текущая задача
Такой метод получил название пакетного метода об- ожидала завершения ввода-вывода и её решение вре-
работки. Для подготовки ленты с заданиями стали менно прерывалось, а центральный процессор без-
пользоваться вспомогательным «небольшим» ком- действовал. Мультипрограммирование получило раз-
пьютером. Пакетный метод обработки требовал на- витие в компьютерах последующих поколений.
406
Эволюция компьютера в XX веке
407
Компьютер
Интегральные схемы:
микропроцессор
(слева), ПЗУ (справа).
408
Эволюция компьютера в XX веке
IBM SYSTEM/360
Третье поколение компьютеров впе-
чатляет многообразием моделей и
количеством фирм-производителей.
В числе наиболее известных пред-
ставителей третьего поколения — ряд
компьютеров производства IBM—
модели 360 (англ. System/360). Это
семейство пыталось охватить широ-
кий спектр приложений вычисли-
тельной техники. Различные модели
были в значительной степени совме-
стимы, и можно уже говорить о мо-
бильности программного обеспече-
ния. То есть программа, написанная
для одной модели ряда 360, должна
была работать (практически без из-
менений) на любой другой модели
этого ряда. Отличалось, конечно, вре- полнении инструкции, является сум- IBM 360.
мя выполнения, и могли возникнуть мой базового регистра и 12-битного
некоторые сложности из-за нехват- адреса (смещения), указанного в ко-
ки места в памяти. манде. При этом инструкция имеет
Весь ряд IBM 360 оказал достаточ- длину уже 32 бита.
но сильное влияние на стандарты про- У IBM 360 было 16 32-битных ре-
изводимых компьютеров. гистров (общего назначения), ис-
Простейшие инструкции процес- пользуемых в качестве сумматоров
соров IBM 360 состояли из одного по- индексных и базовых регистров, и
луслова, т. е. из 16 бит: 4 регистра с плавающей запятой, каж-
дый размером в двойное слово.
Несмотря на то что IBM 360 от-
Команда Адрес 1 Адрес 2 носились к компьютерам третьего
8 бит 4 бит 4 бит поколения, в них, как правило, ис-
пользовалась память на «старых и
добрых» ферритовых сердечниках.
Здесь адрес 1 и адрес 2 — адреса- Сердечники были небольших разме-
имена регистров процессора. Инст- ров: внутренний диаметр — 0,48 мм
рукция IBM 360, в отличие от IBM 7094, и внешний — 0,76 мм. Компания IBM
двухадресная. выпускала матрицы размером 8192
Адреса в памяти задавались слож- и 284 912 сердечников.
нее. Поскольку можно адресовать лю- Хотя с 1960 г. IBM поставила поль-
бой из 16,7 млн байт, адрес 24-битный зователям тысячи транзисторных
(224=16 777 216), хотя обычно память компьютеров, окончательную побе-
IBM 360 из-за дороговизны не превы- ду фирма смогла праздновать лишь с
шала 32 кбайт. Таким образом, для ад- появлением ряда 360. Теперь можно
ресации требовалось только 16 бит было адресовать 32-битное слово па-
(216 = 65 536). В целях экономии па- мяти, начиная с любого байта.
мяти при этом использовали так на- В новых машинах IBM впервые ис-
зываемый базовый регистр. пользовала микропрограммирова-
ние при конструирова-
нии своих процессоров.
Команда Адрес1 Индекс Базовый Смещение Благодаря этому удалось
8 бит 4 бит 4 бит 4 бит 12 бит создать шесть моделей ря-
да 360, каждая из которых
могла использовать ту же
В простейшем случае исполнитель- периферию (внешние устройства) и
ный адрес, т. е. участвующий в вы- то же программное обеспечение.
409
Компьютер
МИНИ-КОМПЬЮТЕРЫ
410
Эволюция компьютера в XX веке
PDP-11
Наибольшую популярность получи-
ла серия ЭВМ PDP-11, выпущенная в
70-х гг. Машинное слово этих ком-
пьютеров было длиной 16 бит.
Процессор имел 8 одинаковых 16-
битных регистров общего назначения.
Правда, на два последних регистра воз-
вать многоцелевые «тяжёлые» ком- лагали дополнительные функции: ре-
пьютеры. По скорости мини-компью- гистр R7 являлся счётчиком команд, а
теры были сопоставимы с большими R6 — указателем стека. Стек — это ме-
компьютерами второго поколения и сто в памяти компьютера, которое ис-
превосходили лучшие показатели ма- пользуется для временного хранения
шин первого поколения. Одним из содержимого регистров и для хране-
представителей мини-компьютеров ния адреса возврата из подпрограм-
являлась машина PDP-1 (англ. Pro- мы (нужно запомнить, куда вернуть-
grammed Data Processor) фирмы DEC. ся). Вызов подпрограммы обычно
PDP-1 могла управлять многими происходит по инструкции JSR R7
внешними устройствами. Установка (англ. Jump to SubRoutine — «переход
машины не требовала ни специаль- к подпрограмме»), а возврат— по RTS
ного перепроектирования системы R7 (англ. ReTurn from Subroutine —
энергоснабжения (в США те же 110 «возврат из подпрограммы»). Адреса
вольт), ни другой системы кондици- в программе восьмеричные, по стан-
онирования, ни усиления пола: ком- дарту PDP-11.
пьютер занимал всего около 2 м 2 и Стрелка указывает на текущую ис-
состоял из 4 блоков весом в несколь- полняемую инструкцию (до выполне-
ко десятков килограммов. ния входа в подпрограмму).
Центральный процессор выпол-
нял арифметические операции, осу-
ществлял адресацию, управление и до-
ступ кпамяти. Машинное слово было
длиной 18 бит.
Команды сложения и вычитания
выполнялись за 10 мкс, команда ум-
ножения — примерно за 20 мкс. Ско-
рость выполнения достигала 100 тыс.
команд сложения в секунду. Инструк-
ции процессора были простыми —
одноадресными. Дисковод сменного
магнитного диска
Основная память машины — на PDP-11 объёмом
магнитных сердечниках, стандартно 2,5 Мбайт.
411
Компьютер
ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ
412
Эволюция компьютера в XX веке
413
Компьютер
СУПЕРКОМПЬЮТЕРЫ
Корпорация CDC (англ. Control Data
Corporation), США, производитель
конвейерных систем, начала проек-
тирование компьютеров в 1960 г.
В 1964 г. она выпустила модель под на-
званием CDC 6600, спустя 5 лет появи-
414
Эволюция компьютера в XX веке
лась более мощная модель CDC 7600. лялась американская фирма Cray
Позднее ряд этих машин продолжи- Research. Её основал в 1972 г. бывший
ли модели CYBER. Для ЭВМ фирмы главный конструктор CDC 6600 и 7600
CDC было характерно наличие не- Сеймур Крей. В 1976 г. фирма уста-
скольких процессоров ввода-вывода новила в Лос-Аламосской научной
(называемых периферийными про- лаборатории при Калифорнийском
цессорами), каждый из которых об- университете первый образец своей
ладал автономией от центрального машины CRAY I. Средняя произво-
процессора. Если канал обычно имел дительность её составляла 80 млн
память всего в несколько слов и не- операций в секунду, при полном за-
большой специфический набор ин- действовании всех вычислительных
струкций, то периферийный процес- ресурсов — 138 млн операций с пла-
сор с обширной памятью и развитой вающей запятой в секунду, а в корот-
системой команд представлял собой кие промежутки времени — 250 млн.
универсальную ЭВМ. Работа канала Такая высокая производительность
инициировалась и контролировалась достигнута благодаря использованию
центральным процессором, а на пе- нескольких конвейеров. Система мог-
риферийный процессор не мог ока- ла выполнять операции с векторами
зывать влияния. Десять периферий- (процессор имел векторные регист-
ных процессоров CDC 6600 обладали ры), причём функциональные устрой-
памятью по 4096 12-разрядных слов. ства процессора обеспечивали одно-
Центральный процессор компью- временное выполнение векторных и
теров CDC, в свою очередь, состоял из обычных (скалярных) операций. Про-
множества элементов — процессоров, цессор содержал 8 64-битных регис-
которые могли работать параллельно, тров для выполнения арифметиче-
независимо друг от друга. В процессор ских операций, 64 64-битных регистра
CDC 6600 входило десять функцио- для хранения промежуточных резуль-
нальных устройств: одно для сложе- татов и 8 64-элементных векторных
ния чисел с фиксированной запятой, регистров (каждый элемент вектора —
другое для сложения с плавающей это 64-разрядное слово). Роберт Нойс.
запятой, два устройства умножения,
устройство деления, устройство для
выполнения логических операций
Быстродействие CRAY I — заслуга его небольших размеров (высота
и т. п. Средняя производительность
не более 2 м, диаметр около 2,5 м). Такие габариты позволили
CDC 6600 около 4 млн операций в се-
связать компоненты суперЭВМ «короткими» линиями (проводами),
кунду, а CDC 7600 около 15 млн. (Для
что сократило задержки при передаче информации между
суперЭВМ производительность изме-
компьютерными блоками. Однако компактность ЭВМ потребовала
ряется количеством операций в секун-
наличия системы жидкостного охлаждения, похожей на систему
ду над числами с плавающей запятой.)
охлаждения двигателя автомобиля.
Одним из мировых лидеров в
производстве суперкомпьютеров яв-
415
Компьютер
416
Эволюция компьютера в XX веке
417
Компьютер
418
Эволюция компьютера в XX веке
419
Компьютер
ОТЕЧЕСТВЕННЫЕ ЭВМ
420
Эволюция компьютера в XX веке
421
Компьютер
422
Эволюция компьютера в XX веке
Машина «Урал-1»
(слева).
«Минск-22» (справа).
423
СОВРЕМЕННЫЙ КОМПЬЮТЕР
ЧЕТВЁРТОЕ ПОКОЛЕНИЕ КОМПЬЮТЕРОВ
424
Современный компьютер
425
Компьютер
Z-80
В апреле 1974 г. фирма Intel выпусти-
ла 8-битный микропроцессор Intel
8080, превосходивший по всем пока-
зателям предыдущие процессоры. Но
настоящую нетленную славу снискал
себе микропроцессор Z-80, который
разработала и произвела небольшая,
по сравнению с Intel фирма Zilоg.
Он был полностью совместим с Intel
8080, т. е. умел всё, что Intel 8080, но и
ещё многое… С этих пор фирма Intel
перешла к разработке 16-битных, а
затем 32- и 64-битных процессоров,
426
Современный компьютер
«КИСКИ» И «РИСКИ»
Большинство микропроцессоров
относится к стандарту архитектуры
CISC (англ. Complex Instruction Set
Computer) с полным набором ко-
манд. Её прародителем принято счи-
тать IBM.
Фирма Intel — лидер в разработке
CISC-микропроцессоров — знамени-
та своими сериями x 86 и Pentium.
Для CISC-процессоров характерно
небольшое число регистров, но при
этом количество команд, методов
адресации с большим уровнем кос-
венности, форматов команд остаётся
большим.
Данная архитектура является стан-
дартом для микрокомпьютеров.
427
Компьютер
428
Современный компьютер
429
Компьютер
430
Современный компьютер
431
Компьютер
432
Современный компьютер
ПРОИЗВОДСТВО МИКРОПРОЦЕССОРОВ
433
Компьютер
434
Современный компьютер
435
Компьютер
436
Современный компьютер
437
Компьютер
ПУЗЫРЬКОВАЯ ПАМЯТЬ
К одной из этих неудач относят так
называемую пузырьковую память
(англ. bubble memory), разработанную
в Bell Labs (США) в 1966 г. Устройство
запоминало данные в виде магнит-
ных доменов на тонком магнитном
материале, например таком, как фер-
рогранат.
Если пластину предварительно
намагнитить, а затем приложить к
ней определённого уровня магнит-
ное поле в направлении намагничен-
Так выглядят домены ности, то домены из кривых линий
пузырьковой памяти. примут форму пузырьков, отсюда и
438
Современный компьютер
439
Компьютер
440
Современный компьютер
441
Компьютер
же воспроизводить на компьютере
аудиокомпакт-диск. Компакт-диск
CD был разработан фирмой Philips для записи музыки. Пол-
изготовляется из прозрачного поли-
ная ёмкость диска — около 650 Мбайт, а длительность проиг-
мера (например, поликарбоната) диа-
рывания — 74 мин. Для 16-битного кодирования с частотой
метром 120 мм и толщиной 1,2 мм.
44 100 Гц стерео требовалась скорость около 170 кбайт/с.
CD ROM хранит данные в форме
микроскопических углублений на
отражающей поверхности, обозна-
чающих двоичные нули и едини-
цы, расположенные на спиральной
Внутреннее устройство дорожке с шагом в 1,6 мкм. Длина
CD ROM. углубления — 0,13 мкм, ширина —
0,5—0,8 мкм, а минимальная длина
углубления вдоль канавки — 0,834 мм.
Скорость передачи данных составля-
ет несколько мегабайтов в секунду и
CD ROM
более, а среднее время доступа —
десятки миллисекунд.
Лазерный луч Достоинства CD ROM заключаются
Отражённый в приемлемой стоимости (меньше
луч проходит 1 доллара США) и большом объёме
через призму… записанной информации (600—
…и преобразуется в электрический сигнал. 700 Мбайт). Практически всё совре-
менное программное обеспечение
Оптические диски получили рас- распространяется на CD. На них за-
пространение вслед за бытовыми писывают большие мультимедийные
оптическими аудиокомпакт-диска- обучающие энциклопедии, игры,
ми (лазерными дисками, или CD). видеофильмы и т. п.
Устройство, умеющее читать CD на На дисках CD RW (англ. ReWritable)
компьютере, называется CD ROM. можно многократно повторять про-
Оно очень похоже на проигрыватель цесс стирания и записи. Их отличает
компакт-дисков и механически ана- ёмкость в 700 Мбайт и более высокая
логично устройству дисковода для надёжность хранения.
гибких дисков, однако в нём един- Многие персональные компью-
ственная спиральная дорожка с теры, выпущенные в XXI в., уже не
информацией (как на виниловой имеют дисковода для дискет. Магни-
пластинке), а при чтении использу- тооптические диски, магнитные съём-
ется инфракрасный лазер с длиной ные карты, DVD ROM, flash-память на
волны 780 нм. CD ROM позволяет так- карточках (ёмкость в сотни мега-
Flash-карты памяти
(слева);
дискеты 8; 5
и 3 дюйма (справа).
442
Современный компьютер
ВОЙНА СТАНДАРТОВ
В середине 80-х гг. один из специа-
листов фирмы JVC заметил, что если
частота выхода новых стандартов
VHS-кассет будет нарастать с той же
скоростью, то к 2005 г. стандарты ста-
нут выпускать каждые пять минут. Од-
нако кассеты, записанные на самом
современном видеомагнитофоне
стандарта VHS, могут быть просмо-
трены на старом видеомагнитофоне,
не поддерживающем и доброй поло-
вины новомодных функций. Челове-
ку надо бояться только того, что VHS-
кассеты заменит какое-нибудь новое санные диски подчас воспроизводи- Винчестер
оборудование, например DVD — циф- лись на DVD-проигрывателях. Третий, со снятой крышкой.
ровой многофункциональный диск. но не последний, вариант предлагала
Нечто подобное происходило до технология DVD-RW, разработанная
XX в. с компьютерами. Пользователь фирмой Pioneer. В записывающих
должен был позаботиться о своевре- устройствах можно использовать
менном переносе информации со ста- диски с однократной записью, кото-
рых носителей на новые, например рые легко воспроизводить практиче-
с 5-дюймовых дискет на 3-дюймовые, ски на любом DVD-плеере фирмы
с 3-дюймовых — на CD ROM и т. д. Pioner и часто на DVD-проигрывате-
Однако всё изменилось с появле- лях других фирм.
нием DVD — носителей информа- Как же разобраться пользователю
ции, имеющих те же размеры, что и в таком многообразии стандартов,
CD ROM, но обладающие в зависимо-
сти от формата поистине гигантской
ёмкостью (от 4,7 до 17 Гбайт). В DVD
для достижения высокой плотности КЭШ НАМ ПОМОЖЕТ
записи применяется красный лазер с
длиной волны 635—650 нм, мини- Быстрее всего процессор записывает или читает данные из сво-
мальная длина углубления составля- ей сверхбыстрой памяти (регистров). Далее, в порядке убыва-
ет всего 0,4 мкм, а дорожка имеет шаг ния скорости доступа, идут основная память и внешняя память.
0,74 мкм. DVD бывают двухслойные и Если бы вся память была сверхбыстрой, то значительно повы-
двухсторонние. силась бы производительность компьютера. Но реализовать
В технологии DVD есть одно явно это очень дорого. На помощь приходит кэш-память — быстрая
уязвимое место — различные, как пра- по сравнению с оперативной память небольшого объёма.
вило несовместимые между собой Когда процессор записывает в основную память байт, то он
стандарты приводов и дисков DVD. и его адрес в основной памяти одновременно заносятся и в
С начала 1999 г. фирмы Hitachi, To- кэш-память. Всякий раз, когда процессор намерен прочитать
shiba и Panasonic выпускали так назы- некоторый байт, сначала проводится анализ: есть ли байт с
ваемый записываемый DVD-ROM, этим адресом в быстрой кэш-памяти? Если есть, то происходит
плохо совместимый с обычными, чтение из кэш-памяти. Если нет, то байт копируется из основ-
компьютерными DVD-ROM-приво- ной в кэш-память и одновременно передаётся процессору.
дами и бытовыми проигрывателями В результате в каждый момент времени наиболее часто ис-
DVD-дисков. Формат однократно и пользуемая часть основной памяти уже оказывается скопиро-
многократно записываемых дисков ванной в кэш-память и становится быстродоступной. Принцип
DVD+RW поддерживали Hewlett- кэш-памяти используется в винчестере, CD ROM и др.
Packard, Ricoh, Philips и Yamaha. Запи-
443
Компьютер
что выбрать? Может, стоит подождать, вив диск в DVD-плеер или компьютер,
когда один из них всё-таки станет ещё можно обнаружить, что кино не
В 1976 г. компания лидером? А пока, придя домой и вста- показывается, а диск не читается.
JVC (Victor Company
of Japan) разработала
формат видеозаписи
VHS (Video Home Sys- «БЛЕСК И НИЩЕТА» IBM
tem) и кассеты VHS.
В 1978 г. был выпу-
щен первый порта- ГОЛУБОЙ ГИГАНТ сор Intel 8088 (8-битную версию про-
тивный VHS-видео- цессора Intel 8086), память объёмом
магнитофон. ПРИХОДИТ НА РЫНОК 64 кбайт, дисковод (или даже два) для
гибких дисков ёмкостью 160 кбайт.
В начале 80-х гг. XX в. всё громче заяв- В ПЗУ компьютера размещался интер-
ляла о себе новая отрасль компьюте- претатор — язык BASIC. Одновремен-
ростроения — персональные ЭВМ. но были выпущены программные и
В 1981 г. сбыт составил около 700 тыс. технические спецификации, которые
персональных ЭВМ, планы на сле- позволили разработчикам других
дующий год прогнозировали увели- фирм создавать платы для расшире-
чение продаж как минимум в два раза. ния функций компьютера.
Эту часть бизнеса не упустила и круп- В том же году число проданных
нейшая электронная корпорация машин IBM PC составило 4 % от обще-
США IBM, лидер в производстве боль- го объёма сбыта. Лидерами на рынке
ших ЭВМ. персональных ЭВМ являлись:
12 августа 1981 г. IBM представила • Radio Shack — 26 %;
свой первый персональный компью- • Apple — 25 %;
тер, названный IBM PC (Personal • Commodore — 10 %;
Computer). Он использовал процес- • Nippon Еlectric —5 %.
В 1983 г. IBM произвела новую
модель — PC XT (eXtended Technology).
Машина уже была оснащена винчесте-
ром ёмкостью 10 Мбайт, тремя разъ-
ёмами под дополнительные платы
(слоты расширения). Оперативная
память занимала 128 кбайт, но могла
расширяться до 640 кбайт. На дискеты
записывалось 360 кбайт информации.
В качестве операционной системы
использовалась диалоговая система
MS DOS компании Microsoft.
Компьютеры IBM по сравнению с
машинами фирмы Apple проигрыва-
ли по всем показателям. Liza рядом
с IBM PC выглядел как гостья из
будущего. А выпущенный Macintosh,
использующий 32-битный процессор
Motorola 68000 с тактовой частотой
8 МГц, оснащённый оконной опера-
ционной системой, затмил IBM.
К основным причинам, которые
помогли IBM в борьбе за рынок пер-
сональных компьютеров, можно от-
нести колоссальные финансовые
ресурсы корпорации, позволяющие
производить заведомо проигрышный
Компьютер Mainframe компьютер в течение долгого време-
IBM. 80-е гг. XX в. ни, и открытость архитектуры IBM PC.
444
Современный компьютер
445
Компьютер
Схема
персонального
компьютера.
446
Современный компьютер
447
Компьютер
448
Современный компьютер
449
Компьютер
450
Современный компьютер
451
Компьютер
Основатель и председатель совета директоров корпора- го директора Microsoft. 26 апреля 1996 г. у Гейтсов роди-
ции Microsoft, ведущего мирового производителя про- лась дочь Дженнифер Кэтрин Гейтс. В сентябре 1997 г. на
граммного обеспечения для персональных компьютеров, берегу озера Вашингтон Билл Гейтс построил для своей семьи
Билл Гейтс родился 28 октября 1955 г. в Сиэтле. В семье полностью компьютеризованный дом. 23 мая 1999 г. в семье
он был третьим ребёнком. Его полное имя — Уильям Ген- Гейтсов появился сын Роури Джон Гейтс.
ри Гейтс III. (Билл Гейтс I — дед, владелец мебельного мага- В 1995 г. Гейтс вместе с Натаном Мирволдом, в то вре-
зина, Уильям Гейтс II — отец, адвокат.) Его мать, Мэри Гейтс мя вице-президентом Microsoft, и журналистом Питером
(урождённая Максвелл), была школьной учительницей, чле- Райнарсоном написал книгу «Дорога в будущее», опубли-
ном правления в университете штата Вашингтон и пред- кованную издательством Viking в США и 18 недель нахо-
седателем благотворительной организации United Way дившуюся в списке бестселлеров. Вторая книга — «Бизнес
International, а дед со стороны матери являлся основате- со скоростью мысли», изданная в 1999 г., — была написа-
лем банка National City. на в соавторстве с Коллинз Хемингуэй и впоследствии
Билл Гейтс начал своё образование в муниципальной издана на 25 языках. Прибыль от обеих публикаций Билл
школе, продолжив его в элитарной частной школе Lakeside Гейтс пожертвовал в благотворительный фонд, который
School. Там с 13 лет он увлёкся программированием. осуществляет поддержку учителей мира, использующих
В 1973 г. Билл Гейтс поступил на первый курс Гарвард- компьютерные технологии в учебном процессе.
ского университета, где разработал язык программирова- Microsoft постоянно разрабатывает и совершенствует
ния BASIC для первого компьютера — Altair 8800. Но Гар- информационные продукты и технологии. Её успех — стре-
вард Билл так и не закончил. Он покинул стены учебного мление сделать работу с компьютером более простой и удоб-
заведения на третьем году обучения, решив полностью ной. Компания расходует огромные средства на научно-
посвятить себя компании по разработке программного исследовательские работы.
обеспечения для персональных компьютеров Microsoft, Однако идея использования оконных систем принадле-
которую основал вместе с Полом Алленом в 1975 г., пред- жит не Биллу Гейтсу или кому-либо из компании Microsoft.
видя развитие РС. Её уже внедрял Стив Джобс, тот самый, который вместе со
По ошибке Биллу Гейтсу приписывается авторство опе- Стивом Возняком создал первый персональный компьютер.
рационной системы DOS, но на деле это не что иное, как Компьютеры Apple — Lisa и Mac уже были на рынке и пре-
удачное вложение денег. Придумал DOS Тим Патерсон, восходили IBM оконными системами. Игровой компьютер
который в то время в Microsoft даже не работал. Аtari в конце 80-х гг. оказался на порядок лучше IВМ АТ —
В 1981 г. Гейтс и Аллен, выполнявшие работу для IBM, купи- по возможностям оконной операционной системы и по
ли за не слишком крупную сумму у Патерсона из Seattle 32-битному процессору Моtorola. Тогда в 1985 г. Гейтс
Compute Products созданную им QDOS (Quick Disk Operating выпустил Windows. Первые версии (вплоть до 3.0) были
System — «быстрая дисковая операционная система») для почти неработоспособны. Требовалось вводить не только
16-разрядных процессоров Intel. Конечно, операционная оконный интерфейс, но и многозадачность — возможность
система требовала доработки, но это не изготовление с выполнять сразу несколько программ. В надстройке над
нуля абсолютно новой ОС. Учтя все требования со сторо- MS DOS Windows 3.0 это уже удавалось сделать. Откры-
ны IBM, компаньоны переделали её для 8-разрядных про- валось сразу несколько окон и оставалось лишь переклю-
цессоров, которыми оснащались IBM PC. Неизвестная тог- чаться между задачами. Такой механизм был встроен в
да компания Microsoft смогла заключить с IBM контракт на DOS, только не MS (фирмы Microsoft), а DR DOS (фирмы
поставку новой операционной системы. IBM оплатила её Digital Reserch — успешного разработчика ОС для 8-бит-
производство и обязалась продавать компьютеры только ных ЭВМ (СР/М); DR DOS получился весьма удачным изде-
с версией PC DOS (MS DOS). Microsoft получала проценты лием. И дни MS DOS были бы сочтены, если бы не умение
с каждой проданной машины. Теперь данная сделка изуча- Билла Гейтса бороться с конкурентами. Дело в том, что
ется молодыми менеджерами как классическая — ведь сто- Windows работала исключительно в MS DOS, а c другими
ило продать право на поставку за некоторую круглую сум- операционными системами была несовместима.
му, и не был бы сейчас Билл Гейтс мультимиллиардером. В 1997 г. Билл Гейтс претворил в жизнь свою идею —
1 января 1994 г. Билл Гейтс женился на Мелинде Френч, кредитование 150 млн долларов главному конкуренту —
работавшей в Microsoft. Свадьба проходила на Гавайях, на компании Аррlе, которую предварительно он поставил
острове Ланаи. Чтобы избежать появления журналистов, перед угрозой банкротства и ликвидации. Что принесла
были оплачены все гостиничные номера и зарезервирова- эта сделка Биллу Гейтсу и его компании кроме удачной
ны все доступные автомобили и самолёты. Шафером стал возможности избежать антимонопольного расследова-
Стив Баллмер, занявший в начале 2000 г. пост генерально- ния и принудительного раздела компании?
452
Современный компьютер
Microsoft нанесла удар по конкурирующим компаниям мые из разных концов света, написанные в тех же MS Word.
Netscape, Sun, Oracle, объявив, что доступ в Internet будет Как только разработки третьих фирм начинают бить Word
встроен в операционную систему Apple. Одновременно по всем параметрам, обеспечивая пользователю возмож-
Microsoft гарантировала уничтожение как конкурента опе- ность работы с документами, созданными в MS Word,
рационной системы Apple, созданной на основе NeXT Microsoft выпускает новую версию, которая имеет всего
(машины, как бы говорящей своим названием, что она не одно отличие от предыдущей — другой формат докумен-
IBM PC XT). Не по своей воле, но Аррlе сыграла опреде- та. И гонка продолжается.
лённую роль в фактической ликвидации языка Java (общая Высокая эффективность программ Microsoft — это миф
основа для разработки платформонезависимых приложе- о суперпрограммистах, работающих в фирме. Они просто
ний, выпущенная компанией Sun). пишут программы, используя недокументированные функ-
А чего стоит заключение соглашения между Microsoft и ции системы Windows и специальные библиотеки, как бы
провайдерами о снятии логотипа Netscape в обмен на вклю- обходясь без «программ-посредников» между их продук-
чение последних в список информационных каналов про- тами и Windows. А для всех остальных программистов это
дуктов Microsoft! Это ли не победа Ехрlorer над Netscape? тайна за семью печатями. Поэтому характеристики почто-
Не вкладывать труд и средства в доработку и победить вви- вой программы Outlook ничуть не выше, чем у её конку-
ду явного превосходства (как в 1995 г. Netscape победил рентов, просто она использует внутренние функции
NSCA Mosaic, Сеllо и другие web-навигаторы), а просто не Windows эффективнее.
дать возможности сравнить два продукта. Кроме корпорации Microsoft Билл Гейтс основал ком-
Каждая новая версия Windows требует у несчастных панию Corbis Corporation, занимающуюся разработкой
пользователей серьёзного усовершенствования их компью- цифрового архива произведений искусства и фотографий
теров. На память приходит знаменитая шутка: «На каждый из государственных и частных коллекций всего мира. Так-
наперёд заданный высокопроизводительный компьютер же он входит в правление фармацевтической компании
найдется Word, работающий на нём медленно». Однако при Icos Corporation, владеет акциями компании Darwin
этом Microsoft не обманывает покупателей: ничего им не Molecular, занимающейся генной инженерией, — подраз-
обещает, фактически никакой поддержки; неработающая делением другой британской фармацевтической корпора-
ОС обменивается (с доплатой) на новую, снова неработа- ции Chiroscience. Он вложил средства в компанию Teledesic,
ющую. И так до бесконечности... А ведь никому из автомо- работающую над осуществлением проекта по запуску на
билистов не придёт в голову купить машину, которая пое- низкую орбиту вокруг земного шара нескольких сотен спут-
дет только через месяц и тут же сломается. ников, способных обеспечить всемирную двухстороннюю
Борьба с пиратами, распространяющими и использу- высокоскоростную передачу данных.
ющими программные продукты Microsoft, не так уж и выгод- Билл Гейтс увлекается не только компьютерными техно-
на, как может показаться на словах. Дешёвые незаконные логиями, он интересуется биотехнологиями, много читает,
копии, как наркотик, втягивают миллионы граждан в исполь- а также любит играть в гольф и бридж. Гейтс III — великий
зование программ фирмы Microsoft. А остальная, честная специалист по маркетингу. Своё состояние (более 60 млрд
часть человечества вынуждена пользоваться именно этими долларов) он собрал сам и вошёл в историю как самый
продуктами, чтобы читать письма и документы, получае- молодой миллиардер.
453
КОМПЬЮТЕР XXI ВЕКА
КОМПЬЮТЕР И ЗДОРОВЬЕ
454
Компьютер XXI века
КОМПЬЮТЕР И ЗРЕНИЕ
Уже в первые годы компьютериза-
ции было отмечено специфическое
455
Информация и информатика
ЗАБОЛЕВАНИЯ
МЫШЦ И СУСТАВОВ мя частых, повторяющихся движений
кистей рук в неудобном положении
Врачи различают несколько синдро- сухожилия трутся о кости запястья
мов, которые встречаются у пользо- и связки. В результате сдавливания
вателей ЭВМ. нервов и сухожилий развивается
Один из них — синдром длитель- серьёзное недомогание. В начальной
ной статической нагрузки, его симп- стадии болезни её симптомы: дрожь,
томами являются боли в руках, шее, зуд и покалывание в пальцах — появ-
пояснице. При неудобной рабочей по- ляются только через несколько часов
зе мышцы ног, плеч, шеи и рук дли- после окончания работы на компью-
тельно пребывают в состоянии сокра- тере. Как правило, большинство лю-
щения. Поскольку мышечные ткани дей не связывают это со своей рабо-
подолгу не имеют возможности рас- той, что приводит к запущенным
слабиться, то в них ухудшается кро- случаям синдрома. Постепенно при-
воснабжение, нарушается обмен ве- соединяются онемение, боль и тя-
ществ, накапливаются продукты жесть в руках. В наиболее тяжёлой
распада. В результате мышцы нахо- форме запястный туннельный синд-
дятся в состоянии постоянной уста- ром диагностируется по мучительным
лости и со временем ослабевают. Это болям, лишающим человека трудоспо-
может привести к искривлению по- собности и требующим хирургичес-
звоночника и другим изменениям ске- кого вмешательства.
лета, а также перерождению мышеч-
ных тканей.
Другой синдром — так называ- КАК СОХРАНИТЬ
емый запястный туннельный синд-
ром, или синдром канала запястья. Его
ЗДОРОВЬЕ
возникновение связано со сдавлива-
нием срединного нерва руки сухожи- Профилактика профессиональных
лиями мышц, сгибающих пальцы, при заболеваний, связанных с работой за
длительной и неудобной для пользо- компьютером, основана на соответ-
вателя работе на клавиатуре. Во вре- ствии оборудования выработанным
456
Компьютер XXI века
457
Информация и информатика
458
Компьютер XXI века
НЕЙРОСЕТИ
459
Информация и информатика
460
Компьютер XXI века
461
Информация и информатика
ПЕРВЫЕ
ЛАБОРАТОРНЫЕ УСПЕХИ
462
Компьютер XXI века
463
Информация и информатика
«ТАМ, В ГЛУБИНЕ...»
Ричард Фейнман.
В 1959 г. американский физик, будущий лауреат Но- атомами обычного металла. Иными словами, после
белевской премии Ричард Филлипс Фейнман высту- уменьшения наша точечка будет всё ещё содержать
пил перед Американским физическим обществом с около тысячи атомов. Значит, ей можно легко при-
докладом «Там, в глубине, полным-полно свободно- дать нужную форму в процессе фотогравировки и,
го места (Приглашение начать новое направление в без всякого сомнения, на булавочной головке най-
физике)». дётся достаточно места, чтобы нанести на неё со-
Нанотехнологии тесно связаны с информатикой держимое всей Британской энциклопедии».
по нескольким причинам. Исторически обсуждение Далее Фейнман заявил, что накопленную челове-
нанотехнологий началось с задачи компактного чеством информацию вполне можно уместить в не-
хранения информации. Применение нанотехнологий большой брошюре, и притом не в закодированном
обещает радикально изменить как компьютеры, так виде, а просто уменьшив в размере исходный мате-
и методы их применения. Развитие нанотехнологий риал (со всеми рисунками, репродукциями, таблицами
невозможно без применения методов информатики. и т. п.). Если же, продолжил учёный, хранить инфор-
Начинался доклад с неожиданного вопроса: мацию не в виде пропорционально уменьшенной ко-
можно ли записать все 24 тома Британской энцик- пии на поверхности вещества (булавочной головке),
лопедии на булавочной головке? а в закодированном виде внутри вещества, то резу-
Фейнман ответил на этот вопрос положительно. льтаты будут ещё более поразительны. Представим,
Чтобы понять его рассуждения, помимо сведений, что информация закодирована точками и тире, при-
входящих в школьную программу, нужно знать толь- чём точка изображена в виде атома одного металла,
ко, что расстояние между атомами булавочной го- а тире — в виде атома другого. Если хранить каждую
ловки, сделанной из обычного металла, составляет такую порцию информации внутри маленького куба
доли ангстрема (A ° — единица измерения длины, размером 5 x 5 x 5 атомов, то после несложного под-
равная 0,1 нм). счёта получится, что «вся информация, которую че-
«Размер булавочной головки составляет пример- ловечество собирало в книгах за всю свою историю,
но 1,5 мм. Если увеличить диаметр головки в 25 тыс. может быть помещена в кубик размером чуть мень-
раз, то её площадь станет примерно равна суммар- ше 0,1 мм — пылинку, едва различимую человеческим
ной площади всех страниц энциклопедии. Значит, взглядом».
всё, что нужно сделать, это научиться писать в В заключение доклада Фейнман сказал:«Физиче-
25 тыс. раз мельче. Возможно ли такое? Разрешаю- ские принципы, насколько я могу видеть, не содер-
щая способность глаза около 0,2 мм, что примерно жат запрета на возможность манипулировать пред-
равно диаметру точек, из которых складываются по- метами атом за атомом. Такое манипулирование не
лутоновые картинки. Если уменьшить подобную точ- нарушает никаких законов, в принципе оно возмож-
° в диаме-
ку в 25 тыс. раз, то получится область 80 A но; однако на практике это ещё не делалось, посколь-
тре, т. е. равная по размеру 32 расстояниям между ку мы слишком велики».
464
Компьютер XXI века
465
Информация и информатика
Любые самовоспроизводящиеся
объекты, будь то бактерии в человече-
ском теле, водоросли в пруду, сорняки
на вспаханном поле, закваска в тесте
или вирусы в компьютерной сети,
быстро размножаются, преобра-
зуя окружающую среду часто не-
желательным для человека или
даже катастрофическим об-
разом. Одна из таких ката-
строф описана в известной
немецкой сказке «Горшок ка-
ши», когда горшочек всё ва-
рил и варил кашу, покрыв в
конце концов ею весь город.
Но действительность может
оказаться страшнее любой сказки. Учё-
ные, разрабатывающие подходы к
нанотехнологиям, уже сейчас задумы-
ваются над опасностью выхода из-под
с присосками и хобота. Его вводили контроля самовоспроизводящихся
бы в кровь человека, и устройство оты- (или даже самоусовершенствующих-
скивало бы микробы, присасывалось ся) микророботов. Гипотетическая ка-
к ним и через хобот впрыскивало ан- тастрофа получила название «серая
тибиотик, запасённый в мешке. Ле- слизь» — так обозначают неконтро-
чить многие болезни стало бы легче. лируемый процесс переработки поч-
Но откуда известно, что нанотех- вы, воды, воздуха микроскопически-
нологии, в отличие от вечного двига- ми роботами, при котором Земля
теля, вполне возможны? Реально ли покрывается неисчислимой массой
создание «карликовых» устройств, не «сборщиков».
противоречит ли это каким-либо фи- Подобное может произойти бук-
зическим законам? Ответим на во- вально за несколько дней. Представь-
прос, рассмотрев капельку крови че- те себе выброшенного волной на
ловека под микроскопом. В крови песчаный морской берег самовос-
плавают и охотятся за микробами по производящегося робота размером
сути точно такие же «устройства», ко- 10 мкм. Пусть он состоит из атомов
торые называются антителами. Они кремния, кислорода, водорода, азота,
появляются в организме по генети- углерода (и некоторых металлов, со-
ческому коду (точный план), шаг за ли которых растворены в морской
шагом, молекула за молекулой. Всё воде). При попадании на солнечный
живое на Земле, от бактерии и про- свет микроробот начинает самовос-
стейшего гриба до человека и сек- производиться (при условии, что ря-
войи, создано с помощью процессов, дом есть запас нужных атомов). Если
манипулирующих небольшими груп- процесс «клонирования» занимает
пами атомов — аминокислотами и полчаса, то к концу первого дня на
белками. То есть в каком-то смысле пляже вырастет 20 поколений робо-
можно считать, что нанотехнологии тов общей численностью около мил-
уже работают в живой природе. К на- лиона штук и общим объёмом 1 мм3.
стоящему времени на принципах на- К концу второго дня объём их соста-
нотехнологий разработаны конст- вит 1 дм3, к концу третьего — 1000 м3,
рукции из сотен и даже тысяч атомов, а к концу четвёртого дня, если хватит
но среди них пока ещё нет ни одной, песка, — 1 км3. Весь пляж превратит-
сравнимой по сложности с живой ся в «серую слизь».
клеткой. Однако само существование Теоретики нанотехнологий уже
жизни и биологических процессов сейчас начали вырабатывать принци-
доказывает практическую осущест- пы устройства микророботов-«сбор-
вимость нанотехнологий. щиков», позволяющие избежать ката-
466
Компьютер XXI века
467
Информация и информатика
468
Компьютер XXI века
469
Информация и информатика
ЗАКОН МУРА
470
Компьютер XXI века
Качество кристалла можно охарактеризовать тремя ров, расположенных на одном кристалле, достигнет
параметрами: 10 миллиардов.
• проектная норма — технологический размер из- В конце прошлого века для полупроводниковой
меряется в микрометрах (миллионная часть метра); промышленности была типична вертикальная модель
этот показатель определяет плотность размещения организации: полный цикл производства, включа-
элементов на кристалле; ющий все технологические операции, проходил на
• число транзисторов (или вентилей) на кристал- одном предприятии. Высокая стоимость таких про-
ле определяет логическую сложность кристалла; изводств потребовала перейти к более гибкой гори-
• тактовая частота измеряется в мегагерцах и ги- зонтальной специализации. Как самостоятельные зве-
гагерцах и определяет быстродействие кристалла, нья выделились автоматизированное проектирование
фактически максимально возможное количество пе- интегральных схем, изготовление фотошаблонов, из-
реключений вентиля в секунду. готовление интегральных схем на пластине, тести-
Для 1999 г. минимальные проектные нормы бы- рование и др.
ли равны 0,18 мк, максимальный размер кристалла Продвижение в область субмикронных проект-
интегральной схемы — 25 х 35 мм, максимальное чис- ных норм отрицательно влияет на долговечность но-
ло транзисторов на чипе — 21 млн, тактовая часто- вых продуктов: срок их жизни непрерывно сокраща-
та — 1,2 Ггц, максимальное число уровней металли- ется. Скоро нынешний двухгодичный «жизненный
зации — 7, минимальное напряжение питания – 1,5 В, цикл» сожмётся до 9 и менее месяцев. В связи с этим
максимальный диаметр пластины — 300 мм. на первый план выходит проблема ускорения на всех
Технологические размеры (мкм) 0,7 0,5 0,35 0,25 0,13 0,10 0,08
Число транзисторов на кристалле (млн) 2,5 5 10 21 46 110 500
Рабочая частота (МГц) 100 175 300 600 1500 3500 7000
471
Информация и информатика
472
Компьютер XXI века
КВАНТОВЫЕ КОМПЬЮТЕРЫ
473
Информация и информатика
474
Компьютер XXI века
475
Информация и информатика
476
Компьютер XXI века
477
ПЕРЕДАЧА ИНФОРМАЦИИ
И КОМПЬЮТЕРНЫЕ СЕТИ
ПЕРЕДАЧА ИНФОРМАЦИИ
НА БОЛЬШИЕ РАССТОЯНИЯ
480
Информация и человек
481
Информация и информатика
ПЕРЕДАЧА ИНФОРМАЦИИ
МЕЖДУ КОМПЬЮТЕРАМИ
482
Информация и человек
483
Информация и информатика
МОДЕМ
484
Информация и человек
ют непосредственное подключение
через модем к Интернету, что автома-
тически даёт возможность пользовать- ISDN И МОБИЛЬНЫЕ ТЕЛЕФОННЫЕ СЕТИ
ся электронной почтой и всеми оста-
льными услугами, существующими Чтобы избавиться от недостатков существующих телефонных ли-
в Интернете. ний, был разработан новый стандарт телефонных сетей — ISDN, т. е.
Для подключения к Интернету че- интегрированные сервисные цифровые сети (Integrated Service Digital
рез модем имеется два протокола: SLIP Networks). ISDN позволяют передавать как обычный звук, так и ком-
и PPP. В начале XXI в. протокол SLIP пьютерные данные в цифровом виде; скорость передачи равна 64
устарел, и почти все провайдеры под- кбит/с. Во время разговора звук преобразуется в цифровую форму
держивают протокол РРР. и в таком виде передаётся по линии, т. е. происходит преобразова-
PPP позволяет на время соединения ние, обратное тому, которое выполняет модем. К сожалению, ISDN
с сервером через модем сделать пер- в сфере телекоммуникаций были встречены весьма прохладно. Во-
сональный компьютер полноценным первых, для их развития требуются крупные финансовые вложения,
узлом сети: такому компьютеру даётся но большинство пользователей не идут на это, работая по старинке,
Интернет-адрес, он может принимать с помощью обычного модема.
и посылать пакеты в формате исполь- Во-вторых, скорость передачи, которую обеспечивают ISDN, не-
зуемого в сети Интернет-протокола. достаточна для современных компьютеров. Она лишь незначитель-
Недостаток один: занята телефонная но превышает скорость работы современного модема в качествен-
линия. Платить, как правило, прихо- ной телефонной сети (хотя, конечно, надёжность ISDN неизмеримо
дится за использованное время, а не за выше).
объём переданной информации. На начало XXI в. в России ISDN практически отсутствовали. Од-
Скорость и надёжность передачи нако сотовые телефонные сети быстро распространяются. Протоко-
информации по модему невысоки лы, применяемые в мобильных сетях, весьма удобны для цифровой
и совершенно неудовлетворительны передачи данных между компьютерами. Поэтому подключение к Ин-
для современных компьютерных се- тернету через сотовый телефон становится доступнее и дешевле.
тей. Тем не менее огромным досто-
инством модема является то, что он
разрешает использовать уже сущест-
вующие телефонные линии, не дожи-
даясь создания инфраструктуры ком-
пьютерных сетей.
Возможно, «настоящие» компью-
терные сети скоро станут таким же
обычным явлением, как телефонные
сети. Уже сейчас в крупных городах
многие дома подключены к Интерне-
ту с помощью современных средств,
таких, как оптоволоконные линии.
Когда появятся подобные сети, модем
наконец займёт своё место в ряду ус-
таревших и достаточно курьёзных тех-
нических устройств — именно таким
нам представляется сейчас устройст-
во ввода с перфокарт, которое ещё 25
Модемы ноутбуков
лет назад было неотъемлемой частью величиной с кредит-
любой ЭВМ. ную карточку.
485
Информация и информатика
486
Информация и человек
ПРОГРАММИРОВАНИЕ
МОДЕМА Информация передаётся модемом в виде последовательности
байтов (групп по 8 бит). К каждому байту добавляются один или
несколько служебных битов (старт-бит, стоп-бит). Байты могут
Большинство современных модемов
посылаться по отдельности либо объединяться в пакеты, причём
относится к Hayes-совместимым (по
для каждого пакета сообщается контрольная сумма. При несо-
названию фирмы Hayes). Устройство
впадении её передача пакета повторяется.
такого модема в упрощённом виде вы-
глядит следующим образом. В компью-
тере имеется коммуникационный
порт, через который можно переда- В режиме данных модем пересы-
вать байты в модем и принимать бай- лает все байты, передаваемые ему че-
ты от модема. При этом передаваемые рез коммуникационный порт, удалён-
и принимаемые байты образуют два ному модему.
независимых потока, что позволяет В любой операционной системе
в любой момент пересылать байты че- имеется специальная программа «тер-
рез порт и считывать их из порта. минал», позволяющая пользователю
Модем может находиться в одном напрямую общаться с модемом, напри-
из двух режимов — в режиме команд мер, с помощью AT-команд. В системе
или в режиме данных. В режиме ко- MS Windows такая программа назы-
манд модем интерпретирует отправ- вается Hypertrm. После установки сое-
ленные ему через порт байты как ко- динения с удалённым модемом все
манды. Эти команды либо меняют символы, набираемые на клавиатуре,
внутреннее состояние модема (т. е. со- пересылаются удалённому компьюте-
держимое его внутренних регистров), ру; обратно, все символы, выводимые
либо заставляют модем выполнить не- удалённым компьютером на экран,
которое действие. Любая команда на- пересылаются через модем терми-
чинается с двух символов AT (от англ. нальной программе и отображаются
attention — «внимание») и заканчива- в её окне.
ется символом перевода строки. На- Так, терминальная программа даёт
пример: возможность превратить домашний
• ATL3 — «установи максимальную компьютер в терминал (экран +
громкость встроенного динамика»; клавиатура) и работать на удалённом
• AT S0 = 0 — «запрещено отвечать компьютере, не выходя из дома. Через
Скриншот
на приходящие звонки»; неё можно даже переслать файл, терминальной
• AT S0 = 2 — «сними трубку после используя специальный протокол программы.
двух звонков»;
• ATZ — «инициализация модема».
Таких AT-команд несколько десят-
ков, с их помощью происходит обще-
ние компьютера с модемом. Наиболее
распространённая команда — это
команда набора телефонного номера:
AT DP 839-17-86,
487
Информация и информатика
Телефонная
линия
Hub
Hub
Другая
локальная
Сервер сеть
Схема фрагмента
локальной сети.
488
Информация и человек
489
Информация и информатика
Схема фрагмента
распределённой сети
(WAN, MAN).
490
Информация и человек
ПЕРЕДАЧА ИНФОРМАЦИИ
БЕЗ ПРОВОДОВ. РАДИО Диполь Герца (вибра-
тор Герца), — простей-
До 1920 г. в радиосвязи применялись шая антенна, которую
волны длиной от сотен метров до де- использовал Генрих
сятков километров. В 1922 г. радио- Герц в 1888 г. в своих
любители открыли свойство корот- опытах. Она состояла
ких (несколько десятков метров) волн, из медного стержня
распространявшихся на любые рас- с металлическими ша-
стояния благодаря отражению от рами, в разрыв кото-
верхних слоев атмосферы. Такие вол- рого включалась так
ны стали основным средством даль- называемая катушка
ней радиосвязи. Румкорфа. Электри-
В 30-х гг. XX в. были освоены ме- ческие колебания в
тровые, а в 40-х гг. — дециметровые диполе возбуждались
и сантиметровые волны, распрост- с помощью единст-
раняющиеся в зоне прямой видимо- венного известного в
сти; радиус действия связи на этих то время источника
волнах ограничивался 40—50 км. Од- электрических коле-
нако ширина частотного диапазона баний - искрового
коротких волн (от 30 МГц до 30 ГГц) разряда. Поэтому пе-
в 1 тыс. раз больше ширины частот- редатчики, основан-
ных диапазонов волн длиннее 10 м. ные на этом методе,
То есть на этих частотах можно пе- получили название ис-
редавать огромные потоки инфор- кровых.
мации и организовывать многока-
нальную связь.
491
Информация и информатика
ЦИФРОВАЯ РАДИОСВЯЗЬ
НА ПУТИ К РАДИО На принципах радиосвязи основыва-
ются и методы передачи голоса (и лю-
Ещё в 80-х гг. XIX в. американский изобретатель Томас Эдисон бой другой информации) в сотовой
проводил опыты с радиосвязью и даже получил патент. В 1886— телефонной связи.
1889 гг. немецкий физик Генрих Герц экспериментально доказал Как разделить общий широкий ра-
существование электромагнитных волн и создал искровый излу- диоканал при передаче информации?
чатель электромагнитных волн. В 1895 г. русский физик и элект- Можно поступить очень просто: ис-
ротехник Александр Степанович Попов изобрёл электрическую пользуемый диапазон разбить на рав-
связь без проводов (радиосвязь). 7 мая 1895 г. Попов продемон- ные части так, чтобы в выделенной
стрировал первый в мире радиоприёмник. В 1897 г. итальянский полосе помещался весь спектр переда-
радиотехник Гульельмо Маркони сконструировал аналогичный ап- ваемой информации. Если это голос
парат. В том же году он зарегистрировал Компанию беспроводно- телефонного абонента, то каждому
го телеграфирования и сигнализации в Англии, а в 1899 г. — в абоненту достаточно 10 кГц, превыша-
США. В декабре 1901 г. Маркони осуществил радиотелеграфную ющие спектр человеческой речи. Что-
передачу через Атлантический океан. бы передача разговоров одного або-
нента не мешала остальным, нужно
оставить солидный запас.
Малая дальность распространения В первых сетях радиосвязи исполь-
и узкая направленность сигнала поз- зовался шаг 50 кГц, а затем его удалось
Чтобы одна радиопе- воляют использовать одни и те же дли- уменьшить до 25 кГц. В аналоговых
редача не мешала ос- ны волн в близко расположенных системах сотовой связи применён
тальным, требовались пунктах без взаимных помех. множественный доступ с разделени-
учёт и распределение Передача на значительные рассто- ем частот, или частотное разделение
частот радиовещания. яния осуществляется путём много- каналов — FDMA (англ. Frequency
По решению радио- кратной ретрансляции в так называ- Division Multiple Access). Технически
конференции 1927 г. емых линиях радиорелейной связи возможно уменьшить шаг до 6—8 кГц,
запрещалось при- или с помощью спутников, находя- правда с использованием цифровых
менение искровых щихся на высоте около 40 тыс. км над методов сжатия звука. Уменьшать до
радиопередатчиков, Землёй. бесконечности данную величину не-
которые вещали в В 1953 г. была разработана аппа- реально, потому что из-за близости
широкой полосе час- ратура радиорелейной связи «Стрела- частот возникают сильные искаже-
тот (их оставили толь- М», которая передавала 24 телефон- ния. Для FDMA предел уже достигнут.
ко для передачи сиг- ных разговора одновременно, а Все остальные методы относятся к
налов SOS, чтобы несколькими годами позже её смени- цифровой радиосвязи, которая более
увеличить вероят- ла радиорелейная станция Р-60/120, устойчива к помехам, её проще коди-
ность приёма). обеспечившая до 120 телефонных ровать, шифровать. Голос абонента
каналов. даже проходит дискретизацию, пре-
образовываясь в цифровое представ-
ление, и в таком виде передаётся в
эфир.
Наиболее популярный метод циф-
ровой радиосвязи — временное раз-
деление каналов, TDMA (англ. Time
Division Multiple Access). В общей ши-
рокой полосе частот, выделенной для
радиосети, применить этот метод в
чистом виде не удаётся. Например, в
сотовой сети GSM, самой популярной
в Европе, используют комбинирован-
ное частотное и временное разделе-
ние каналов (FDMA+TDMA). Сначала
методом FDMA общую полосу 25 МГц
делят на каналы по 200 кГц, а уже за-
Сотовые телефоны тем групповой канал — на восемь
CDMA и GSM. пользовательских каналов методом
492
Информация и человек
493
Информация и информатика
494
Информация и человек
495
Информация и информатика
496
Информация и человек
Телефон-зеркальце.
497
ИНТЕРНЕТ
ЗАРОЖДЕНИЕ, РАЗВИТИЕ И УСТРОЙСТВО ИНТЕРНЕТА
ИСТОРИЯ СОЗДАНИЯ
ИНТЕРНЕТА
498
Интернет
стя французы обнаружили, как может теров и TCP/IP был принят в качестве
быть хорош винный спирт, высто- стандарта. В то же время появились
явшийся в дубовых бочках. С Интер- настольные рабочие станции с опе-
нетом произошла похожая история. рационной системой UNIX, оснащён-
Сразу после окончания Второй ной встроенными средствами для со-
мировой войны США вступили в про- единения с сетью, которая стала
тивостояние со своим недавним со- называться Интернет.
юзником — Советским Союзом. К се- К 1986 г. Национальным фондом
редине 50-х гг. обе стороны обладали науки США (National Science Foun-
ядерным и даже термоядерным ору- dation — NSF) была создана опорная
жием и вели разработки ракетных сеть для соединения его шести супер-
носителей для него. В русле этого компьютерных центров. Сеть осно-
противостояния по приказу прези- вывалась на протоколе TCP/IP. Ско-
дента Эйзенхауэра при Министерст- рость передачи данных по каналам
ве обороны США было создано составила 56 кбит/с. В дальнейшем
Агентство передовых исследований к этой сети начали подключаться уни-
(Advanced Research Projects Agency — верситеты.
ARPA). В 1989 г. число хостов, т. е. ком-
Агентство сосредоточило свои ис- пьютеров, подключённых к Интер-
следования на задачах военного при- нету, превысило 100 тыс. Интернет
менения компьютерных технологий. стал использоваться не только в го-
Главной задачей исследований стало сударственных и учебно-научных це-
создание компьютерной сети, кото- лях — к нему подключилась ком-
рая была бы устойчива к повреждению мерческая сеть MCI Mail. К этому
её отдельных участков, например времени Сеть уже перешагнула гра-
при ракетно-ядерной атаке против- ницы Соединённых Штатов, в неё во-
ника. В 1967 г. был готов проект по- шли Австралия, Великобритания, Гер-
строения такой сети, получившей на- мания, Израиль, Италия, Нидерланды,
звание ARPANET (Advanced Research Новая Зеландия и Япония. В начале
Projects Agency NETwork), а в 1969 г. 90-х гг. Россия и страны Восточной
первыми узлами сети стали компью- Европы также подключились к Сети,
теры калифорнийских университетов которую теперь можно было назвать
в Лос-Анджелесе и Санта-Барбаре, всемирной.
Станфордского исследовательского В 1991 г. Тим Бернерс-Ли, сотруд-
центра и Университета штата Юта. ник лаборатории физики элементар-
В 1971 г. к сети были подключены уже ных частиц Европейского центра
23 компьютера, в 1973 г. — осуществ- ядерных исследований в Женеве
лены первые международные подклю- (CERN), разработал систему World
чения. Wide Web (WWW), и началась новая
По мере роста сети ARPANET вста- страница в истории Интернета (см.
ла проблема, как связать отдельные се- статью «World Wide Web»). Тим Бернерс-Ли.
ти, использующие различные методы
передачи информации, между собой.
Для этого необходимо было разрабо- КТО УПРАВЛЯЕТ
тать специальный протокол, т. е. набор
правил, которые определяли бы поря-
ИНТЕРНЕТОМ
док обмена данными между различны-
ми программами, причём работающи- Интернет составляют соединённые
ми на различных компьютерных между собой магистральные сети,
платформах. В 1974 г. такой протокол иначе называемые опорными (back-
был создан. Он включал правила нала- bone). Сети среднего уровня, регио-
живания и поддержания связи в сети, нальные, подсоединяются к высоко-
указания, как обрабатывать и переда- скоростной опорной сети. Каждая из
вать данные по сети. Этот протокол сетей отвечает за трафик (объём
назвали TCP/IP. информации), который циркулиру-
К середине 80-х гг. к сети уже были ет внутри неё, и маршрутизирует (на-
подключены около тысячи компью- правляет) его, как считает нужным.
499
Передача информации
500
Интернет
501
Передача информации
502
Интернет
о том, в чьём ведении это имя нахо- тера может измениться по ряду при-
дится. При этом далеко не всегда легко чин (например, из-за переконфигу-
определить, где физически находит- рации локальной сети), имя же не ме-
ся компьютер. Более того, компьюте- няется почти никогда. Наконец,
ры одного домена порой находятся у компьютера может быть несколько
в разных сетях. Тем не менее исполь- имён-синонимов помимо его кано-
зовать доменные имена предпочти- нического имени — обычно они об-
тельнее, чем IP-адреса. Во-первых, разуются от имени соответствующе-
большинству людей их проще запо- го сервиса, предоставляемого этим
минать, во-вторых, IP-адрес компью- компьютером.
ДОСТУП В ИНТЕРНЕТ
503
Передача информации
504
Интернет
505
Передача информации
КАНАЛЫ СВЯЗИ
506
Интернет
Когда стоимость винчестеров была велика и устанав- выше, потому что программы выполнялись не на цен-
ливать их на каждый компьютер было нерентабель- тральной машине, а на компьютере пользователя.
но, использовались сетевые операционные системы. Наиболее успешно сетевые ОС применялись при
Подобные системы умели соединить несколько пер- обучении в университетах, так как, с одной стороны,
сональных компьютеров, обеспечив совместное ис- студенту не требуется особенно больших компьютер-
пользование небольшого количества данных и основ- ных ресурсов, с другой — сетевой ОС удобно управ-
ных приложений. Загрузка операционной системы лять. Сегодня сетевые операционные системы долж-
осуществлялась с центральной машины. Сетевые ОС ны делать всё: работать со старыми файловыми
напоминали центры коллективного пользования, ког- системами и одновременно обрабатывать приложе-
да терминалы подключены к одной машине. В каче- ния клиент — сервер.
стве терминалов выступали персональные компьюте- Самой распространённой сетевой ОС является
ры, да и «интеллект» терминалов был существенно Novell Netware.
УДАЛЁННЫЙ ДОСТУП
Когда-то компьютеры имели большие
размеры и стояли в специальных ма-
шинных залах. Терминалы — дисплеи
с клавиатурой, позволяющие работать
на компьютере, обычно располагались
в другом помещении. Дисплеи были
алфавитно-цифровые, поэтому диалог
с компьютером заключался во вводе
символьных команд, реагируя на ко-
торые машина печатала на экране
507
Передача информации
Для того чтобы войти в удалённый компьютер, поль- open имя — установить соединение с указанным
зователь вводит команду компьютером;
telnet имя_компьютера. set — установить различные параметры соедине-
Когда соединение произойдёт, удалённая систе- ния; например, команда set echo включает и выклю-
ма запросит входное имя (Login:) и пароль (Password:). чает локальное эхо, set escape символ объявляет
Для окончания сеанса работы и отключения от уда- указанный символ escape-символом. Смена escape-
лённой системы пользователь должен ввести коман- символа бывает полезна для соединения с несколь-
ду logout, и соединение будет прервано. кими удалёнными компьютерами. Например, при вхо-
Программа TELNET позволяет переходить из ре- де в одну удалённую систему через другую и нажатии
жима работы в удалённой системе в командный ре- используемого по умолчанию Ctrl-] будет разорвана
жим. Это происходит при вводе так называемой связь с обеими системами, даже если этого не тре-
escape-последовательности (но не клавиши Esc!), ко- бовалось;
торая сообщается при соединении. Обычно это со- display — выдать рабочие параметры сеанса;
вместное нажатие клавиш Ctrl и Esc. Кроме того, в ко- status — показать информацию о состоянии со-
мандный режим можно войти, введя команду telnet единения;
без указания имени компьютера. z — перевести соединение с удалённой системой
в фоновый режим.
Основные команды TELNET При нажатии клавиши Enter происходит возврат
(именно КОМАНДНОГО режима!): из командного режима.
(В режиме работы в удалённой системе вы рабо-
? — вывести список команд; таете непосредственно на удалённом компьютере,
close — закрыть текущее соединение; а командный режим просто изменяет различные па-
quit — выйти из программы TELNET; раметры сеанса связи.)
508
Интернет
Чтобы соединиться с удалённым компьютером по про- бом пересылаются архивы, исполняемые файлы, изо-
токолу FTP, необходимо ввести команду бражения и т. п.;
ftp имя_компьютера. get файл1 файл2 — переслать из удалённой си-
При этом происходит соединение с указанным стемы файл1, создав на компьютере пользователя
компьютером. После этого на удалённом компьюте- (локальном) его копию с именем файл2. Если вто-
ре следует ввести входное имя пользователя и пароль. рой параметр не указывать, то в локальной систе-
Основные команды FTP: ме будет создан файл с оригинальным именем.
quit — выйти из FTP; По команде get файл указанный файл будет выве-
dir файл — просмотреть содержимое каталога ден на экран;
на удалённом компьютере, в качестве параметра мож- put файл1 файл2 — производит действие, обрат-
но указать имя файла или имя группы файлов с ис- ное действию команды get, т. е. пересылает файл в уда-
пользованием универсальных символов * или ?; лённую систему из локальной;
cd каталог — сменить каталог в удалённой систе- delete файл — стереть указанный файл в удалён-
ме. Имена каталогов отделяются косой чертой /; ес- ной системе;
ли имя каталога начинается с косой черты, то позици- hash — выводить символ # после пересылки каж-
онирование осуществляется относительно корневого дого блока данных. Это полезно при пересылке боль-
каталога. Для перехода на один уровень выше следу- ших файлов, так как позволяет убедиться, что данные
ет ввести команду cd .. или cdup; действительно перемещаются. Для отмены этого ре-
binary — включить двоичный режим передачи жима следует дать команду hash повторно.
файлов. При этом все байты пересылаются без каких- help — показать полный список доступных команд
либо преобразований или сокращений. Таким спосо- FTP.
509
Передача информации
ЭЛЕКТРОННАЯ ПОЧТА
Электронная почта (E-mail — Electronic
mail, от англ. мail — «почта») — наибо-
лее естественное и легко осваиваемое
приложение, поскольку для неё допу-
стима прямая аналогия с обычной
почтой. С её помощью пользователь
может посылать сообщения, получать
их в собственный электронный поч-
товый ящик, отправлять ответы своим
корреспондентам автоматически по
тем адресам, откуда пришли письма,
рассылать копии своего письма сразу
нескольким получателям, переправ-
лять полученное сообщение по друго-
му адресу.
Каждому пользователю электрон-
ной почты присваивается уникальный
почтовый адрес, который обычно
образуют присоединением имени
пользователя к имени его компьюте-
ра. Имя пользователя и имя компью-
тера разделяет специальный символ
«@» (изначально выбранный как не
встречающийся в именах и фамилиях),
компьютере в фоновом режиме, и который называется «эт коммерче-
программы-клиента. При использо- ское» (at). Например, если пользова-
вании протокола FTP между соединя- тель имеет входное имя frederick на
ющимися компьютерами открывает- компьютере ickenham.com, то его элек-
ся два канала: один для передачи тронный адрес будет иметь такой вид:
команд, другой для передачи данных. frederick@ickenham.com.
Для использования электронной
почты на компьютере устанавливают
почтовый сервер и виртуальный «поч-
АНОНИМНЫЙ FTP товый ящик», доступный только его
владельцу. Все приходящие письма
Одной из важнейших возможностей, предоставляемых прото- складываются туда и ждут момента,
колом FTP, является анонимный FTP, позволяющий сделать те когда пользователь прочитает их при
или иные файлы доступными всему сетевому сообществу. Ано- помощи специальной программы-
нимный FTP не требует от пользователя регистрации на компью- клиента. В этой же программе поль-
тере, где установлен этот сервис. Для анонимного входа исполь- зователь может подготовить своё
зуется специально зарезервированное имя Аnonymous. На письмо и послать его. Тогда програм-
анонимных FTP-серверах можно найти самую разную информа- ма-клиент передаст это письмо про-
цию. Это всевозможные драйверы, общедоступное программ- грамме-серверу, которая и отправит
ное обеспечение для разнообразных операционных систем, ар- его по сети адресату.
хивы компьютерных компаний, которые помещают на свои Электронное письмо, так же как
серверы обновлённые и демонстрационные версии своих про- и обычное, содержит адрес получате-
граммных продуктов, а также дополнения к документации или ля, адрес отправителя, на нём есть
сообщения об обнаруженных ошибках. Там можно найти разно- «штампы отделений связи» — имена
образную документацию, библиотеки компьютерных изображе- компьютеров, через которые прошло
ний, карты, схемы, репродукции картин, коллекции фотографий, письмо, прежде чем добраться до ад-
различные тексты: Библию, Коран, Тору, романы, научную фан- ресата. Также в письме есть заголовок
тастику и чёрную магию, исторические документы, прогнозы по- (Subject) — строка текста, позволя-
годы, гороскопы и кулинарные рецепты; наконец, файлы с му- ющая облегчить получателю класси-
зыкой и кинофильмами, видеоклипы. фикацию писем, определить их сроч-
ность и необходимость немедленного
510
Интернет
ТЕЛЕКОНФЕРЕНЦИИ
Система телеконференций — распре-
делённая виртуальная сеть Usenet —
позволяет участвовать в открытых дис-
куссиях, даёт возможность читать и по-
сылать сообщения в группы новостей.
Обычно провайдеры наряду с элек-
тронной почтой предоставляют до-
ступ к своему серверу новостей. Под-
ключившись к серверу, необходимо
загрузить полный список групп, кото-
рый он поддерживает, затем подпи-
511
Передача информации
Почти все изобретения последних столетий имеют авто- реписки в электронную фор-
ра. Так, в 1807 г. американец Роберт Фултон построил му, так что его сотрудникам
первый пароход, в 1903 г. американцы же братья Орвилл волей-неволей пришлось по-
и Уилбер Райт подняли в воздух первый в мире самолёт. следовать примеру босса.
Изобретатель электронной почты также известен. Это Распространение элек-
профессор Рэй Томлинсон, тоже американец. тронной почты резко воз-
Когда в 1971 г. Томлинсон сделал своё гениальное изо- росло в середине 80-х гг.
бретение, он работал в компании BBN, создававшей сеть прошлого века, когда появи-
ARPANET (сеть Управления перспективных исследований лись первые персональные
Министерства обороны США) — прототип современного компьютеры: круг её пользо-
Интернета. Электронную почту он создал без ведома ру- вателей пополнился за счёт
ководства, просто ради собственного интереса. В её ос- частных лиц. К этому же пе-
нову легла уже имевшаяся программа передачи текстовых риоду относится и создание Рэй Томлинсон.
сообщений, которую использовали программисты и иссле- первой массовой почтовой
дователи, работавшие на компьютерах фирмы DeC. программы Eudora с удобным графическим интерфейсом.
Но с помощью этой программы сообщениями могли обме- В настоящее время практически все пользователи Ин-
ниваться только пользователи одного компьютера. Том- тернета имеют как минимум один, а нередко и несколь-
линсону оставалось предусмотреть возможность пересыл- ко почтовых адресов. По оценкам аналитиков, в 2004 г.
ки сообщений на другие компьютеры, и, слегка изменив электронной почтой пользовалось более половины жи-
протокол передачи данных, он получил первую версию телей США, ежедневно через Интернет пересылалось
почтовой программы. около 16 млрд электронных писем.
Для тестирования программы Томлинсон воспользовал- А в Российской Федера-
ся двумя компьютерами, стоявшими в его комнате и соеди- ции пользуются элек-
нёнными посредством сети. Первое сообщение по элек- тронной почтой более
тронной почте он послал самому себе. По воспоминаниям 15 млн человек.
Томлинсона, оно состояло из набора заглавных букв, рас- Сам Рэй Томлинсон
положенных в верхней части клавиатуры, — что-то вроде не получил от сво-
QWERTYUIOP. его грандиозного
Создав первую в мире почтовую программу, Томлин- изобретения ника-
сон показал её другим сотрудникам и попросил их нико- кой материальной
му о ней не рассказывать, ибо опасался, что начальство выгоды. Он по-
будет упрекать его в пренебрежении своими служебны- прежнему работает
ми обязанностями. Но впоследствии электронной почтой в компании BBN, зани-
стал пользоваться его шеф Ларри Робертс. Через некото- мается новыми научными
рое время он перевёл основную часть своей деловой пе- разработками.
512
Интернет
513
Передача информации
HTTP
Система WWW построена по тради-
ционной схеме клиент — сервер. Вза-
имодействие между сервером WWW
и клиентской программой осуществ-
ляется по протоколу передачи гипер-
текста HTTP.
В процессе взаимодействия кли-
ент может запросить встроенную гра-
фику, принять и передать её парамет-
ры, получить новый адрес ресурса
в сети и т. д.
Работа в WWW не ограничивается
Скриншот главной позволяющего строить системы логи- только получением уже готовых фай-
страницы сайта ческой структурной разметки любых лов с документами. Клиенту также пре-
www.crx.ru.
разновидностей текстов. Управляющие доставляется возможность запуска про-
коды, вносимые в текст при такой раз- грамм на сервере. При этом данные,
метке, лишь задавали его логическую выдаваемые этими программами, вы-
структуру, т. е. создавали ссылки от до- сылаются клиенту в виде документов.
кумента к документу и не несли ника- Так организована, например, работа че-
кой информации о внешнем виде до- рез WWW с системами поиска инфор-
кумента. мации и любыми интерактивными про-
Разработчики WWW выбрали SGML граммами и системами, где требуется
в качестве основы для языка разметки диалог с пользователем. Стандарт, по ко-
гипертекстовых документов. Этот язык торому осуществляются запрос на ис-
был назван HyperText Markup Language полнение программ и передача резуль-
(HTML). татов клиенту, называется Common
В отличие от прообраза, в котором Gateway Interface (CGI).
гипертекстовые ссылки хранились
в отдельных файлах специального
формата, в HTML гипертекстовые ДОМАШНЯЯ СТРАНИЦА,
ссылки, в том числе и управляющие
внешним видом документа, внедрены
САЙТ
514
Интернет
515
Передача информации
516
Интернет
<IMG SRC=URL_рисунка>.
517
Передача информации
специальную пару тегов <pre> ... </pre>. нению сразу во всех документах, где
Есть теги для выделения текста жир- он используется.
ным шрифтом, курсивом, подчёрки- Полное описание языка HTML 4
ванием. Для более сложного форма- (включая CSS-стили) — это многостра-
тирования применяются обычные ничный документ. Однако есть более
и упорядоченные списки, таблицы, лёгкий способ овладения языком ги-
кадры. Существует возможность со- пертекстов — все программы просмо-
здать стиль для отдельных слов или тра обладают возможностью показа
предложений и документа в целом из- исходного кода WWW-страницы, по-
менения этого стиля приведут к изме- этому можно учиться на примерах.
518
Интернет
КОММЕРЦИЯ В ИНТЕРНЕТЕ
ВИДЫ ЭЛЕКТРОННОЙ
КОММЕРЦИИ
519
Передача информации
520
Интернет
Интернет-магазин
представляет собой
коммерческую орга-
низацию, осуществ-
ляющую контакт с
потребителем через
сайт, на котором вы-
ставлены предложе-
ния товаров или ус-
луг и предусмотрена
возможность их за-
каза посетителями,
находящимися непо-
средственно в Сети.
купки другими частными лицами. видно, что в Сети легче продавать ком-
Один из наиболее известных и посе- пактные, удобные для транспортиров-
щаемых электронных аукционов — ки товары, чем тяжёлые и громоздкие,
eBay.com. осложняющие доставку.
Оплата товаров и услуг, пред- Идеально соответствуют возмож-
ложенных в Интернете, осуществ- ностям сетевой торговли товары, кото-
ляется самыми разными способами: рые можно доставить покупателю че-
наличными, наложенным платежом рез Интернет. Наиболее очевидным
при получении товара по почте, бан- примером таких товаров является про-
ковским переводом, почтовым пере- граммное обеспечение. Книги и газе-
водом, кредитной картой. Последний ты также могут приходить к заказчи-
способ наиболее быстрый, однако по- кам в электронном виде. В общем, всё,
купатели часто справедливо опаса- что может быть оцифровано, в том
ются передавать через Интернет рек-
визиты своих кредитных карт, боясь,
что данные могут быть похищены из
Сети злоумышленниками. Эти опасе-
ния являются одним из препятствий
для осуществления электронной тор-
говли. Чтобы преодолеть их, откры-
вают специальные «электронные»
счета, которые не сопряжены со счё-
том на кредитной карте. Важно так-
же условие повышения безопаснос-
ти электронных платежей.
КАКИЕ ТОВАРЫ
ЛУЧШЕ ВСЕГО
ПРОДАВАТЬ ЧЕРЕЗ СЕТЬ
Как показали исследования, с помо-
щью Интернета чаще всего покупают-
ся товары текущего потребления. До-
рогие, давно планируемые покупки
делаются здесь значительно реже. Вви-
ду особенностей доставки заказов оче-
521
Передача информации
522
Интернет
ПОИСК В ИНТЕРНЕТЕ
523
Передача информации
524
Интернет
ПОИСКОВЫЕ СИСТЕМЫ
Действие поисковых систем заключа-
ется в постоянном, последовательном
изучении всех сайтов Интернета, до-
ступных данной системе поиска, а так-
же всех тех страниц, на которые есть
525
Передача информации
БУДУЩЕЕ ПОИСКА
Объём накопленной информации
Окно поисковой К достоинствам поисковых систем увеличивается с каждым годом. Хотя
системы Google. можно отнести исследование ими ог- долгое время его рост был экспонен-
ромного объёма информации и её пе- циальным, тем не менее объём по-
риодическую актуализацию. Однако лезной информации в Интернете,
при этом не учитываются документы, которая может быть потреблена поль-
не содержащие ключевых слов, а, с дру- зователями, и объём информации, ко-
гой стороны, в списке содержится торую там можно разместить, скорее
много не относящейся к делу инфор- всего, конечны. Поэтому от механиз-
мации, отсеивание которой занимает мов поиска требуется постоянное по-
немалое время. вышение эффективности, увеличе-
КАК ИСКАТЬ
526
Интернет
ГДЕ ИСКАТЬ
527
Передача информации
«ЭЛЕКТРОННОЕ ПРАВИТЕЛЬСТВО»
528
Интернет
529
Передача информации
С 2001/02 учебного года началась усиленная компьюте- Первопроходцами в области новой информации в Ав-
ризация австрийских школ всех уровней (начальная и сред- стрии являются Экономический университет Вены, Уни-
няя школы, гимназия, школа с профессиональным укло- верситет Кеплера в городе Линце. В Университете Вены
ном). Муниципалитет Вены выделил около 17 млн долларов более 30 % студентов записались на обучение и семина-
для 400 школ на приобретение персональных компьюте- ры через Интернет. (В Австрии приём в высшие учебные
ров и программного обеспечения и использование Интер- заведения проводится по окончании гимназии без всту-
нета. пительных экзаменов.)
Министерство образования Австрии планирует широ- Открытый университет Каталонии (Испания) увеличил
кое внедрение в школах переносных компьютеров, кото- количество своих web-студентов с 400 человек в 1995 г.
рые должны в ближайшем будущем заменить учебники, до 20 тыс. в 2000 г. Университет в городе Хагене (Герма-
тетради, ручки и другие вспомогательные средства обу- ния) в течение 26 лет держит первенство в виртуальном
чения. образовании и насчитывает в настоящее время более
В целом на компьютерную модернизацию австрийских 60 тыс. студентов, из которых 10 тыс. учатся с помощью
школ, приобретение различного оборудования и обеспе- Интернета.
чение свободного доступа в Интернет, а также на повыше- Хорошим примером дистанционного обучения явля-
ние квалификации учителей будет потрачено около 70 млн ется Открытый университет Милтона Кейнса в Велико-
долларов. В университетах предполагается, что все студен- британии, который насчитывает 200 тыс. web-студентов
ты будут иметь личные компьютеры для работы на лекци- во всём мире; с 1992 г. открыт его филиал в Вене. Сту-
ях и семинарах. Осенью 2001 г. ведущие провайдеры Ин- денты Открытого университета общаются с преподавате-
тернета предложили специальные расценки для студентов, лями через Интернет, а также изучают учебный матери-
которые хотят установить дома свободный доступ в Ин- ал, представленный на CD ROM. Каждые шесть недель
тернет. учащиеся встречаются в аудиториях для совместных за-
Уже ставший нормой виртуальный мир позволит уп- нятий, а раз в год проходят совместную практику.
ростить бюрократические процедуры образования и из- В Университете Милтона Кейнса разработан и введён
бавиться от всевозможных проволочек: безбумажного ад- учебный курс «Т171», призванный заменить традицион-
министрирования, записи на семинары, контрольных работ, ные формы преподавания. Обучение в его рамках проис-
экзаменов, видеоконференций, on-line-консультаций у пре- ходит через Интернет; каждый студент поддерживает по-
подавателей и профессоров. стоянный контакт со своим преподавателем по E-mail.
530
Интернет
531
Передача информации
ЭЛЕКТРОННЫЕ БИБЛИОТЕКИ
Идея замены настоящих печатных из- библиотеки? Сколько это стоит? Как
даний на электронные витала в возду- читать? Проще ответить на последний
хе давно. Её многократно описывали вопрос — с монитора компьютера. Од-
писатели-фантасты. В первый приезд нако многим компьютер надоедает за
в Москву в 90-х гг. XX века президента рабочий день. Кроме того, такое чте-
фирмы Apple Джона Скалли на его ние неудобно; во-первых, устают гла-
лекции в МГУ даже показывался футу- за, во-вторых, нельзя читать в метро
ристический рекламный ролик, где на- или в автобусе.
ряду с тогда ещё не существующей Поэтому альтернативой является
трёхмерной графикой демонстриро- использование электронных запис-
вались электронные говорящие книж- ных книжек — PocketPC, PDA (Perso-
ки, предназначенные для обучения не- nal Digital Assistant — «персональный
грамотных. цифровой помощник»), карманного
Но для внедрения идеи электрон- размера и весящих менее 200 г. На та-
ных библиотек надо знать, где взять кой малютке без труда умещается
Алан Кей. и как получить электронные книги? несколько сотен книг. В них также
Как стать абонентом электронной можно хранить телефонную книгу,
532
Интернет
533
Передача информации
534
Интернет
ИНТЕРНЕТ И ОБЩЕСТВО
535
Передача информации
Что привнесли современные информационные тех- зы данных. У соседа база стояла без охранной сиг-
нологии в нашу жизнь? Прежде всего, они объеди- нализации, и ночью её «угнали». Общественность
нили человечество в сообщество, имя которому — требует введения информационной смертной казни:
Интернет. И не беда, что не все ещё пользуются ус- отключения бандитов от Сети и лишения «логинов».
лугами глобальной компьютерной сети. Приход Ин- Папа вспоминает, как было спокойно всего десять
тернета в каждый дом, в каждую семью не за гора- лет тому назад: ну грабили, ну угоняли автомобили,
ми. Это дело всего нескольких лет. Как же это будет? а теперь нападают в киберпространстве. Отнимают
Давайте немного пофантазируем. все деньги и стирают файлы. Автомобили и сами лю-
Обычный город России. Обычная семья. Папа, ди теперь никому не интересны. Прежних преступ-
мама, двое детей. Отец работает ведущим инжене- лений больше нет. Мама качает головой, дети обе-
ром на заводе, мать — модельер. Дочь учится в уни- щают не ходить в Сети поздно поодиночке и никому
верситете. Сын ходит в школу и без ума от компью- не открывать «файрвол».
теров. Мама заканчивает завтрак и уходит в комнату,
Утро. Семья просыпается. Первым, как положе- где находится её рабочее место. Здесь она занима-
но, встаёт папа. И сразу за газету. Но он не спуска- ется проектированием новых моделей одежды. Ма-
ется к почтовому ящику и не выходит к киоску, а бе- ма включает компьютер. Что нового в мире моды?
рёт плоский экран и читает утренние новости. Щёлк, Читает почту с заказами. Отвечает на письма. Бесе-
папа касается пальцем экрана. Просматривает сле- дует с заказчиками. Разглядывает голографическую
дующую страницу. Щёлк. Другая газета. Страницы трёхмерную модель платья из новой французской
мелькают одна за другой. Щёлк. Подбор новостей коллекции. А вот выкройка её собственной модели
о его любимом заводе. Просмотрев электронную га- на экране. Мама даёт команду машине: «Собираем».
зету, папа просто сворачивает её трубочкой и кла- Вот так будет выглядеть модель в готовом виде. Чуть
дёт в карман пижамы. подправим форму рукава, изменим выкройку. Мама
А вот и мама, ей к 9.00 на работу. Она торопит- делает пассы руками, и модель на глазах меняется.
ся. У детей в комнате появляется её голографиче- Спереди, сбоку. Изменим материал, цвет. Всё гото-
ское изображение. Она зовёт на кухню. во. Можно шить. Это то, что она хотела. А вот и за-
Все завтракают. И одновременно смотрят ново- казчик появляется на экране. Торопит. Мама его ус-
сти по WEB-TV — Интернет-телевизору. На экране покаивает.
размером во всю стену помимо основной передачи Заказчик из Индии смотрит на трёхмерную мо-
все важные новости сообщаются бегущей строкой, дель платья у себя в кабинете. Он очень доволен.
в углу — прогноз погоды и разнообразные реклам- Каждый говорит на своём родном языке, автомати-
ные вставки. Они уже не прерывают передачу, а ти- ческий перевод вполне сносный. Договорились об
хо «висят» в верхнем углу телевизора. Новости не ра- оплате. Вот и деньги поступили на мамин счёт, пря-
дуют. Растёт киберпреступность. Воруют программы мо по Сети. Выкройку она отправила в Индию. Там
и базы данных. С экрана диктор опять рассказывает и сошьют. Ура, заказ выполнен. Мама свободна.
про банду, которая совершает разбойные нападения Сын с утра уже в Интернете. Делает задание.
на домашние компьютеры, уничтожает семейные ба- Ищет кино, по которому надо писать сочинение (за-
536
Интернет
метьте: не книгу, а кинофильм). Нашёл. Бежит к па- Папа за компьютером. Обдумывает чертежи. Он
пе. Говорит, что это недорого. Это задали в школе. в отпуске, но всё равно не может не работать. Ис-
Папа соглашается. Оплачивает фильм — прямо че- правил чертёж. Запустил расчёты модели. Вроде всё
рез Интернет. Сын радостно сгружает его по Сети. хорошо. Вдруг экстренный звонок с завода по Ин-
И садится смотреть. тернет-телефону. Звонит директор. Срочно требу-
Его 18-летняя сестра рассылает со своего ком- ется консультация. Папа присоединяется к телекон-
пьютера звуковые письма через Интернет. Это удоб- ференции руководства завода и обсуждает со всеми
но, когда посылаешь письма сразу трём поклонни- участниками важную проблему. Прошло полчаса.
кам. И свои новые фотографии добавила к письмам... Проблема разрешилась.
Изучать предмет римское право так скучно. Ни те- Папа идёт к сыну и застаёт того за игрой. Ока-
бе картинок интересных, ни фильмов. Другое дело — зывается, к кинофильму прилагалась бесплатная иг-
разглядывание новых каталогов косметики. Отмеча- ра. Это и было истинной целью ребёнка. Папа недо-
ет, что её интересует, и заказывает через Сеть. Ско- волен. Сын наказан. Ему грозит отправка на природу
ро пришлют по почте. Попутно через анонимный чат с отключением от Сети. На неделю.
общается с такими же юнцами, только изображает Входит довольная мама. Она сообщает, что вы-
из себя 60-летнюю матрону, утешающую несчастных полнила заказ и хочет с мужем и детьми съездить на
в любви парней. Это её чрезвычайно забавляет. неделю к морю. Семья у компьютера. Срочный за-
Но она даже не предполагает, что из пяти человек, каз билетов, номеров в гостинице, такси. Семья на-
участвующих в дискуссии о любви, только одному чинает быстро собираться. Приезжает такси. Все на
18 лет. Двоим уже глубоко за 50, а ещё двоим не улице. Садятся в машину и сразу включают свои пор-
стукнуло и 14. Смешная вещь — чат. Здесь каждый тативные компьютеры. Они снова в Сети.
может предстать тем, кем ему сегодня больше всего Солнце в зените. День продолжается. День 2010
хочется быть. года в Интернете.
537
Передача информации
538
Интернет
ИНТЕРНЕТ И ЗАКОН
С развитием компьютерных и теле- лении уйти от реальности путём по-
коммуникационных технологий, и стоянной фиксации внимания на Ин-
Интернета в частности, появилась так тернете, это сопровождается разви-
называемая киберпреступность: не- тием интенсивных эмоций. Данный
санкционированный доступ к ком- процесс настолько захватывает чело-
пьютерной информации; умышлен- века, что начинает управлять его жиз-
ное нарушение работы web-сайтов; нью. Интернет заменяет дружбу, лю-
финансовые махинации в Интерне- бовь; поглощает время, силы, энергию
те; нарушения авторских прав; рас- и эмоции.
пространение вирусов; пропаганда
человеконенавистнических идео-
логий. ИНТЕРНЕТ
В современном уголовном зако-
нодательстве практически любого
И ПОЛИТИЧЕСКАЯ ЖИЗНЬ
государства совершение преступле-
ния с использованием технических Всего за несколько лет Интернет из уз-
средств (а Сеть и компьютер — тех- коспециальный компьютерной среды
нические средства) является отягча- развился в мощное информационное
ющим обстоятельством, увеличива- пространство. Сеть выступает как сред-
ющим наказание. ство общения, обмена информацией,
служит своеобразной трибуной для
политической пропаганды. Первым
ИНТЕРНЕТ-ЗАВИСИМОСТЬ
Интернет — это уникальное средство
для расширения контактов, но оно не ПРОГРАММИСТ СМЕНИЛ ФАМИЛИЮ
может заменить полноценное чело- НА НАЗВАНИЕ СВОЕГО САЙТА
веческое общение. Люди, сильно ув-
лекающиеся Интернетом, иногда те- Израильского программиста Томера Крисси не устраивала соб-
ряют грань реальности. Это приводит ственная фамилия. Фамилии, по его мнению, являются архаиз-
к Интернет-зависимости, или аддик- мом и имеют только историческую ценность. Томеру хотелось,
ции, которая представляет серьёзную чтобы в том, как его зовут, был какой-то смысл. Приложив не-
угрозу для здоровья (физического которые усилия, он сумел получить новый паспорт на имя То-
и психического). Человек становится мер.com.
беспомощным перед своим пристра- Теперь, утверждает программист, ему достаточно предста-
стием: волевые усилия ослабевают виться, чтобы собеседник понял, что у Томера есть собствен-
и не дают возможности противосто- ный сайт, где можно найти о нём всю необходимую информа-
ять зависимости. цию. Кроме того, такая фамилия подходит ему как нельзя лучше:
Значительный ущерб наносится некоторое время назад он страдал от Интернет-зависимости
межличностным отношениям. Пове- и проводил в Сети около 12 часов в сутки.
дение зависимых выражается в стрем-
539
Передача информации
540
Интернет
Бенджамин
Франклин
541
Передача информации
542
Интернет
543
ЗАЩИТА ИНФОРМАЦИИ
АВТОРСКОЕ ПРАВО В ЦИФРОВОЙ ВЕК
544
Защита информации
АВТОРСКОЕ ПРАВО
И ИНТЕРНЕТ Закон определяет программу как объективную форму представ-
ления совокупности данных и команд, предназначенных для
функционирования электронно-вычислительных машин (ЭВМ)
Развитие новых информационных
и других компьютерных устройств с целью получения опреде-
технологий положило начало про-
лённого результата, включая подготовительные материалы, по-
цессу перевода всей информации в
лученные в ходе её разработки, и порождаемые ею аудиовизу-
цифровой вид, а появление и повсеме-
альные отображения.
стное развитие Интернета, облегчив-
шее копирование и распространение
Авторское право — это часть гражданского права, кото- • право на публичное исполнение;
рая регулирует порядок использования произведений • право на передачу в эфир;
литературы, науки и искусства. Объектами авторского • право на сообщение для всеобщего сведения по ка-
права признаются также программы для компьютеров и белю (т. е. передавать произведение, включая показ, ис-
электронные базы данных. полнение или передачу в эфир, для всеобщего сведения
Охраняемое произведение должно быть результатом по кабелю, проводам или с помощью других аналогич-
творческого труда, продуктом интеллектуальной деятель- ных средств);
ности человека, оригинальным, отмеченным индивиду- • право на доведение до всеобщего сведения (т. е.
альностью автора. Результаты интеллектуальной деятель- сообщать произведение таким образом, при котором
ности называют интеллектуальной собственностью. любое лицо может иметь доступ к нему в интерактивном
Субъектами авторского права, т. е. лицами, облада- режиме из любого места и в любое время по своему
ющими исключительным правом на произведение, счи- выбору).
таются прежде всего авторы произведений. Правообла- Авторское право действует в течение всей жизни ав-
дателями также могут быть различные компании, тора и 70 лет после его смерти. По истечении срока охра-
приобретающие право на коммерческое использование ны произведение переходит в общественное достояние,
произведения, или наследники автора. его можно использовать, не спрашивая разрешения. Пра-
Авторские права делятся на личные неимуществен- во авторства, право на имя и право на защиту репутации
ные и имущественные права. Из неимущественных прав автора охраняются бессрочно.
автору принадлежат
• право авторства — право признаваться автором про-
изведения;
• право на имя — право использовать или разрешать
использовать произведение под именем автора или его
псевдонимом;
• право на обнародование — право обнародовать или
разрешать обнародовать произведение в любой форме;
• право на защиту репутации автора, право на защи-
ту произведения, включая его название, от всякого иска-
жения или иного посягательства, способного нанести
ущерб чести и достоинству автора.
Личные неимущественные права принадлежат авто-
ру независимо от его имущественных прав и сохраняют-
ся за ним, например, даже в случае передачи исключи-
тельных прав на публикацию произведения.
К имущественным правам автора относятся
• право на воспроизведение;
• право на распространение;
• право на переработку;
• право на импорт;
• право на перевод;
• право па публичный показ;
545
Передача информации
546
Защита информации
Российское законодательство отвечает всем принципам Согласно статье 146 Уголовного кодекса РФ, незакон-
международных соглашений об авторском праве. Оно ное использование объектов авторского права, а равно
включает разнообразные формы его защиты. За наруше- присвоение авторства, если эти деяния причинили круп-
ние авторских прав наступает гражданская, уголовная и ный ущерб, наказываются штрафом в размере от 200 до
административная ответственность. 400 МРОТ, либо в размере заработной платы или иного до-
Экземпляры произведения или программы, изготов- хода осуждённого за период от двух до четырёх месяцев,
ление или распространение которых влечёт за собой на- либо обязательными работами на срок от 180 до 240 часов,
рушение авторских прав, называются по закону контра- либо лишением свободы на срок до двух лет.
фактными (от фр. contrefac, on — «подделка»). В обиходе
же часто употребляется термин «пиратская копия» (от
англ. piracy — «нарушение авторского права»). Обладате-
ли авторских прав могут обратиться за защитой в суд и
вправе требовать от нарушителя признания прав автора;
восстановления положения, существовавшего до нару-
шения права, и прекращения действий, нарушающих пра-
во или создающих угрозу его нарушения; возмещения
убытков, включая упущенную выгоду; взыскания дохода,
полученного нарушителем вследствие нарушения автор-
ских и смежных прав; выплаты компенсации в сумме от
10 до 50 тыс. минимальных размеров оплаты труда
(МРОТ). Контрафактные экземпляры произведений под-
лежат конфискации и уничтожению.
В соответствии со статьёй 7.12 Кодекса Российской
Федерации об административных правонарушениях не-
законное использование контрафактных экземпляров вле-
чёт наложение на граждан административного штрафа в
размере от 15 до 20 МРОТ. Диски с контрафактной продукцией.
547
Передача информации
COPYRIGHT И «COPYLEFT»
548
Защита информации
549
Передача информации
ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ
550
Защита информации
• инженерно-техническую защи-
ту: камеры видеонаблюдения, интел-
лектуальные замки, ограничивающие ОШИБКИ И АВАРИИ
доступ в секретные помещения (к кон-
фиденциальной информации) посто-
ронних;
• законодательную защиту.
В России действует Федеральный
закон «Об информации, информати-
зации и защите информации» от 20
февраля 1995 г. Закон определяет ин-
формацию как сведения о лицах,
предметах, фактах, событиях, явле-
ниях и процессах независимо от фор-
мы их представления. Он регулирует
отношения, возникающие при фор-
мировании и использовании инфор-
мационных ресурсов на основе со-
здания, сбора, обработки, накопления, Ошибки и сбои в программном обеспечении так же опасны, как
хранения, поиска, распространения и компьютерные преступления. Услышав про очередной скан-
информации; создании и использо- дал, всегда хочется спросить, это ошибка или диверсия?
вании информационных технологий В столице Венесуэлы Каракасе Верховный суд отложил про-
и средств их обеспечения; защите ведение выборов в мае 2000 г. из-за ошибки в компьютерной
информации, прав субъектов, участ- системе.
вующих в информационных процес- 17 июня 2000 г. в Великобритании произошёл крупный сбой
сах и информатизации. Закон опре- в системе авиаперелётов. В течение дня поломка была ликви-
деляет, что защите подлежит любая дирована, но тысячам людей пришлось ночевать в аэропортах,
документированная информация, не- менять время вылета. Отрадно, что все они остались в живых
правомерное обращение с которой и сбой не привёл к авариям в воздухе.
может нанести ущерб её собственни- Из-за неполадок, случившихся в операционной системе ком-
ку, владельцу, пользователю и иному пьютера австралийской телефонной компании Telstra, 76 тыс.
лицу. Закон запрещает сбор, хране- абонентов не могли звонить по своим аппаратам.
ние, использование и распростране- В millennium после установки недостаточно отлаженной ком-
ние информации о частной жизни, пьютерной системы в Northeastern University (Северо-Восточ-
информации, нарушающей личную ный университет), США, было принято на 600 студентов (25%)
тайну, семейную тайну, тайну пере- больше, чем предполагалось. Руководство университета не зна-
писки, телефонных переговоров, поч- ло, что делать с лишними зачисленными абитуриентами.
товых сообщений граждан без их Беркли Банк заявил, что в результате установки более со-
согласия, кроме как на основании су- вершенного программного обеспечения нарушилась работа
дебного решения. Также защищается банка через Интернет, так как некоторые клиенты получили
право на доступ к открытой инфор- доступ к чужим счетам.
мации. Резервный банк Австралии отправил 64 клиентам инфор-
мацию о 0,5%-ном плановом увеличении процентной ставки
на 6 мин раньше срока, и за это время биржевые брокеры ухит-
рились продать долговых обязательств и векселей на сумму
3 млрд австралийских долларов, составив целые состояния на
этой ошибке.
Были и просто курьёзные случаи. Две женщины носили
одно и то же имя — Белинда Ли Перри и родились в один
день, 7 января 1969 г. Такое совпадение гарантировало им
постоянную путаницу. Регулярно одна Белинда обнаружива-
ла, что её данные в страховом полисе, банковских карточках
заменены другими. Единственный положительный момент во
всей этой истории состоит в том, что женщины подружились.
Как видно, имя и дата рождения не подходят на роль уникаль-
ного идентификатора.
551
Передача информации
ВИРУСЫ
Цифровой век несёт не только осво- Интересно отметить, что такое опре-
бождение людей от громоздких вы- деление довольно точно описывает
числений, автоматизацию всего, что компьютерный вирус, но под него
можно автоматизировать, но и свои подпадает ещё множество других
проблемы и заботы. Одной из таких программ.
проблем нашего времени являются Например, операционные систе-
компьютерные вирусы. Здесь всё как мы PC-DOS или MS-DOS и им подоб-
в жизни — есть свои болезни и свои ные могут создавать свои копии. А в
доктора. Windows работает множество частей
Компьтерный вирус — это про- системы, о которых пользователь да-
грамма, работающая на ЭВМ без ведо- же не догадывается. Что касается вре-
ма пользователя, наносящая обычно да, то любая программа, имеющая в сво-
вред компьютеру, как обычный ви- ём коде ошибки, способна нанести
рус — человеку, и способная созда- вашему компьютеру и хранящейся в
вать свои копии на доступных носи- ней информации большой урон.
телях информации (дисках, дискетах). Вирусы начали представлять серьёз-
ную угрозу для компьютера где-то в
70—80-х гг. XX в. Авторы вирусов,
ВИРУСЫ, КОТОРЫЕ пользуясь для создания новых «элек-
тронных приветов» различными недо-
МЫ ВЫБИРАЕМ работками в операционных системах
компьютеров, наплодили огромное
количество разной «заразы». Порой
здравомыслящему человеку трудно су-
дить о движущих ими мотивах. Кто-
то просто проводил эксперименты,
кто-то желал славы поджигателя-Ге-
рострата, кто-то всего лишь учился
программированию.
Предыстория компьютерных ви-
русов начинается с появлением ЭВМ
в учебных заведениях. Именно там
талантливые студенты-программи-
сты писали программы, которые «во-
евали» между собой за ресурсы ком-
пьютера — память, место на диске и
Структура мозаично- даже за такой фактор, как процессор-
го вируса, вторгнув-
шегося в биологиче- ное время — миллисекунды, отпущен-
скую клетку. ные процессору для решения одной
552
Защита информации
553
Передача информации
554
Защита информации
555
Передача информации
556
Защита информации
ТЕСТОВОЕ ПРОНИКНОВЕНИЕ
557
Передача информации
ПОИСК ПО ОТКРЫТЫМ
ИСТОЧНИКАМ
558
Защита информации
559
Передача информации
560
Защита информации
ХАКЕРЫ
561
Передача информации
562
Защита информации
«НЕЗАПЕРТЫЕ ДВЕРИ»
563
Передача информации
ПРЕДНАМЕРЕННОЕ ВРЕДИТЕЛЬСТВО
564
Защита информации
ПРОМЫШЛЕННЫЙ ШПИОНАЖ
ПИРАТЫ
565
Передача информации
566
Защита информации
567
Передача информации
568
Защита информации
569
Передача информации
Выдержка из прайс-
листа ПО фирмы
Microsoft
(фотография ШИФРОВАНИЕ ИНФОРМАЦИИ
с экрана).
Поиски надёжных способов секрет- Цезарь (102 или 100—44 до н. э.) ис-
ной передачи и хранения информа- пользовал его для тайной переписки.
ции корнями уходят далеко в прош- В шифре Цезаря каждая буква исход-
лое. Шифрование текстов — одна из ного сообщения сдвигается в алфа-
самых любимых игр в истории чело- вите на фиксированное число пози-
вечества. Шифры использовались в ций вперёд, при необходимости
военных целях, для передачи секрет- переходя циклически на начало ал-
ных сообщений между друзьями, для фавита. Сам Цезарь использовал сдвиг
хранения тайного знания и в сотнях на три позиции. В этом случае сооб-
других случаев. щение
Первые зашифрованные сооб-
щения использовались ещё в Древнем ВОЗВРАЩАЙТЕСЬ В РИМ
Египте. Способ шифрования был
очень прост, сейчас он называется ши- шифруется так:
фрование простой подстановкой.
Каждый иероглиф исходного сооб- ЕСКЕУГЬГМХИФЯ Е УЛП
щения заменялся на другой иероглиф
в зашифрованном сообщении. Соот- Здесь буква В шифруется буквой Е,
ветствие иероглифов было взаимно отстоящей от буквы В на три позиции,
однозначно, и, чтобы прочитать за- буква О — буквой С и так далее (счита-
шифрованное сообщение, требова- ется, что буквы Ё в алфавите нет). По-
лось выполнить обратную замену. следняя буква алфавита Я шифрова-
лась бы при этом методе как В . Для
расшифровки сообщения нужно сде-
ШИФР ЦЕЗАРЯ лать сдвиг на три позиции назад.
Шифр Цезаря определяется вели-
Примером наиболее простого шиф- чиной сдвига. Поскольку число раз-
ра, относящегося к группе шифров личных сдвигов на единицу меньше,
простой подстановки, является шифр чем число букв алфавита, разгадыва-
Цезаря. По свидетельству древнерим- ние шифра Цезаря не представляет
Гай Юлий Цезарь. ского историка Светония, Гай Юлий особого труда. Достаточно перебрать
570
Защита информации
571
Передача информации
суммарным объёмом около 500 тыс. чён криптографией. Сюжет его рас-
символов): сказа «Золотой жук» выстроен вокруг
разгадывания секретного сообщения.
О 0,1163 А 0,0890 Е 0,0833 Н 0,0697 Эдгар По верил, что раскрытие шиф-
И 0,0599 Т 0,0585 Л 0,0532 С 0,0528 ров и других загадок требует всего
Р 0,0418 В 0,0402 К 0,0332 М 0,0311 лишь применения логики и интеллек-
Д 0,0302 П 0,0280 У 0,0279 Я 0,0218 та. В 1893 г. в журнале «Alexander’s
Ь 0,0203 Ы 0,0185 Г 0,0184 Б 0,0173 Weekly Messenger» он бросил вызов
З 0,0172 Ч 0,0143 Й 0,0121 Ж 0,0120 читателям, утверждая, что разгадает
Х 0,0097 Ш 0,0087 Ю 0,0044 Щ 0,0031 любую криптограмму, использующую
Э 0,0029 Ц 0,0029 Ф 0,0014 Ъ 0,0002 подстановочный шифр, которую те
пришлют ему.
Таким образом, в любом тексте на «Человеческая изобретательность
каждую тысячу букв приходится в сред- не в силах состряпать шифр, который
нем 116 букв О, 89 букв А, 83 буквы Е, человеческая изобретательность не в
70 букв Н и т. д. Самыми редкими бук- силах была бы разгадать». Эти слова
вами являются буква Ф и Ъ: на 10 000 принадлежат Эдгару По. Однако со-
букв в среднем приходится всего лишь временная криптография опровергла
14 букв Ф и всего 2 Ъ! (Однако если бы утверждение знаменитого писателя.
после Октябрьской революции не бы- Современные шифры, использующие
ла проведена реформа правописания, кодирование с открытым ключом (см.
то, скорее всего, Ъ был бы одной из на- статью «Современная криптография»),
иболее часто встречающихся букв.) невозможно взломать даже с помощью
Не менее важной характеристикой самых мощных компьютеров.
текста являются частоты, с которыми
в тексте присутствуют различные двух-
буквенные сочетания. Такие пары в ШИФР ВИЖЕНЕРА
криптографии называют биграммами
или диграммами (не путать с диаграм- Блезом де Виженером, придворным
мами; «ди» — от греч. «двойной»). Вот короля Франции Генриха III, в конце
список наиболее часто встречающих- XVI в. был предложен весьма изящ-
ся в русских текстах биграмм в поряд- ный метод шифрования. Иногда этот
ке убывания их вероятности: шифр называют также шифром с пе-
рекрытием текста. Для шифрова-
ТО НА НЕ ПО НО ЛА СТ ОН ния используются секретное слово
РА АЛ КО ГО КА ЛО НИ ОВ или фраза. Нужно писать это секрет-
ное слово над исходным текстом, по-
На статистических характеристи- вторяя его, пока не кончится сообще-
ках текста основан метод разгадыва- ние. Каждая буква исходного текста
ния любого шифра из группы под- заменяется на отстоящую от неё в ал-
становочных шифров. Подсчитав фавите на несколько позиций. Вели-
частоты всех букв и биграмм в заши- чина сдвига задаётся буквой ключе-
фрованном сообщении, можно пред- вого (секретного) слова, стоящей над
положить, что наиболее частая в нём данной буквой исходного текста. Для
буква обозначает одну из наиболее буквы А сдвиг вообще отсутствует, бук-
часто встречающихся букв алфавита. ва Б соответствует сдвигу на одну
Аналогично самая частая биграмма позицию вперёд, буква В — сдвигу
зашифрованного текста соответству- на две позиции и т. д. Последняя бук-
ет, скорее всего, одной из наиболее ва — Я соответствует сдвигу на 31 по-
часто встречающихся биграмм в не- зицию, поскольку в русском алфави-
зашифрованных текстах. Конечно, те 32 буквы. То есть размер сдвига
помощь компьютера в статистиче- определяется порядковым номером
ском анализе зашифрованного текс- буквы в алфавите, из которого вычте-
та неоценима, но в принципе все эти на единица.
подсчёты можно провести и без ЭВМ. В примере в качестве ключевого
Знаменитый американский писа- используется слово ХОЛМС. Пусть надо
Эдгар Аллан По. тель Эдгар Аллан По также был увле- зашифровать сообщение
572
Защита информации
573
Передача информации
574
Защита информации
СОВРЕМЕННАЯ КРИПТОГРАФИЯ
575
Передача информации
576
Защита информации
L' = R;
R' = L ⊕ f(R, K),
R' ⊕ f(R, K) = L;
и преобразование
R = L';
L = R' ⊕ f(L', K)
577
Передача информации
578
Защита информации
СХЕМА ШИФРОВАНИЯ
С ОТКРЫТЫМ КЛЮЧОМ RSA
579
Передача информации
t ≡ s e (mod m)
процедуру дешифровки:
580
Защита информации
Основным объектом в элементарной теории чисел явля- Система представителей каждого класса называется си-
ется кольцо вычетов по модулю m, которое обозначает- стемой остатков. Математики чаще всего рассматривают
ся Zm. Кольцом в алгебре называется множество, элемен- неотрицательную систему остатков {0, 1, 2, ... , m–1}, но в
ты которого можно складывать и умножать. Например, программировании более удобна так называемая симмет-
кольцом является множество целых чисел Z. Пусть m — ричная система, состоящая из отрицательных и неотрица-
некоторое натуральное число. Кольцо Zm строится сле- тельных чисел, минимальных по абсолютной величине. Так,
дующим образом: всё множество целых чисел Z разби- для кольца Z5 симметричная система остатков состоит из
вается на m подмножеств, каждое из них составляют чис- чисел {–2, –1, 0, 1, 2}. Компьютер работает не с целыми
ла, разность которых кратна m. Нулевое подмножество числами, а с элементами кольца вычетов по модулю m =
состоит из чисел {... –m, 0, m, 2m, ...}, первое подмноже- = 232. Те числа, которые программисты называют положи-
ство — из чисел {... –m+1, 1, m+1, 2m+1, ...}, m–1-ое — тельными и отрицательными, являются на самом деле эле-
из чисел {... –1, m–1, 2m–1, 3m–1, ...}. Эти подмножест- ментами симметричной системы остатков этого кольца.
ва в математике называются классами. Указанные клас- Важность колец Z m на практике вытекает из того, что
сы являются элементами кольца Zm, всего их m штук. Опе- эти кольца содержат конечное число элементов и при вы-
рации сложения и умножения классов проводятся с их числениях в них числа не растут до бесконечности. Вы-
представителями — по одному от каждого класса. И тот числения с «настоящими» целыми числами проводятся
класс, в который попадает сумма (произведение), по оп- крайне редко. Объясняется это тем, что при умножении
ределению является суммой (произведением) двух исход- целых чисел результат очень быстро растёт.
ных классов. Например, произведение двух 100-значных десятич-
Тот факт, что два числа — x и y принадлежат одному ных чисел состоит уже из 199 или 200 цифр, возвести же
и тому же классу (т. е. их разность делится на m), запи- 100-значное число в 100-значную степень вообще нере-
сывается в математике следующим образом: x ≡ y (mod ально: результат превышает даже количество элементар-
m). Читается: «x сравнимо с y по модулю m». ных частиц во Вселенной!
581
Передача информации
АЛГОРИТМ ЕВКЛИДА
Одним из краеугольных камней элементарной тео- вычетов (целые числа невозможно возводить в боль-
рии чисел является алгоритм Евклида: даны два це- шие степени, поскольку они при этом очень быстро
лых числа n и m, нужно найти их наибольший общий растут). Идея этого алгоритма состоит в том, что мы
делитель d = НОД(m, n). Для этого пара чисел (n, m) сводим возведение в степень к операциям возведе-
последовательно заменяется на пару (m, r), где r — ния в квадрат и умножения. Эти операции выполня-
остаток от деления n на m, т. е. n = qm+r. Поскольку ются в кольце Zm. Пусть надо возвести элемент s в
общие делители пар (n, m) и (m, r) совпадают, то НОД(n, степень e. Используется следующий алгоритм:
m) = НОД(m, r). С другой стороны, НОД(m, 0) = m.
Поскольку при замене (n, m) на (m, r) второе число алг цел быстрое возведение в
уменьшается, то через конечное число шагов оно ста- | степень (цел s, e)
нет равным нулю, при этом первое число пары будет | дано: число s, показатель
равно НОД исходной пары чисел. | степени e
Алгоритм Евклида очень быстрый, число шагов в | надо: возвести s в степень е
нём примерно равно количеству битов в двоичной за- | в кольце вычетов
писи числа, т. е. для 100-значных десятичных чисел | нач цел p
алгоритм Евклида завершается примерно через 330 | p := 1
шагов. На практике чрезвычайно важен расширен- | цикл пока e > 0
ный алгоритм Евклида, позволяющий выразить d = | | если e/2*2=e | e-чётное
= НОД(n, m) в виде линейной комбинации чисел n и m: | | | то e:= e/2; s:= s*s
| | | иначе e:= e-1; p:= p*s
d = un + vm, | | всё
| кц
где u и v — некоторые целые числа. Расширенный ал- | знач:= p
горитм Евклида позволяет вычислить обратный к n эле- кон
мент в кольце вычетов по модулю m. Элемент u назы-
вается обратным к n, если их произведение равно Справедливость алгоритма вытекает из того, что
единице в кольце Zm. Например, в кольце Z5 величина pse остаётся неизменной после каждого
выполнения тела цикла. Вначале она равна s e, по-
2 .3 = 6 ≡ 1 (mod 5), скольку p = 1. По окончании алгоритма e = 0, сле-
довательно, pse = p, т. е. в p содержится искомая
следовательно, число 2 является обратным к числу 3 в степень первоначального значения s. Алгоритм так-
кольце Z5. Число n обратимо в кольце вычетов по мо- же работает очень быстро, количество шагов не пре-
дулю m тогда и только тогда, когда n взаимно просто восходит удвоенного числа битов двоичной записи
с m, т. е. НОД(n, m) = 1. Применив расширенный ал- числа e. В частности, если e — 100-значное десятич-
горитм Евклида, можно найти такие числа u и v, что ное число, то число шагов алгоритма примерно рав-
но 600.
1 = un + vm.
1 ≡ un (mod m),
582
Защита информации
Подлинной жемчужиной теории чисел является малая Теорема Эйлера: пусть m — произвольное натуральное
теорема Ферма. число, отличное от единицы, b — целое число, взаимно
Пусть m — простое число (т. е. число, делящееся без простое с m, тогда
остатка только на себя и на единицу). Тогда для всяко-
φ (m)
го целого числа b, не делящегося на m, справедливо b ≡ 1 (mod m).
сравнение
Функция Эйлера легко вычисляется с помощью дру-
b m - 1 ≡ 1 (mod m). гой классической теоремы — китайской теоремы об
остатках, которая здесь не приводится. В схеме RSA за-
Например, пусть m=7, b=2, тогда действован частный случай теоремы Эйлера для m = pq,
где p и q — два разных простых числа. В этом случае
26 = 64 = 9.7 + 1 ≡ 1 (mod 7).
φ (m) = (p –1)(q –1).
Существует также другая форма малой теоремы Фер-
ма. Пусть m — простое число. Тогда для всякого целого Существует следующее усиление теоремы Эйлера:
числа b справедливо тождество пусть m = pq, где р и q — разные простые числа. Тогда
для любого целого числа b и для любого натурального k
bm ≡ b (mod m). справедливо тождество
kφ (m)+1
Леонард Эйлер в XVIII в. обобщил малую теорему Фер- b ≡ b (mod m).
ма для случая произвольного числа m. По определению,
функцией Эйлера (m) называют количество обратимых В этом случае уже не требуется, чтобы число b бы-
элементов кольца Zm. ло взаимно просто с числом m.
583
СОВРЕМЕННЫЕ
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ
ИНФОРМАЦИОННОЕ
И ПОСТИНФОРМАЦИОННОЕ ОБЩЕСТВО
584
Современные информационные технологии
585
Информация и информатика
586
Современные информационные технологии
587
Информация и информатика
588
Современные информационные технологии
ИНФОРМАЦИОННЫЕ ВОЙНЫ
В будущем самыми жестокими боями без правил в будет бомбить страну Z, то для агрессора главными
электронных СМИ будут информационные войны. станут не боевые действий, а сражения на страницах
Аксиомой станет выражение: «Кто владеет инфор- газет и журналов, на ТВ-экранах и в радиоэфире. Ес-
мацией, правит миром». Информация, скорость её ли о реальной войне нельзя не сообщать, то войну мож-
получения и обработки, напрямую будет связана с но назвать «мелкими столкновениями конкурирующих
успешностью в бизнесе. Вся деловая активность со- бандитских группировок». Ну а если всё-таки прихо-
средоточится в сфере купли-продажи акций пред- дится говорить о полномасштабных военных действи-
приятий и поставок. Поэтому конкурирующие орга- ях, то будут смещены оценочные характеристики.
низации будут использовать все имеющиеся каналы Никто не узнает правды, если страну-агрессора на-
получения информации, и неоценимую помощь в этом звать государством, борющимся с «осью зла». Банди-
оказывают все СМИ, в которых информация присут- тов, наркодельцов и торговцев людьми, прикрыва-
ствует как в чистом, подробном виде, так и в анали- ющихся националистическими лозунгами, можно
тических материалах, упоминаниях в иных контекс- именовать борцами за свободу и независимость, а тех,
тах, намёках и в случайных цитатах. СМИ будут ещё кто пытается противостоять им, клеймить как органи-
больше гоняться за эксклюзивной, особенной, недо- заторов геноцида. С другой стороны, жестокость воен-
ступной конкурентам информацией, чтобы размес- ных или полицейских сил по отношению к простым
тить её у себя, опередить и выиграть зрителя-слуша- людям можно легко скрыть за рассказами о борьбе с
теля. При этом политики, представители власти будут бандитскими формированиями и их пособниками, пугая
использовать СМИ в своих целях активно и беззас- население уже случившимися или ожидаемыми терак-
тенчиво. Естественно, что журналистика даёт пред- тами. Политики, крупные бизнесмены и целые госу-
ставления и знания человека об окружающем мире, дарства будут всё больше прибегать к информацион-
и сведения об этом мы можем получать только из ным и пропагандистским ресурсам журналистики.
СМИ. Часто нам кажется, что мнение по поводу ка- На этом фоне сами войны будут просто играми в
кого-то факта мы формируем сами, исходя из собст- песочнице.
венных аналитических способностей. Однако это не
так. Мы пользуемся информацией, которую нам кто-
то предоставляет, и она может быть как субъектив-
ной, так и объективной. Она может быть дозиро-
ванной и содержать необходимые информатору
акценты и сведения. Например, СМИ могут со-
общать только о повышении жизненного
уровня в Европе и Америке. И никто и ни-
когда не узнает о голоде где-нибудь в
Африке, потому что об этом никто не
сообщил. Мир огромен, и обычный
человек не может знать, что
происходит не только на
другом конце света, но и
в соседнем городе, если
у него нет там знакомых.
Выигрывать войны
будет тот, кто в своих
интересах будет исполь-
зовать средства информа-
ции, формируя обществен-
ное мнение. Если страна X
589
Информация и информатика
590
Современные информационные технологии
ПРАВО ЧИТАТЬ,
СЛУШАТЬ, СМОТРЕТЬ
591
Информация и информатика
592
Современные информационные технологии
593
Информация и информатика
594
Современные информационные технологии
Рабочее место
современного
композитора.
КИНО И ФОТО В НОВОЙ ЭПОХЕ
595
Информация и информатика
596
Современные информационные технологии
Кадр из фильма
«Последняя
фантазия. Духи».
597
Информация и информатика
ОТ ЧЁРНО-БЕЛОЙ
ФОТОГРАФИИ
К МОНТАЖНЫМ СТУДИЯМ
Цифровые технологии незаслуженно
часто обвиняют в бездушности. Фо-
Кадр из фильма Появление цифровых актёров тохудожники XX в. использовали ана-
«Последняя фантазия. приведёт к большим изменениям у логовые широкоплёночные фотоап-
Духи».
настоящих работников этой профес- параты, тщательно выбирали сюжет
сии. Гильдия актёров (Screen Actors фотографии, место и освещение. Для
Guild — SAG) серьёзно обеспокоена проявки плёнки изготавливали соб-
тем, что в скором времени обычные ственные составы реактивов. Процесс
актёры, особенно статисты, могут печати был продолжителен и требо-
остаться без работы. На роль партнёр- вал специальных условий (проходил
ши Аль Пачино в фильме «Симона» в темноте). Но вся цепочка от съёмки
режиссёр Эндрю Николь разыскивал до выставки содержала в разной сте-
цифровую актрису, так как предло- пени элементы творчества. Сейчас
женные живые его не устроили. Впо- технология изменилась.
следствии шум слегка улёгся, когда Большинство операций произво-
оказалось, что сценарный замысел дится при помощи компьютера, а фо-
перепутали с режиссёрским запросом. тограф определяет лишь сюжет и объ-
Главная героиня должна быть просто ект съёмки. Можно сказать, что всё
ненастоящей. остальное делается компьютером, а
Не исключено, что незавидная не художником, которому остаётся
судьба ожидает настоящих звёзд Гол- только «нащёлкать плёнку» на одно-
ливуда. Так, образ реального актёра разовом фотоаппарате и отдать её в
может быть использован для создания студию на обработку. Машина всё
его цифрового дублёра. Известный ак- выполнит сама. И в результате полу-
тёр Чарли Шин предложил образовать чатся фотографии неплохого каче-
комитет, который защитил бы его ства. При старой технологии гаран-
коллег от копирования. тированного результата добиться
В конце 2002 г. на экраны вышла было довольно сложно.
очередная компьютерная лента «Эли- Но осталось немало художников,
зиум». Этот анимационный фильм использующих аналоговые фотоап-
уже неуместно называть мультиплика- параты и раритетную технологию и
ционным, так велико ощущение реаль- считающих, что при цифровой твор-
ности происходящего на экране, хотя чество сведено на нет.
На самом деле новая технология
Карта памяти даёт художнику ещё больше просто-
современного ра для творчества. Просто место тём-
сотового телефона.
ной комнаты, химикатов и фото-
увеличителя заняли компьютер и
программы обработки изображений.
И неважно, использует настоящий ху-
дожник мольберт и палитру или ком-
пьютер и принтер.
598
Современные информационные технологии
АВТОМОБИЛЬ
И ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ
599
Информация и информатика
600
Современные информационные технологии
Концепт-кар «Лада»
Автосалон-99. Москва.
601
Информация и информатика
ЭЛЕКТРОННЫЙ ДОМ
602
Современные информационные технологии
ЧУДО-ПЕЧЬ
603
Информация и информатика
604
Современные информационные технологии
605
Информация и информатика
***
ют преимущество в скорости, но у
Поражённый церебральным парали- них нет интеллекта. Однако скорость
чом английский учёный и мыслитель и сложность компьютеров удваива-
Стивен Хокинг, которого порой на- ется каждые 18 месяцев, и в будущем
зывают вторым Эйнштейном, в кни- они смогут достичь уровня сложно-
ге «Краткая история времени» пишет: сти мозга человека», — убеждён Сти-
«Человечеству необходимо улучшить вен Хокинг. Также, по его прогнозам,
умственный и физический уровень, в истории наступит новая эра — пе-
чтобы справиться со всё более услож- риод планируемой эволюции, когда
няющимся миром и решать новые на эмбриональной стадии смогут
проблемы, связанные, в частности, с определять и выбраковывать патоло-
космическим перелётами». гические отклонения в развитии
По мнению Хокинга, человеку не- человека, и благодаря этому люди бу-
обходимо становиться всё более и дущего будут обладать отменным здо-
более совершенным, чтобы «бежать ровьем и жить до 120 лет.
впереди электронных умников».
«В данный момент компьютеры име- ***
По прогнозам японских учёных, в пер-
вом десятилетии нового века появит-
ся карманный компьютер, в корпусе
которого будут соединены факс и ви-
део. Компьютеры смогут мгновенно
переводить на все языки мира не толь-
ко тексты, но и разговорную речь. Бла-
годаря компьютерам синтезируют ис-
кусственную кровь, будут побеждены
СПИД и атеросклероз. В дальнейшем
люди научатся использовать искусст-
венные глаза и мозг.
***
По прогнозам журнала «Forbes ASAP»,
компьютер ближайшего будущего
представляет собой устройство, че-
рез которое «будет работать всё, на-
Стивен Хокинг. чиная от охранной сигнализации и
606
Современные информационные технологии
607
Информация и информатика
608
Современные информационные технологии
609
СОДЕРЖАНИЕ
614
Динамические структуры данных Использование объектов-наследников
и ссылочные реализации как родительских объектов (Борис Назаров) . . . .204
(Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . .120 Полиморфизм (Борис Назаров) . . . . . . . . . . . . . . . . . .205
Проблемы непрерывности Языки искусственного интеллекта
(Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .122 (Валерий Шилов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .209
Сортировка (Валерий Шилов) . . . . . . . . . . . . . . . .130
О важности порядка (Валерий Шилов) . . . . . . . . . .132 ПРОГРАММИСТЫ И
Построение информационных моделей ПРОГРАММИРОВАНИЕ
(Анатолий Кушнеренко, Августа Ада Байрон, Леди Лавлейс
Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .135 (Вера Леонова) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .214
Информационная модель транспортной сети Программисты (Александр Леонов) . . . . . . . . . .217
(Анатолий Кушниренко, Александр Леонов) . . . . . .137 Рекурсия (Юрий Первин) . . . . . . . . . . . . . . . . . . . . . .219
Параллельное программирование Кукарача (Юрий Первин) . . . . . . . . . . . . . . . . . . . . . . . . .222
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .138 Вычисление факториала числа n
Информационные модели в геометрии (Юрий Первин) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .226
(Анатолий Кушниренко, Александр Леонов) . . . . . .139 Как писать надёжные программы
Семафоры (Александр Леонов) . . . . . . . . . . . . . . . . . .142 (Яков Зайдельман) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .227
Задача о треугольнике (Яков Зайдельман) . . . . . . . .228
ТЕОРИЯ ПРОГРАММИРОВАНИЯ Как писать красивые программы?
Математическая логика (Валерий Шилов) . .146 (Яков Зайдельман) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .230
Возможна и другая логика (Валерий Шилов) . . . .154
Теория алгоритмов (Валерий Шилов) . . . . . . .155 ХРАНЕНИЕ
Нормальные алгоритмы маркова И ОБРАБОТКА ИНФОРМАЦИИ
(Валерий Шилов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .155
Алгоритмически неразрешимые проблемы ХРАНЕНИЕ ИНФОРМАЦИИ
(Валерий Шилов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158 Компьютер и книгопечатание
Сложность алгоритмов (Валерий Шилов) . . .160 (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .238
Полиномиальные и экспоненциальные Бумага (Валерий Шилов) . . . . . . . . . . . . . . . . . . . . . .240
алгоритмы (Валерий Шилов) . . . . . . . . . . . . . . . . . . . . .163 Библиотека для учёных (Александр Леонов) . . . . .241
Теория формальных языков. лПДЙТПЧЛЙ ФЕЛУФБ
Перевод и компиляция (Нина Подольская) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .242
(Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . .164 Текстовые редакторы
Программы LEX и GREP (Нина Подольская) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245
(Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .169 Макетирование (Руслан Сурин) . . . . . . . . . . . . . .248
Доказательство правильности программ Редактор текстов (Нина Подольская) . . . . . . . . .249
(Яков Зайдельман) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .175 Электронные таблицы
Алгоритм эвклида на языке PASCAL (Нина Подольская) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .250
(Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .177 Об алгоритме «весы» (и/или) (Сергей Бебчук) . . . .255
Системы управления базами данных
ЯЗЫКИ ПРОГРАММИРОВАНИЯ (Сергей Бебчук) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .255
Язык программирования лого Хеширование (Александр Леонов) . . . . . . . . . . . . . . .261
(Юрий Первин) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .178 Реляционные базы данных
История языков программирования (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .262
(Борис Назаров) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182 Что такое один гигабайт (Александр Леонов) . . . .263
Неструктурированный код (Борис Назаров) . . . . .191
Структурированный код (Борис Назаров) . . . . . . .192 ОПЕРАЦИОННАЯ СИСТЕМА
Массивы (Борис Назаров) . . . . . . . . . . . . . . . . . . . . . . . .193 КОМПЬЮТЕРА
История написания первого компилятора Возникновение операционных систем
языка PASCAL (Борис Назаров) . . . . . . . . . . . . . . . . . .194 (Глеб Райко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .266
Массивы и указатели (Борис Назаров) . . . . . . . . . . .196 Что такое операционная (Глеб Райко) . . . . . . . . . . . .267
Язык С и операционная система UNIX Система (Глеб Райко) . . . . . . . . . . . . . . . . . . . . . . . . . .267
(Борис Назаров) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197 Планировщик процессов (Глеб Райко) . . . . . .269
PLANKALKUL — первый язык Формула вычисления приоритетов
программирования (Валерий Шилов) . . . . . . . . . . . .198 (Глеб Райко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .272
Объектно-ориентированные языки Размеры операционных систем (Глеб Райко) . . . . .273
программирования (Борис Назаров) . . . . . . . .199 Подсистема управления памятью
Интерфейс и реализация . . . . . . . . . . . . . . . . . . . . . . . . .202 (Глеб Райко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .274
615
Использование виртуальной памяти ИГРЫ
для защиты внутри процесса (Глеб Райко) . . . . . . .277 Компьютерные игры
Пример работы механизма (Николай Забродоцкий) . . . . . . . . . . . . . . . . . . . . . . .346
виртуальной памяти (Глеб Райко) . . . . . . . . . . . . . . . .278 Тренажёры (Николай Забродоцкий) . . . . . . . . .349
Файловая система (Глеб Райко) . . . . . . . . . . . . . . .281 Феномен «тетриса» (Николай Забродоцкий) . . . . . .349
Имена (Глеб Райко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .283 Искусственные реальности
Файлы в oc unix (Глеб Райко) . . . . . . . . . . . . . . . . . . . . .284 (Вера Леонова) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .351
А если их много? (Глеб Райко) . . . . . . . . . . . . . . . . . . . .285 От игр — к знаниям (Александр Леонов) . . . .356
Подсистема управления вводом-выводом
и драйверы устройств (Глеб Райко) . . . . . . . . . .286 КОМПЬЮТЕР
Прикладной программный интерфейс
(Глеб Райко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .288 ИСТОРИЯ ДОКОМПЬЮТЕРНОЙ ЭПОХИ
ОС UNIX (Глеб Райко) . . . . . . . . . . . . . . . . . . . . . . . . . .290 На пути к счётной машине
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .360
МУЛЬТИМЕДИА Абак и счёты (Валерий Шилов) . . . . . . . . . . . . . . .362
Переход к цифровому представлению Кто был первым? (Валерий Шилов) . . . . . . . . . . . . . .365
информации (Александр Леонов) . . . . . . . . . . . .294 Блез Паскаль (Валерий Шилов) . . . . . . . . . . . . . . .366
Векторная и растровая графика Готфрид Вильгельм Лейбниц
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .297 (Вера Леонова) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .368
Разрешение (Александр Леонов) . . . . . . . . . . . . . . . . .300 Чарлз Бэббидж (Вера Леонова) . . . . . . . . . . . . . .371
Что может 3d-ускоритель Машины Бэббиджа (Александр Леонов) . . . . .374
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .304 Герман Холлерит (Валерий Шилов) . . . . . . . . . .379
Цифровая фотография Первая перепись населения в России
(Николай Забродоцкий) . . . . . . . . . . . . . . . . . . . . . . .306 (Валерий Шилов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .380
Цифровое видео Автоматизация и перфокарты
(Николай Забродоцкий) . . . . . . . . . . . . . . . . . . . . . . .307 (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .382
Аудиомонтаж (Александр Леонов, «Научные» калькуляторы
Вера Леонова) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .310 (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .384
Конрад Цузе (Валерий Шилов) . . . . . . . . . . . . . . .386
ВЫЧИСЛЕНИЯ Аналоговые машины
Вычисления на компьютере (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .390
(Анатолий Грушин) . . . . . . . . . . . . . . . . . . . . . . . . . . .312
Ошибка округления (Анатолий Грушин) . . . . . . . . . .316 ЭВОЛЮЦИЯ КОМПЬЮТЕРА В ХХ ВЕКЕ
Цена ошибок в вычислениях Первое поколение компьютеров
(Анатолий Грушин) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .318 (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .394
Методы вычислений (Сергей Ищенко) . . . . . .319 Джон Винсент Атанасов (Вера Леонова) . . . .398
Интервальная арифметика Второе поколение компьютеров
(Сергей Ищенко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .321 (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .400
Точность метода Ньютона Запоминающие электронно-лучевые трубки
(Анатолий Кушниренко) . . . . . . . . . . . . . . . . . . . . . . . . . . .324 и ультразвуковые линии задержки
Метод Ньютона (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . .401
(Анатолий Кушниренко) . . . . . . . . . . . . . . . . . . . . . .324 Ферритовые сердечники
Что пишет Ньютон (Анатолий Кушниренко) . . . . . .325 и магнитные барабаны (Александр Леонов) . . . . .402
Компьютерная алгебра Аппарат прерываний (Александр Леонов) . . . . . .405
(Евгений Панкратьев) . . . . . . . . . . . . . . . . . . . . . . . .326 Большие системы (Александр Леонов) . . . . . . . . .406
Третье поколение компьютеров
АВТОМАТИЗАЦИЯ (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .407
ИНТЕЛЛЕКТУАЛЬНОЙ ДЕЯТЕЛЬНОСТИ Мини-компьютеры (Александр Леонов) . . . . .410
Компьютерное моделирование Параллельные вычисления
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .330 (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .412
Построение информационных систем Алексей Андреевич Ляпунов
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .334 (Вера Леонова) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .416
Экспертные системы (Валерий Шилов) . . . . .336 Троичная система счисления
Распознавание образов и троичная ЭВМ (Валерий Шилов) . . . . . . . . . . .418
(Пётр Кольцов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .339 Задача Баше о весах (Валерий Шилов) . . . . . . . . . . .419
«Мыслительная машина» (Валерий Шилов) . . . . . .340 Отечественные ЭВМ
Домашний офис (Александр Леонов) . . . . . . . .343 (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .420
616
Машина для инженерных расчётов (Владимир Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .488
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .422 Сетевая ОС (Владимир Леонов) . . . . . . . . . . . . . . . . . .491
Технология беспроводной связи
СОВРЕМЕННЫЙ КОМПЬЮТЕР (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .491
Четвёртое поколение компьютеров На пути к радио (Александр Леонов) . . . . . . . . . . . . .492
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .424 Что с чем соединять (Александр Леонов) . . . . . . . .495
Типы интегральных схем (Александр Леонов) . . . .428
Производство микропроцессоров ИНТЕРНЕТ
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .433 Зарождение, развитие и устройство
Проектирование интегральных схем интернета (Михаил Кузьменко) . . . . . . . . . . . . . . .498
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .434 Доступ в Интернет (Михаил Кузьменко) . . . . .503
Эволюция памяти ЭВМ Каналы связи (Михаил Кузьменко) . . . . . . . . . . . . . . . .506
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .437 Какой канал выбрать?(Михаил Кузьменко) . . . . . . .507
Магнитная запись (Александр Леонов) . . . . . . . . . . .441 Классические сервисы Интернета
Кэш нам поможет (Александр Леонов) . . . . . . . . . . .443 (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .507
«Блеск и нищета» IBM (Александр Леонов) . . .444 Работа программы TELNET (Михаил Кузьменко) . . .508
О чём не знал Стив Джобс Работа программы FTP (Михаил Кузьменко) . . . . . . .509
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .448 Анонимный FTP (Михаил Кузьменко) . . . . . . . . . . . . .510
Macintosh на рубеже веков (Руслан Сурин) . . . . . . .450 Особенности «электронного» стиля письма
Уильям (Билл) Генри Гейтс III (Вера Леонова) . . . .452 (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .511
Изобретение электронной почты
КОМПЬЮТЕР XXI ВЕКА (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .512
Компьютер и здоровье world wide web (Михаил Кузьменко) . . . . . . . . .513
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .454 Первый сайт (Михаил Кузьменко) . . . . . . . . . . . . . . . .515
Упражнения для разминки Масштабы сети Интернет
(Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .458 (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .518
Нейросети (Александр Левый) . . . . . . . . . . . . . . . .459 Коммерция в интернете
Искусственные нейронные сети (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .519
(Александр Левый) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .460 Сайт eBay.com (Михаил Кузьменко) . . . . . . . . . . . . . .520
Нанотехнологии Поиск в интернете (Михаил Кузьменко) . . . . .523
(Анатолий Кушниренко) . . . . . . . . . . . . . . . . . . . . . .461 Как искать (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . .526
«Там, в глубине...» (Анатолий Кушниренко) . . . . . . .464 Где искать (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . .527
Нанороботы (Анатолий Кушниренко) . . . . . . . . . . . . .468 «Электронное правительство»
Будущее вычислительных машин (Татьяна Самарская) . . . . . . . . . . . . . . . . . . . . . . . . . .528
(Анатолий Кушниренко) . . . . . . . . . . . . . . . . . . . . . .468 Виртуальное образование в Европе
Закон Мура (Анатолий Кушниренко) . . . . . . . . . . . . . .470 (Татьяна Самарская) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .530
Успехи интегральных технологий «E-Austria в Европе» (Татьяна Самарская) . . . . . . . . .531
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .471 Электронные библиотеки
Проектные нормы (Александр Леонов) . . . . . . . . . . .472 (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .532
Квантовые компьютеры Интернет и общество
(Александр Левый) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .473 (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .535
Компьютер 2010 года (Александр Леонов) . . .474 Утро 2010 года в интернете . . . . . . . . . . . . . . . . . . . . . .536
Программист сменил фамилию на название
ПЕРЕДАЧА ИНФОРМАЦИИ своего сайта (Михаил Кузьменко) . . . . . . . . . . . . . . . . .539
Как Интернет затрагивает самые разные
ПЕРЕДАЧА ИНФОРМАЦИИ стороны жизни. Виртуальное кладбище
И КОМПЬЮТЕРНЫЕ СЕТИ (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .530
Передача информации на большие Свобода слова и цензура в интернете
расстояния (Александр Леонов) . . . . . . . . . . . . . . .480 (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .540
Передача информации между Управление интернетом (Михаил Кузьменко) . . . .542
компьютерами (Владимир Леонов) . . . . . . . . . . .482 Запрет на интернет (Михаил Кузьменко) . . . . . . . . .543
Модем (Владимир Борисенко) . . . . . . . . . . . . . . . .484
Как работает модем ЗАЩИТА ИНФОРМАЦИИ
(Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . . .485 Авторское право в цифровой век
ISDN и мобильные телефонные сети (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .544
(Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .485 Что такое авторское право
Какие бывают компьютерные сети (Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .545
617
Из истории авторского права (Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . .575
(Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .545 Устройство «Энигмы» (Владимир Борисенко) . . . .576
Ответственность за нарушение Кольцо вычетов по модулю m
авторского права (Михаил Кузьменко) . . . . . . . . . . . .547 (Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .581
Copyright и «copyleft» Алгоритм Эвклида (Владимир Борисенко) . . . . . .582
(Анатолий Кушниренко) . . . . . . . . . . . . . . . . . . . . . .548 Малая теорема Ферма и теорема Эйлера
Информационная безопасность (Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .583
(Михаил Кузьменко) . . . . . . . . . . . . . . . . . . . . . . . . . . . .550
Ошибки и аварии (Татьяна Самарская) . . . . . . . . . . .551 СОВРЕМЕННЫЕ ИНФОРМАЦИОННЫЕ
Вирусы (Николай Забродоцкий) . . . . . . . . . . . . .552 ТЕХНОЛОГИИ
История одного вируса Информационное
(Николай Забродоцкий) . . . . . . . . . . . . . . . . . . . . . . . . . . .553 и постинформационное общество
Самый известный «троянец» (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .584
(Николай Забродоцкий) . . . . . . . . . . . . . . . . . . . . . . . . . . .555 Производители массовой информации . . . .586
Тестовое проникновение Информационные войны
(Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .557 (Ильмира Маликова) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .589
Хакеры (Михаил Кузьменко) . . . . . . . . . . . . . . . . . .561 Аудио xxi века (Александр Леонов) . . . . . . . . . . .590
Компьютерные преступления Программирование музыки
(Татьяна Самарская) . . . . . . . . . . . . . . . . . . . . . . . . .563 (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .592
«Незапертые двери» (Татьяна Самарская) . . . . . . . .563 Кино и фото в новой эпохе
Преднамеренное вредительство (Александр Леонов) . . . . . . . . . . . . . . . . . . . . . . . . . . . .595
(Татьяна Самарская) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .564 Автомобиль и информационные
Пираты (Николай Забродоцкий) . . . . . . . . . . . . .565 технологии (Александр Леонов) . . . . . . . . . . . . . .599
Промышленный шпионаж (Татьяна Самарская) . .565 Электронный дом (Александр Леонов) . . . . . .602
Пиратский словарь (Николай Забродоцкий) . . . . . .568 Чудо-печь (Александр Леонов) . . . . . . . . . . . . . . . . . . .603
Шифрование информации Прогнозы на ближайшее столетие
(Владимир Борисенко) . . . . . . . . . . . . . . . . . . . . . . . .570 (Вера Леонова) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .604
Современная криптография
618