закончилась наша «поездка без разговоров», и обошлась она мне в 23 доллара.
Через несколько дней, когда конференция завершилась, я собрался отправиться со своим багажом на вокзал и попросил служажего отеля заказать мне такси. «У нас есть свои машины, сэр», – проинформировал меня служащий (конечно, тоже чернокожий), и к нужному часу, минуте и секунде машина уже стояла у подьезда, и выглядела она немного побольше, чем прежнее такси. Водителем оказался белый старичок лет семидесяти, и не успел я устроиться на сиденье, как мы с ним были уже по именам и на «ты». Узнав, что я из Ленинграда и впервые в Вашингтоне, он предложил прокатить меня по городу, но я отказался, заметив, что денег лишних нет, и поезд ждать не будет. «Хорошо, – сказал старичок, – лишних денег сверх прейскуранта не надо. Я тебя прокачу почти обычным маршрутом, но по дороге у нас будет Белый Дом, монумент Вашингтона, Капитолий и ещё много интересного. Вот Пентагон останется в стороне, но я покажу, в какой.»
И он мне всё показал и объяснил, и ехали мы не дольше, чем с тем молодым негром, но эта «поездка с разговорами» на машине отеля стоила мне 45 долларов. Такой уж порядок в Америке: сколько заплатил, такой товар и получаешь. Даже если речь идёт всего лишь о поезке на такси.
Закончив с воспоминаниями, обратимся к делу и поговорим о компьютерах. Если вы – представитель точных наук, то я, быть может, не скажу вам ничего нового, но гуманитариям, медикам, юристам и будущим бизнесменам стоит прочитать этот раздел.
Отмечу, что в двадцатом веке никакие отрасли знания не развивались столь стремительно, как кибернетика, микроэлектроника и программирование. Первые ламповые компьютеры появились в пятидесятых годах, назывались тогда ЭВМ (электронно-вычислительные машины) и занимали зал площадью сто или двести квадратных метров. Сам я приобщился к программированию в двадцать лет, на четвёртом курсе университета, и работал ещё на легендарной М-20, одной из последних ламповых машин; потом пошли ЭВМ второго, третьего и так далее поколений, на интегральных схемах, на БИСах и СБИСах – БЭСМ-3М, М-220, М-6000, СМ-1, 2, 3 и 4, отечественные и зарубежные персоналки типа ИБМ; а потом забылось и понятие поколения, и слово «ЭВМ», и перфокарты, и перфоленты, и язык Алгол, и многое другое – и появился Его Величество Компьютер. Мог ли я тридцать лет назад, переступая порог обширного зала М-20, предвидеть, что когда-нибудь на моём столе окажется неизмеримо более мощный компьютер, и что я буду его использовать в качестве пишущей машинки и станции сверхбыстрой почтовой связи? Когда я думаю об этом, то сожалею, что начал писать фантастические романы в пятьдесят лет, а не в двадцать.
Но общая архитектура компьютера с тех пор не изменилась.
Должен вам сказать, что основные узлы этой архитектуры имелись уже в самом первом вычислительном устройстве, спроектированном и построенном Чарльзом Бэббиджем, английским математиком из Кембриджа, ещё в первой половине прошлого века. Разумеется, его машина была механической, а не электронной, но в ней имелись процессор, оперативная память и устройства ввода. Во всём мире Бэббиджа считают первым проектировщиком вычислительных машин, ибо он ближе всех подошёл к устройству, которое мы сегодня называем компьютером. Интересно, а кто же был первым программистом? Женщина, друзья мои, обаятельная женщина, графиня Лавлейс, добрый гений Чарльза Бэббиджа. Так что программирование – традиционно женская профессия, да ещё с налётом британского аристократизма.
После этих исторических замечаний, рассмотрим основные узлы компьютера.
Процессор является главным компьютерным модулем; во-первых, именно он производит все арифметические и логические операции (выполняет команды программы), а, во-вторых, все остальные модули связаны друг с другом через процессор. Скорость его работы очень велика – он производит сотни тысяч/миллионы операций в секунду.
Оперативная память, состоящая из отдельных ячеек – второй по важности модуль компьютера. В оперативной памяти хранится исполняемая программа, и записана она там покомандно в ячейках в двоичном коде. Процессор выбирает команду за командой на свои регистры и выполняет их – тем самым выполняя и всю программу. Объём оперативной памяти сравнительно невелик, зато скорость обмена с процессором очень высока; это – «быстрая» память. Кроме программы или программ (последовательности команд), в ней могут ещё лежать данные – числа и символы (например, численные массивы, буквенные массивы – тексты на различных языках, особым образом закодированные изображения – картинки). Все эти данные – программы, тексты, массивы чисел или логической информации – организованы в некие функциональные блоки, имеющие определённые имена; такой блок называется файлом или записью.
Твёрдый магнитный диск (МД, так называемый «винчестер») является устройством долговременной памяти, встроенным в компьютер. На нём тоже хранятся файлы программ и данных, но процессор не может непосредственно отработать программу, которая находится на МД; для этого её сначала нужно считать и переписать в оперативную память. Таким образом, МД представляет собой долговременное хранилище, в котором находится множество программ и данных, ожидающих, когда их вызовут в оперативную память для исполнения и использования. Ёмкость МД велика и обычно в сто раз превосходит ёмкость оперативной памяти, но время доступа гораздо больше; это – «медленная» память.
Гибкие магнитные диски (ГМД или дискеты), лазерные диски, магнитная лента тоже являются различными типами долговременной памяти с большим временем доступа, предназначенной для хранения всевозможных файлов. Ёмкость у них разная – как правило, меньше, чем у МД, а для некоторых типов устройств – меньше, чем у оперативной памяти. Но главное их достоинство в ином – они могут быть физически введены в компьютер (вставлены в щель дисковода или в магнитофонный модуль) и выведены из него. Значит, с этих транспортируемых носителей можно переписать через процессор на МД программы и данные, а также совершить обратную операцию – списать данные со своего компьютера. Значит, эти носители обеспечивают обмен между разными компьютерами, и обмен этот такого типа: пришёл в магазин, купил дискету с нужной программой (или списал её с машины приятеля), сунул дискету в карман, вернулся домой, ввёл её в свой компьютер. Я надеюсь, читатель, что вы видели лазерный диск или дискету диаметром 3,5 дюйма и понимаете, что в вашем кармане таких дискет поместится два десятка.
Терминал пользователя включает устройства, необходимые для удобного визуального и тактильного контакта человека с машиной. Это, во-первых, клавиатура, на которой мы набираем тексты программ, данные и наши команды для компьютера, и, во-вторых, монитор (экран, видеотерминал), на котором появляется всё, что мы набрали, а также ответы компьютера и любая информация, любой файл, который мы велели ему вывести. Кроме того, могут быть и другие устройства, например мышь – шарик в держателе с двумя-тремя клавишами, который мы можем катать по столу или специальной подставке. Мы катаем этот шарик, а по экрану перемещается стрелка; её можно поставить в любую позицию (где на экран заранее выведен список команд – меню), нажать клавишу, и нужная команда будет исполнена. Очень удобное и дешёвое устройство, но часто ломается.
Все перечисленные выше модули являются совершенно необходимыми для работы компьютера; остальные – это уже, как говорится, завитушки и прибабахи, но прибабахи очень важные.
Самым важным из них является принтер – устройство печати, позволяющее нам вывести на бумагу текст программы, книги, статьи, график, рисунок – словом, всё, что хранится на МД и может быть переписано в оперативную память. Дешёвый принтер позволяет печатать текст чёрной краской (как обычная пишущая машинка), а дорогой, лазерный или струйный, может воспроизвести картину в цвете – например, изобразить тот же доллар с таким совершенством, что даже опытный человек не различит подделки.
Но как попадают в компьютер (точнее, на МД) изображения? Текст – скажем, книгу или статью – можно ввести с клавиатуры, хотя это долгая операция (точно такая же, как печатание на пишущей машинке), но ясно, что картинку или фотографию так не введёшь. Для этой цели служат сканеры, ручные и стационарные; достаточно положить лист с картинкой на рабочее поле сканера, вызвать необходимую программу – и цветное изображение будет введено в компьютер и ляжет в памяти в определённый файл, которому мы присвоим имя. С помощью других программ файл-изображение можно откорректировать и напечатать на принтере – столько копий, сколько надо. Таким же образом можно ввести книгу или даже