Введение

Первый коммерческий компьютер

Ferranti Mark 1, также известный как Manchester Electronic Computer в рекламных материалах, и поэтому иногда называемый Manchester Ferranti, был произведен британской электротехнической компанией Ferranti Ltd. Он был первым в мире коммерчески доступным электронным цифровым компьютером общего назначения с хранимой программой. Хотя BINAC и Z4 предшествовали ему как коммерческим цифровым компьютерам, Z4 был электромеханическим и не поддерживал программное программирование, а BINAC так и не заработал должным образом после поставки.

Ferranti Mark 1 был "усовершенствованной и коммерциализированной версией Manchester Mark I". Первая машина была поставлена в Университет Виктории в Манчестере в феврале 1951 года (публично продемонстрирована в июле), опередив UNIVAC I, который был поставлен в Бюро переписи населения США в конце декабря 1952 года, после продажи 31 марта 1951 года.

История и спецификации

Основанная на Manchester Mark 1, разработанной в Университете Манчестера Фредди Уильямсом и Томом Килберном, машина была построена компанией Ferranti из Соединенного Королевства. Основные улучшения по сравнению с ней заключались в объеме первичной и вторичной памяти, более быстром умножителе и дополнительных инструкциях. Mark 1 использовал 20-битное слово, хранящееся в виде одной строки точек электрических зарядов, осевших на поверхности дисплея электронно-лучевой трубки Уильямса, каждая трубка хранила 64 строки точек. Инструкции хранились в одном слове, а числа – в двух словах. Основная память состояла из восьми трубок, каждая из которых хранила одну страницу из 64 слов. Другие трубки хранили одиночный 80-битный аккумулятор (A), 40-битный "регистр множимого/частного" (MQ) и восемь "B-линий", или индексных регистров, что являлось одной из уникальных особенностей конструкции Mark 1. Аккумулятор также мог быть адресован как два 40-битных слова. Дополнительное 20-битное слово на трубку хранилило смещение для доступа ко вторичной памяти. Вторичная память была реализована в виде магнитного барабана на 512 страниц, хранящего две страницы на одной дорожке, с временем вращения около 30 миллисекунд. Барабан обеспечивал в восемь раз больший объем хранения, чем оригинальная машина, разработанная в Манчестере. Инструкции, как и в машине из Манчестера, использовали одноадресный формат, в котором операнды модифицировались и результат сохранялся в аккумуляторе. Всего было около пятидесяти инструкций. Базовое время цикла составляло 1,2 миллисекунды, а умножение могло быть выполнено в новой параллельной вычислительной единице примерно за 2,16 миллисекунды (примерно в 5 раз быстрее, чем в оригинале). Умножитель использовал почти четверть из 4050 вакуумных ламп, которыми была оснащена машина. Некоторые организации строили собственные машины, но увидели возможность приобрести полный Mark 1 за еще меньшую цену. Они приобрели его примерно за 30 000 долларов, по цене, близкой к распродажной, и Беатрис Уорсли дала ему прозвище FERUT. FERUT широко использовалась в бизнесе, инженерии и академической среде, выполняя вычисления, в том числе в рамках строительства судоходного канала Святого Лаврентия.

Звезда 1

После первых двух машин появилась переработанная версия конструкции, известная как Ferranti Mark 1 Star или Ferranti Mark 1*. Ревизии в основном упростили набор инструкций для повышения удобства использования. Вместо первоначального сопоставления отверстий двоичным цифрам, которое приводило к случайному отображению, новые машины сопоставляли цифры отверстиям, создавая гораздо более простое сопоставление: ø£½0@:$ABCDEFGHIJKLMNPQRSTUVWXYZ. Кроме того, несколько команд, использующих индексные регистры, имели побочные эффекты, которые приводили к нестандартному программированию, но они были модифицированы, чтобы исключить эти побочные эффекты. Инструкции JUMP в оригинальных машинах выполнялись по адресу "на единицу меньше" фактического адреса, по причинам, аналогичным странному поведению индексов, но на практике они оказались полезными лишь в теории и вызывали раздражение, поэтому их также изменили. Ввод/вывод также был модифицирован: пятибитные числа выводились, начиная с младшего бита справа, как это обычно делается при записи чисел. Эти и другие изменения значительно облегчили программирование новых машин. Вес Mark 1/1* составлял…
По меньшей мере семь машин Mark 1* были поставлены в период с 1953 по 1957 год. Еще одна была установлена на заводе Avro, авиастроительной компании, в Чаддертоне, Манчестере. Она использовалась для работы над проектом "Вулкан" и другими проектами. Конвей Бернерс-Ли и Мэри Ли Вудс, родители Тима Бернерса-Ли, изобретателя Всемирной паутины, оба работали над Ferranti Mark 1 и Mark 1*.

Компьютерная музыка

В набор инструкций Ferranti Mark 1 входила команда "хут", которая позволяла машине выдавать операторам звуковую обратную связь. Высоту создаваемого звука можно было изменять, и этой особенностью воспользовались, когда Mark 1 сделал самую раннюю известную запись компьютерной музыки, исполнив попурри, включавшее "God Save the King", "Baa Baa Black Sheep" и "In the Mood". Запись была сделана BBC в конце 1951 года, а программирование выполнил Кристофер Стречи, учитель математики в школе Гарроу и друг Алана Тьюринга. Однако это был не первый компьютер, воспроизводивший музыку; CSIRAC, первый цифровой компьютер Австралии, сделал это раньше, исполнив "Colonel Bogey".

Компьютерные игры

В ноябре 1951 года доктор Дитрих Принц создал одну из самых ранних компьютерных игр – программу для игры в шахматы, предназначенную для компьютера Manchester Ferranti Mark 1. Ограниченные возможности компьютера Mark 1 не позволяли запрограммировать полноценную шахматную партию. Принц смог запрограммировать только решение шахматных задач в два хода для постановки мата. Программа анализировала каждый возможный ход белых и чёрных (тысячи возможных ходов), пока не находила решение, что занимало в среднем 15–20 минут. Программа имела следующие ограничения: запрещены рокировки, двойной ход пешкой, взятие на проходе, превращение пешки в другую фигуру, а также не проводилось различие между матом и паттом.