Rafael Lahoz-Beltra - Размышления о думающих машинах. Тьюринг. Компьютерное исчисление
Вентиль ИЛИ эквивалентен союзу «или», в этом случае на выходе будет 1, если на одном из двух либо на обоих входах было получено 1. Ниже приводится таблица и символ для этого вентиля.
А B А ИЛИ В 0 0 0 0 1 1 1 0 1 1 1 1Ламповыми были первая версия Colossus, Mark 1, и следующая усовершенствованная версия, Mark 2, запущенная в 1944 году. Можно сказать, что если Алан Тьюринг занимался логическим обоснованием компьютеров, то Томми Флауэрс разработал hardware и, соответственно, электронные схемы, воплощающие в жизнь эти логические построения.
Одна из наиболее интересных цепей Colossus включала два класса электронных ламп: тиратроны и фотоэлектронные умножители, с помощью которых машина могла считывать знаки с бумажной ленты. Используя тиратрон, можно было записать 1 бит; соединив между собой несколько ламп, инженеры Блетчли-парка создали компьютерную память. Фотоэлектронный умножитель представлял собой лампу, работа которой была подобна фотоэлементу: сигнал в цепи анода значительно увеличивался под действием пучка света. Мощность Colossus благодаря использованию этих электронных компонентов во время Второй мировой войны была эквивалентна компьютеру с микропроцессором Pentium 2004 года выпуска. Удивительно, что Colossus в своих схемах использовал только два булевых оператора — И и ИЛИ.
Несмотря на то что Colossus, несомненно, являлся передовым инженерным достижением своей эпохи, его программирование было весьма примитивным по сравнению с современными компьютерами, так как для написания программы нужно было настроить множество клавиш и переключателей. При этом, хотя Colossus был программируемой машиной в строгом понимании этого слова, он не был компьютером, так как не был универсальной машиной Тьюринга. Colossus мог быть запрограммирован только для того, чтобы разрушать шифр, записанный на машине Lorenz SZ 40/42, то есть это не была машина для общих целей. В отличие от него, сейчас компьютер — это универсальная машина Тьюринга, для которой можно программировать на разных языках (С, Java, Virtual Basic и др.). Мы можем сделать вывод, что Colossus был частично программируемым квазикомпьютером, так как он выполнял только цели, для которых был разработан, а значит, не был универсальным. То, что в одном месте и в одно время оказались Алан Тьюринг и Colossus, подтолкнуло британскую науку к изучению электроники для оценки возможности создания настоящего компьютера. Именно в Блетчли-парке родилась мечта о создании универсальной машины Тьюринга. Со временем, когда был разработан и построен компьютер Pilot АСЕ, эта мечта нашла воплощение.
После окончания мировой войны из соображений безопасности Уинстон Черчилль отдал приказ уничтожить все машины Colossus, а также сжечь все описания их чертежей и схем. Эту неблагодарную работу выполнил Томми Флауэрс, помиловавший, однако, две машины, использовавшиеся во времена холодной войны и окончательно уничтоженные в 1960-е годы. Успех, достигнутый в Блетчли-парке с созданием Colossus, не был известен до 1976 года, когда специальным законом об официальной секретности были сняты ограничения на распространение данной информации. В течение долгих лет ENIAC, созданный в 1946 году в США, считался первым электронным компьютером в истории. Сегодня, после пересмотра исторических событий, это почетное место занимает Colossus, созданный в 1944 году. В Национальном музее вычислительной техники в Блетчли-парке публике представлены две реплики Colossus, построенные в 1996 и 2004 годах под руководством Тони Сейла (1931-2011), инженера-электронщика и историка информатики. Благодаря сообщениям, расшифрованным Colossus, стало известно, что Гитлер был введен в заблуждение относительно планируемых военных операций. Он думал, будто высадка союзников произойдет в Па-де-Кале, и отправил туда танковые дивизии. Военный кошмар закончился весной 1945 года самоубийством Гитлера. Однако летом того же года с нанесением ядерных ударов по Хиросиме и Нагасаки была открыта новая страшная страница в истории человечества. Затем началась новая эра — холодная война, и мир разделился на два больших лагеря: западный капиталистический и восточный коммунистический, которые находились в противостоянии с 1945 до 1989 года, когда пала Берлинская стена.
Глава 3
Первые компьютеры: британские или американские?
Во время работы в Блетчли-парке Тьюринг стал свидетелем появления Colossus. Этот факт, несомненно, стал сильным стимулом, который привел ученого к разработке своего первого компьютера Pilot АСЕ согласно собственным идеям и спецификациям.
В середине 1940-х — начале 1950-х годов создание разных моделей компьютеров по обе стороны Атлантики привело к полемике, которая до сих пор не дала ответа на вопрос, какая из стран стала первой в разработке и создании компьютеров.
После окончания Второй мировой войны Алан Тьюринг оставил Блетчли-парк и, как и остальные его товарищи, вернулся к гражданской жизни. К счастью, он получил приглашение от Национальной физической лаборатории (сокращенно по- английски NPL) в Лондоне, занимавшейся разработкой стандартов для науки и технологий. В то время во главе лаборатории стоял Чарльз Галтон Дарвин (1887-1962), внук Чарльза Дарвина (1809-1882), он и предложил Тьюрингу поучаствовать в разработке и создании компьютера. В 1946 году Тьюринг направил в NPL доклад с идеями, касавшимися практической реализации компьютера — машины, которую коллега Тьюринга Джон Уомерсли (1907-1958), начальник отдела математики лаборатории, назвал автоматической вычислительной машиной — Automatic Computing Engine (АСЕ). Слово engine (что в английском языке означает «двигатель») было принято в память о Чарльзе Бэббидже (1791-1871), создателе аналитической и дифференциальной машин, которые считаются предшественниками современных компьютеров. В своем докладе Тьюринг опередил время: он привел информацию о hardware, то есть об электронных схемах, а также о software, установив правила написания программ для компьютера АСЕ. Наконец ученому представился шанс совершить великий переход от теории к инженерному решению и провести в жизнь свою концепцию универсальных машин Тьюринга. Мечта становилась реальностью, воплощаясь в компьютер Pilot АСЕ.
ВОПЛОЩЕНИЕ МЕЧТЫ: PILOT АСЕ
В компьютерах, созданных в начале 1950-х годов, было два вида запоминающих устройств: лучевая катодная и ртутные трубки — с их помощью была разработана память с линией задержки. Инженеры той эпохи разработали вид памяти для хранения данных, который в качестве базового принципа использовал время, требующееся для распространения сигнала в физической среде, например ртути. Тьюринг для Pilot АСЕ выбрал ртутные линии задержки, так как они имели более высокую скорость восстановления данных и были более надежными. На концах ртутной линии располагались пьезоэлектрические элементы, как у микрофонов и громкоговорителей, выполняющие роль преобразователей, превращающих электрические импульсы в ультразвуковую волну (с частотой звука примерно 20000 Гц). После того как волна проходила через ртуть к другому концу трубки, она снова превращалась в электрические импульсы, направляемые на экран. В других компьютерах — EDSAC, CSIRAC и UNIVACI — также использовались ртутные трубки. Например, UNIVAC I, один из первых коммерческих компьютеров 1950-х годов, обладал семью резервуарами памяти, в каждом из которых находились 18 ртутных трубок. Скорость доступа к данным составляла 222 микросекунды — настоящее чудо для той эпохи. Каждая трубка могла хранить в памяти десять слов, например команды программы, длиной 12 бит.
Позже ртутные трубки заменили более передовым устройством, барабанами памяти. Это устройство памяти представляло собой металлический цилиндр с поверхностью, покрытой ферромагнитным слоем, сверху располагалась серия головок для чтения и записи. Магнитные барабаны были в ходу вплоть до начала 1960-х годов. В этом запоминающем устройстве для контроля его применения использовался метод чередования: расположение информации на барабане оптимизировалось для последовательного доступа, этот прием применяется на некоторых жестких дисках, при спутниковой или ADSL-передаче данных. С таким запоминающим устройством Pilot АСЕ мог хранить до 4096 последовательностей единиц и нулей. С тех пор в память об этом виде запоминающего устройства некоторые версии операционной системы Unix используют для управления виртуальной памятью директорию /dev/drum (drum — по-английски «барабан»). Благодаря всем этим характеристикам компьютер Тьюринга был одним из самых передовых в ту эпоху: объем его памяти приближался к объему памяти первых компьютеров Macintosh Apple.