Впервые услышав выражение «информационный век», я основательно призадумался. Я знал о железном и бронзовом веках – исторических периодах, названных так по тем новым материалам, из которых тогда делали инструменты и оружие. Тут все понятно. Но вот я читаю пророчества ученых о том, что скоро государства будут бороться за контроль над информацией, а не над природными ресурсами. Звучит весьма интригующе, но что подразумевается под «информацией»?
Утверждение о том, что будущее за информацией, напомнило мне знаменитую сцену из фильма The Graduate (Выпускник), вышедшего на экраны в 1967 году. Некий бизнесмен трогает за пуговицу Бенджамена, выпускника колледжа (его играл Дастин Хофман), и произносит всего одно слово: «Пластмассы». Так он напутствует молодого человека в начале его карьеры. Интересно, если бы эту сцену написали несколько десятилетий спустя, не сказал бы тот бизнесмен иначе: «Информация»?!
Представляю, какие абсурдные разговоры могли бы вестись в деловом мире: «Сколько у Вас информации?», «Швейцария – великая страна, у них столько информации!», «Я слышал, индекс стоимости информации пошел вверх!» Абсурдны они потому, что информация, хотя и играет все более значимую роль в нашей жизни, не является чем-то осязаемым и не поддается точному измерению, как материалы – «лица» прежних эпох.
Информационная революция только начинается. Средства связи неизбежно подешевеют – так же резко, как в свое время вычислительная техника. Когда их стоимость достаточно снизится и «срезонирует» с другими достижениями технологии, ретивые администраторы и нервные политики перестанут упоминать выражение «информационная магистраль» просто потому, что оно модно и престижно. Магистраль станет реальностью и, как электричество, вызовет далеко идущие последствия. Чтобы понять, почему информация становится и центр всего и вся, важно понять, как технология изменяет способы ее обработки.
Об этом главным образом и пойдет речь в данной главе. Слабо подготовленные читатели, не знающие принципов работы вычислительной техники и истории ее развития, получат необходимый минимум сведений, чтобы продолжить чтение книги. А если Вы знаете, как работают цифровые компьютеры, можете спокойно пролистать несколько страниц и перейти сразу к третьей главе.
Самая фундаментальная отличительная черта информации в будущем – почти вся она станет цифровой. Уже сейчас во многих библиотеках печатные материалы сканируют и хранят как электронные данные на обычных или на компакт-дисках. Газеты и журналы теперь зачастую готовят в электронной форме, а печатают на бумаге только для распространения. Электронную информацию можно хранить вечно – или столько, сколько нужно – в компьютерных базах данных. Гигантские объемы репортерской информации легко доступны через оперативные службы. Фотографии, фильмы и видеозаписи тожепреобразуются в цифровую информацию. С каждым годом совершенствуются методы сбора информации и превращения ее в квадрильоны крошечных пакетовданных. Как только цифровая информация помещается в то или иное «хранилище», любой, у кого есть персональный компьютер и средства доступа к базам данных, может мгновенно обратиться к ней и использовать ее по своему усмотрению. Характерная особенность нашего периода истории как раз в том и заключается, что информацию мы изменяем и обрабатываем совершенно новыми способами и гораздо быстрее. Появление компьютеров, «быстро и дешево» обрабатывающих и передающих цифровые данные, обязательно приведет к трансформации обычных средств связи в домах и офисах.
Идея применять для манипуляций с числами какой-нибудь инструмент не нова. До 1642 года, когда девятнадцатилетний французский ученый Блез Паскаль изобрел механическое счетное устройство – суммирующую машину, в Азии уже почти 5000 лет пользовались счетами. Три десятилетия спустя немецкий математик Готфрид Лейбниц усовершенствовал конструкцию машины Паскаля. Его «шаговый вычислитель» позволял умножать, делить и вычислять квадратные корни. Весьма надежные механические арифмометры, напичканные шестеренками и наборными счетчиками, наследники шагового вычислителя, служили главной опорой бизнесу вплоть до их замены электронными аналогами. Например, кассовые аппараты в годы моего детства, по сути, были арифмометрами с отделениями для наличности.
Более полутора столетий назад видного британского математика озарила гениальная идея, которая прославила его имя уже при жизни. Чарлз Беббидж (Charles Babbage), профессор математики Кембриджского университета, понял, что можно построить механическое устройство, способное выполнять последовательность взаимосвязанных вычислений, – своего рода компьютер!
Где-то в начале тридцатых годов прошлого столетия он пришел к выводу, что машина сможет манипулировать информацией, если только ту удастся преобразовать в числа. Беббидж видел машину, приводимую в действие паром, состоящую из штифтов, зубчатых колес, цилиндров и других механических частей – в общем, настоящее детище начинавшегося тогда индустриального века. По мысли Беббиджа, «аналитическая машина» должна была избавить человечество от монотонных вычислений и ошибок, с ними связанных.
Для описания устройства машины ему, конечно, не хватало терминов тех, которыми мы пользуемся сегодня. Центральный процессор, или «рабочие внутренности» этой машины, он называл «мельницей», а память – «хранилищем». Беббиджу казалось, что информацию будут обрабатывать так же, как хлопок: подавать со склада (хранилища) и превращать во что-то новое.
Аналитическая машина задумывалась как механическая, но ученый предвидел, что она сможет следовать варьируемым наборам инструкций и тем самым служить разным целям. В том же и смысл программного обеспечения. Современная программа – это внушительный набор правил, посредством которых машину «инструктируют», как решать ту или иную задачу. Беббидж понимал, что для ввода таких инструкций нужен совершенно новый тип языка, и он изобрел его, использовав цифры, буквы, стрелки и другие символы. Этот язык позволил бы «программировать» аналитическую машину длинными сериями условных инструкций, что, в свою очередь, позволило бы машине реагировать на изменение ситуации. Он – первый, кто увидел, что одна машина способна выполнять разные функции.
Следующее столетие ученые математики работали над идеями, высказанными Беббиджем, и к середине сороковых годов нашего века электронный компьютер наконец был построен – на основе принципов аналитической машины. Создателей современного компьютера выделить трудно, поскольку все исследования проводились во время второй мировой войны под покровом полной секретности, главным образом – в Соединенных Штатах и Великобритании. Основной вклад внесли три человека: Алан Тьюринг (Alan Turing), Клод Шеннон (Claude Shannon) и Джон фон Нейман (John von Neumann).
В середине тридцатых годов Алан Тьюринг – блестящий британский математик, как и Беббидж, получивший образование в Кембридже, предложил свой вариант универсальной вычислительной машины, которая могла бы в зависимости от конкретных инструкций работать практически с любым видом информации. Сегодня она известна как машина Тьюринга.
А в конце тридцатых Клод Шеннон, тогда еще студент, доказал, что машина, исполняющая логические инструкции, может манипулировать информацией. В своей магистерской диссертации он рассмотрел, как с помощью электрических цепей компьютера выполнять логические операции, где единица – «истина» (цепь замкнута), а нуль – «ложь» (цепь разомкнута).
Здесь речь идет о двоичной системе счисления, иначе говоря, о коде. Двоичная система – это азбука электронных компьютеров, основа языка, на который переводится и с помощью которого хранится и используется вся информация в компьютере. Эта система очень проста и в то же время настолько важна для понимания того, как работают компьютеры, что, пожалуй, стоит на этом задержаться.
Представьте, что в Вашей комнате должна гореть лампа мощностью в 250 ватт. Однако Вы хотите регулировать освещение от 0 ватт (полная темнота) до максимума. Один из способов добиться этого – воспользоваться выключателем с регулятором. Чтобы погасить лампу, Вы поворачиваете ручку против часовой стрелки в положение «выкл» (0 ватт), а чтобы включить ее «на всю катушку», – по часовой стрелке до упора (250 ватт). Ну а чтобы добиться полумрака или просто уменьшить яркость, Вы устанавливаете регулятор в какое-то промежуточное положение.
Такая система проста, но имеет свои ограничения. Если регулятор находится в промежуточном положении – скажем, Вы приглушили свет для ужина в интимной обстановке, – останется лишь гадать, каков сейчас уровень освещения. Вам не известно ни то, какую мощность «берет» лампа в данный момент, ни то, как точно описать настройку регулятора. Ваша информация приблизительна, что затрудняет ее сохранение и воспроизведение.
Вдруг на следующей неделе Вам захочется создать то же освещение? Конечно, можно поставить отметку на шкале регулятора, но навряд ли это получится точно. А что делать, если понадобится воспроизвести другую настройку? Или кто-то придет к Вам в гости и захочет отрегулировать свет? Допустим, Вы скажете: «Поверни ручку примерно на пятую часть по часовой стрелке» или «Поверни ручку, пока стрелка не окажется примерно на двух часах». Однако то, что сделает Ваш гость, будет лишь приблизительно соответствовать Вашей настройке. А может случиться и так, что Ваш друг передаст эту информацию своему знакомому, а тот – еще кому-нибудь. При каждой передаче информации шансы на то, что она останется точной, убывают.
Это был пример информации, хранимой в «аналоговом» виде. Положение ручки регулятора соответствует уровню освещения. Если ручка повернута наполовину, можно предположить, что и лампа будет гореть вполнакала. Измеряя или описывая то, насколько повернута ручка, Вы на самом деле сохраняете информацию не об уровне освещения, а о его аналоге – положении ручки. Аналоговую информацию можно накапливать, хранить и воспроизводить, но она неточна и, что хуже, при каждой передаче становится все менее точной.
Теперь рассмотрим не аналоговый, а цифровой метод хранения и передачи информации. Любой вид информации можно преобразовать в числа, пользуясь только нулями и единицами. Такие числа (состоящие из нулей и единиц) называются двоичными. Каждый нуль или единица – это бит. Преобразованную таким образом информацию можно передать компьютерам и хранить в них как длинные строки бит. Эти-то числа и подразумеваются под «цифровой информацией».
Пусть вместо одной 250-ваттной лампы у Вас будет 8 ламп, каждая из которых в 2 раза мощнее предыдущей – от 1 до 128 ватт. Кроме того, каждая лампа соединена со своим выключателем, причем самая слабая расположена справа.
Включая и выключая эти выключатели, Вы регулируете уровень освещенности с шагом в 1 ватт от нуля (все выключатели выключены) до 255 ватт (все включены), что дает 256 возможных вариантов. Если Вам нужен 1 ватт, Вы включаете только самый правый выключатель, и загорается 1-ваттная лампа. Для 2 ватт Вы зажигаете 2-ваттную лампу. Если Вам нужно 3 ватта, Вы включаете 1– и 2-ваттную лампы, поскольку 1 плюс 2 дает желаемые 3 ватта. Хотите 4 ватта, включите 4-ваттную лампу, 5 ватт – 4– и 1-ваттную лампы, 250 ватт – все, кроме 4– и 1-ваттной ламп.
Если Вы считаете, что для ужина идеально подойдет освещение в 137 ватт, включите 128-, 8– и 1-ваттную лампы.
Такая система обеспечивает точную запись уровней освещенности для использования в будущем или передачи другим, у кого в комнате аналогичный порядок подключения ламп. Поскольку способ записи двоичной информации универсален (младшие разряды справа, старшие – слева, каждая последующая позиция удваивает значение разряда), нет нужды указывать мощность конкретных ламп. Вы просто определяете состояние выключателей: «вкл-выкл-выкл-выкл-вкл-выкл-выкл-вкл». Имея такую информацию, Ваш знакомый точно отрегулирует освещение в комнате на 137 ватт. В сущности, если каждый будет внимателен, это сообщение без искажений пройдет через миллионы рук и на конце цепочки кто-то получит первоначальный результат – 137 ватт.
Чтобы еще больше сократить обозначения, можно заменить «выкл» нулем (0), а «вкл» – единицей (1).
Тем самым вместо «вкл-выкл-выкл-выкл-вкл-выкл-выкл-вкл» (подразумевая, что надо включить первую, пятую и восьмую лампы, а остальные выключить), Вы запишете то же самое иначе: 1, 0, 0, 0, 1, 0, 0, 1 или двоичным числом 10001001. Оно равно десятичному 137. Теперь Вы скажете своему знакомому: «Я подобрал изумительное освещение! 10001001. Попробуй». И он точно воспроизведет Вашу настройку, зажигая и гася соответствующие лампы.
Может показаться, что этот способ чересчур сложен для описания яркости ламп, но он иллюстрирует теорию двоичного представления информации, лежащую в основе любого современного компьютера.
Двоичное представление чисел позволяет составление чисел позволяет создавать калькуляторы, пользуясь преимуществами электрических цепей. Именно так и поступила во время второй мировой войны группа математиков из Moore School of Electrical Engineering при Пенсильванском университете, возглавляемая Дж. Преспером Эккертом (J. Presper Eckert) и Джоном Моучли (John Mauchly), начав разработку электронно-вычислительной машины ENIAC (Electronic Numerical Integrator And Calculator – электронный числовой интегратор и калькулятор). Перед учеными поставили цель – ускорить расчеты таблиц для наведения артиллерии. ENIAC больше походил на электронный калькулятор, чем на компьютер, но двоичные числа представляли уже не примитивными колесиками, как в арифмометрах, а электронными лампами – «переключателями».
Солдаты, приписанные к этой огромной машине, постоянно носились вокруг нее, скрипя тележками, доверху набитыми электронными лампами. Стоило перегореть хотя бы одной лампе, как ENIAC тут же вставал и начиналась суматоха: все спешно искали сгоревшую лампу. Одной из причин – возможно, и не слишком достоверной – столь частой замены ламп считалась такая: их тепло и свечение привлекают мотыльков, которые залетают внутрь машины и вызывают короткое замыкание. Если это правда, то термин «жучки» (bugs), под которым имеются в виду ошибки в программных и аппаратных средствах компьютеров, приобретает новый смысл.
Когда все лампы работали, инженерный персонал мог настроить ENIAC на какую-нибудь задачу, вручную изменив подключения 6000 проводов. Все эти провода приходилось вновь переключать, когда вставала другая задача. В решении этой проблемы основную заслугу приписывают Джону фон Нейману, американцу венгерского происхождения, блестящему ученому, известному многими достижениями – от разработки теории игр до вклада в создание ядерного оружия. Он придумал схему, которой до сих пор следуют все цифровые компьютеры. «Архитектура фон Неймана», как ее теперь называют, базируется на принципах, сформулированных им в 1945 году. В их число входит и такой: в компьютере не придется изменять подключения проводов, если все инструкции будут храниться в его памяти. И как только эту идею воплотили на практике, родился современный компьютер.
Сегодня «мозги» большинства компьютеров – дальние потомки того микропроцессора, которым мы с Полом так восхищались в семидесятых, а «рейтинг» персональных компьютеров зачастую определяется тем, сколько бит информации (переключателей – в нашем примере со светом) способен единовременно обрабатывать их микропроцессор и сколько у них байт (групп из восьми бит) памяти и места на диске. ENIAC весил 30 тонн и занимал большое помещение. «Вычислительные» импульсы бегали в нем по 1500 электромеханическим реле и 17000 электронным лампам. Он потреблял 150000 ватт электроэнергии и при этом хранил объем информации, эквивалентный всего лишь 80 символам.
К началу шестидесятых годов транзисторы начали вытеснять электронные лампы из бытовой электроники. Это произошло через десятилетие после того, как в Bell Labs открыли, что крошечный кусочек кремния способен делать то же, что и электронная лампа. Транзисторы – подобно электронным лампам – действуют как электрические переключатели, потребляя при этом намного меньше электроэнергии, в результате выделяя гораздо меньше тепла и занимая меньше места. Несколько транзисторных схем можно объединить на одной плате, создав тем самым интегральную схему (чип). Чипы, используемые в современных компьютерах, представляют собой интегральные схемы, эквивалентные миллионам транзисторов, размещенных на кусочке кремния площадью менее пяти квадратных сантиметров.
В 1977 году Боб Нойс (Bob Noyce), один из основателей фирмы Intel, в журнале Scientific American сравнил трехсотдолларовый микропроцессор с ENIAC, кишащим насекомыми мастодонтом. Крошка-микропроцессор не только мощнее, но и, как заметил Нойс, «в 20 раз быстрее, обладает большей памятью, в 1000 раз надежнее, потребляет энергии столько же, сколько лампочка, а не локомотив, занимает 1/30000 объема и стоит в 10000 раз дешевле. Его можно заказать по почте или купить в местном магазине».
Конечно, микропроцессор 1977 года теперь кажется просто игрушкой. Ведь сегодня во многих недорогих игрушках «сидят» более мощные компьютерные чипы, чем микропроцессоры семидесятых, с которых начиналась микрокомпьютерная революция. Но все современные компьютеры, каков бы ни был их размер или мощность, оперируют с информацией в виде двоичных чисел.
Двоичные числа используются для хранения текста в персональных компьютерах, музыки на компакт-дисках и денег в сети банковских автоматов. Прежде чем отправить информацию в компьютер, ее надо преобразовать в двоичный вид. А машины, цифровые устройства, возвращают информации ее первоначальную форму. Каждое такое устройство можно представить как набор переключателей, управляющих потоком электронов. Эти переключатели, обычно изготавливаемые из кремния, крайне малы и срабатывают под действием электрических зарядов чрезвычайно быстро – тем самым воспроизводя текст на экране персонального компьютера, музыку на проигрывателе компакт-дисков и команды банковскому автомату, который выдает Вам наличность.
Пример с выключателями ламп продемонстрировал, что любое число можно представить в двоичном виде. А вот как то же самое сделать с текстом. По соглашению, число 65 кодирует заглавную латинскую букву A, 66 – B и т.д. В компьютере каждое из этих чисел выражается двоичным кодом, поэтому заглавная латинская буква A (десятичное число 65) превращается в 01000001, а буква B (66) – в 01000010. Пробел кодируется числом 32, или 00100000. Таким образом, выражение «Socrates is a man» («Сократ есть человек») становится 136-разрядной последовательностью единиц и нулей.
Здесь легко проследить, как строка текста превратилась в набор двоичных чисел. Чтобы понять, как преобразуют другие виды данных в двоичную форму, разберем еще один пример. Запись на виниловой пластинке – это аналоговое представление звуковых колебаний. Аудиоинформация хранится на ней в виде микроскопических бугорков, расположенных в длинных спиральных канавках. Если в каком-то месте музыка звучит громче, бугорки глубже врезаются в канавку, а при высокой ноте бугорки располагаются теснее. Эти бугорки являются аналогами исходных колебаний звуковых волн, улавливаемых микрофоном. Двигаясь по канавке, иголка проигрывателя попадает на бугорки и вибрирует. Ее вибрация – все то же аналоговое представление исходного звука – усиливается и звучит из динамиков как музыка.
Виниловой пластинке, подобно всякому аналоговому устройству хранения информации, свойствен ряд недостатков. Пыль, следы пальцев или царапины на поверхности пластинки могут приводить к неадекватным колебаниям иглы, вызывая в динамиках потрескивание и другие шумы. Если скорость вращения пластинки хотя бы немного отклоняется от заданной, высота звука сразу же меняется. При каждом проигрывании пластинки игла постепенно «снашивавает» бугорки в канавке, и качество звучания соответственно ухудшается. Если же какую-нибудь песню записать с виниловой пластинки на кассетный магнитофон, то все «шероховатости» переносятся на пленку, а со временем к ним добавятся новые, потому что обычные магнитофоны сами являются аналоговыми устройствами. Таким образом, при каждой перезаписи или передаче информация теряет в качестве.
На компакт-диске музыка хранится как последовательность двоичных чисел, каждый бит которых представлен микроскопической впадинкой на поверхности диска. На современных компакт-дисках таких впадинок более 5 миллиардов. Отраженный лазерный луч внутри проигрывателя компакт-дисков – цифрового устройства – проходит по каждой впадинке, а специальный датчик определяет ее состояние (0 или 1). Полученную информацию проигрыватель реконструирует в исходную музыку, генерируя определенные электрические сигналы, которые динамики преобразуют в звуковые волны. И сколько бы такой диск ни проигрывали, его звучание не меняется.
Было бы удобно преобразовать всю информацию в цифровую форму, но возникает проблема обработки ее больших объемов. Слишком большое число бит может переполнить память компьютера или потребовать много времени на передачу между компьютерами. Вот почему так важна (и становится все важнее) способность компьютера сжимать цифровые данные и хранить или передавать их в таком виде, а затем вновь разворачивать сжатые данные в исходную форму.
Рассмотрим вкратце, как компьютер справляется с этим. Для этого надо вернуться к Клоду Шеннону, математику, который в тридцатых годах осознал, как выражать информацию в двоичной форме. Во время второй мировой войны он начал разрабатывать математическое описание информации и основал новую область науки, впоследствии названную теорией информации. Шеннон трактовал информацию как уменьшение неопределенности. Например, Вы не получаете никакой информации, если кто-то сообщает Вам, что сегодня воскресенье, а Вы это знаете. С другой стороны, если Вы не уверены, какой сегодня день недели, и кто-то говорит Вам – воскресенье, Вы получаете информацию, так как неопределенность уменьшается.
Теория информации Шеннона привела в конечном счете к значительным прорывам в познании. Один из них – эффективное сжатие данных, принципиально важное как в вычислительной технике, так и в области связи. Сказанное Шенноном, на первый взгляд, кажется очевидным: элементы данных, не передающие уникальную информацию, избыточны и могут быть отброшены. Так поступают репортеры, исключая несущественные слова, или те, кто платит за каждое слово, отправляя телеграмму или давая рекламу. Шеннон привел пример: в английском языке буква U лишняя в тех местах, где она стоит после буквы Q. Поэтому, зная, что U следует за каждой Q, в сообщении ее можно опустить.
Принципы Шеннона применяли к сжатию и звуков, и фильмов. В тридцати кадрах, из которых состоит секунда видеозаписи, избыточной информации чрезвычайно много. Эту информацию при передаче можно сжать примерно с 27 миллионов бит до 1 миллиона, и она не потеряет ни смысла, ни красок.
Однако сжатие не безгранично, а объемы передаваемой информации все возрастают и возрастают. В скором будущем биты будут передаваться и по медным проводам, и в эфире, и по информационной магистрали, в основу которой лягут волоконно-оптические кабели. Волоконно-оптический кабель представляет собой пучок стеклянных или пластмассовых проводов настолько однородных и прозрачных, что на другом конце стокилометрового кабеля Вы сможете разглядеть горящую свечу. Двоичные сигналы в виде модулированных световых волн смогут без затухания распространяться по этим кабелям на очень длинные расстояния. Естественно, по волоконно-оптическим кабелям сигналы идут не быстрее, чем по медным проводам: скорость движения не может превысить скорость света. Колоссальное преимущество волоконно-оптического кабеля над медным проводом – в полосе пропускания. Полоса пропускания – это количество бит, передаваемых по одной линии в секунду. Такой кабель подобен широкой автомагистрали. Восьмирядная магистраль, проложенная между штатами, пропускает больше автомобилей, чем узкая грунтовая дорога. Чем шире полоса пропускания кабеля (чем больше рядов у дороги), тем больше бит (машин) могут пройти по нему в секунду. Кабели с ограниченной полосой пропускания, используемые для передачи текста или речи, называются узкополосными; с более широкими возможностями, несущие изображения и фрагменты с ограниченной анимацией, – среднеполосными. А кабели с высокой пропускной способностью, позволяющие передавать множество видео– и аудиосигналов, принято называть широкополосными.
Информационная магистраль, немыслимая без сжатия данных, потребует применения кабелей с очень высокой пропускной способностью. Тут-то и кроется одна из главных причин, почему информационная магистраль до сих пор не построена: современные коммуникационные сети не могут обеспечить нужной полосы пропускания. И не обеспечат, пока их не заменят волоконно-оптические линии. Волоконная оптика – пример технологии, выходящей далеко за рамки того, что могли предвидеть Беббидж или даже Эккерт и Моучли. То же относится и к темпам, с которыми улучшается быстродействие и емкость микросхем.
В 1965 году Гордон Мур (Gordon Moore), впоследствии вместе с Бобом Нойсом основавший фирму Intel, предсказал, что число транзисторов в компьютерных чипах ежегодно будет удваиваться. Его предсказание базировалось на соотношении «цена/качество» компьютерных чипов за предыдущие 3 года и предположении, что в ближайшее время эта тенденция сохранится. Правда, Мур не очень-то верил, что такая скорость эволюции чипов продлится долго. Но прошло 10 лет, предсказание сбылось, и тогда он заявил, что теперь емкость будет удваиваться каждые 2 года. Его слова оправдываются и по сей день: число транзисторов в микропроцессорах удваивается в среднем каждые 18 месяцев. Среди инженеров эту зависимость принято называть законом Мура.
Опыт повседневной жизни бессилен перед скрытым смыслом периодически удваивающихся чисел – экспоненциальной прогрессией. Мы попытаемся вникнуть в этот смысл, вспомнив древнюю легенду.
Правитель Индии Ширхам (Shirham) так обрадовался, когда один из его министров изобрел шахматы, что разрешил ему выбрать любую награду.
«Владыка, – сказал министр, – дай мне столько зерен пшеницы, сколько уместится на шахматной доске: одно зернышко – на первую клетку, на вторую клетку – 2 зернышка, на третью – 4 и пусть так удваивают число зернышек на каждой клетке вплоть до шестьдесят четвертой». Правитель немало удивился такой скромности, но велел принести мешок пшеницы.
И вот зернышки стали отсчитывать на шахматной доске. На первую клетку в первом ряду положили одно маленькое зернышко. На вторую – 2 зернышка, на третью – 4 и далее: 8, 16, 32, 64, 128. Когда первый ряд был заполнен, кладовщик насчитал в нем всего 255 зернышек.
Правитель, наверное, еще ничего не подозревал. Разве что зернышек на первом ряду оказалось многовато, но волноваться вроде бы не о чем. Допустим, на одно зернышко уходила одна секунда, значит, подсчет пока занял не более четырех минут. А если на один ряд потребовалось четыре минуты, попробуйте догадаться, сколько времени нужно на подсчет зернышек пшеницы на всех клетках. Четыре часа? Четыре дня? Четыре года?
К тому времени, когда покончили со вторым рядом, кладовщик трудился уже 18 часов, отсчитав 65535 зернышек. На третий из восьми рядов, чтобы отсчитать 16,8 миллионов зернышек (24 клетки), понадобилось 194 дня. А ведь оставалось еще 40 пустых клеток.
Думаю, Вы понимаете: правитель отказался от своего обещания! На последней клетке должна была вырасти гора из 18446744073709551615 зернышек пшеницы, и на их отсчитывание ушло бы 584 миллиарда лет. Сравните: возраст Земли оценивают где-то в 4,5 миллиарда лет. Согласно большинству версий этой легенды, правитель Ширхам в конце концов понял, как ловко его провели, и велел казнить этого министра-умника. Так что экспоненциальная прогрессия, даже когда ее поймешь, кажется чистым фокусом.
Число транзисторов в микропроцессорах Intel удваивалось примерно каждые 18 месяцев – в соответствии с законом Мура.
Закон Мура, по всей видимости, будет действовать еще лет двадцать. И тогда вычисления, занимающие сегодня сутки, будут проводиться в 10000 раз быстрее, т.е. не потребуют более десяти секунд.
Лаборатории уже работают с так называемыми «баллистическими» транзисторами, время переключения которых порядка фемтосекунды. Это 1/1000000000000000 секунды, т.е. такие транзисторы в 10 миллионов раз быстрее современных. Однако необходимо так уменьшить размер чипа и протекающий в нем ток, чтобы движущиеся электроны ни с чем не сталкивались – и друг с другом тоже. В этом вся сложность. Следующий этап – создание «одноэлектронного транзистора», в котором единственный бит информации представлен одиночным электроном. Это абсолютный предел для низкоэнергетической вычислительной техники, по крайней мере, в соответствии с нашим нынешним пониманием физических законов. Чтобы воспользоваться преимуществами невероятного быстродействия на молекулярном уровне, компьютеры должны стать очень маленькими, даже микроскопическими. Наука уже объяснила, как строить супербыстрые компьютеры. Пока недостает одного – технологического рывка, но за этим, как показывает история, дело не станет.
Когда мы перейдем на такие скорости работы, хранение всех этих бит информации уже не будет проблемой. Весной 1983 года корпорация IBM выпустила PC/XT, первый персональный компьютер с внутренним жестким диском. Этот диск (встроенный накопитель) вмещал 10 мегабайт (Мб) информации, что составляет около 10 миллионов символов, или 80 миллионов бит. Клиентам, которые хотели дополнить свои «персоналки» 10-мегабайтовым диском, это обходилось весьма недешево. IBM предлагала комплект из жесткого диска с отдельным источником питания за 3000 долларов, т.е. один мегабайт стоил 300 долларов. Сегодня, благодаря «экспоненциальному» прогрессу, показанному законом Мура, персональные компьютеры оснащаются жесткими дисками емкостью 1,2 гигабайт (1,2 миллиарда символов) всего за 250 долларов – по 21 центу за мегабайт! А впереди нас ждет такая экзотика, как голографическая память, которая позволит хранить терабайты символов на кубический дюйм (порядка 16 кубических сантиметров). При такой емкости голографическая память объемом с кулак вместит все содержимое Библиотеки Конгресса.
По мере того как технология связи становится цифровой, она тоже начинает прогрессировать по экспоненте – той самой, что сделала нынешний «лэптоп» за 2000 долларов мощнее, чем мэйнфрейм IBM двадцатилетней давности за 10 миллионов долларов.
Уже недалеко время, когда по единственному кабелю к каждому дому пойдут все нужные цифровые данные. Этот кабель будет или волоконно-оптическим, как на нынешних междугородных телефонных линиях, или коаксиальным, по которому сейчас передают сигналы кабельного телевидения. Интерпретирует компьютер биты как речевой вызов – зазвонит телефон. Появятся видеоизображения – включится телевизор. Поступят новости от оперативных сллслужб – Вы увидите информационный текст и снимки на экране компьютера.
По этому кабелю, «несущему на себе» всю сеть, определенно будут передавать не только телефонные звонки, фильмы и новости. Как человек каменного века с примитивным ножом не мог представить великолепия дверей баптистерия Гиберти во Флоренции, так и мы сейчас не можем представить, что именно будет нести информационная магистраль через 25 лет. Только тогда, когда она действительно появится, мы оценим ее реальные возможности. Однако история достижений цифровой технологии за последние 20 лет все же позволяет уловить некоторые из ее будущих ключевых принципов и возможностей.