Серия APE (X) Cили All Purpose Electronic (X) Computerбыла разработана Эндрю Дональдом Бутом в Биркбек-колледж, Лондон в начале 195 г. 0 с. Его работа над серией APE (X) C спонсировалась Британской ассоциацией районных исследований. Хотя соглашения об именах немного неясны, похоже, первая модель принадлежала BRRA. По словам Бута, X обозначало компанию X.
Одна из серий была также известна как APE (X) C или All Purpose Electronic X-Ray Computerи располагалась по адресу Биркбек.
С 1943 года Бут начал работать над определением кристаллических структур с использованием данных дифракции рентгеновских лучей. Вычисления были чрезвычайно утомительными, и у него было достаточно стимулов для автоматизации процесса, и он разработал аналоговый компьютер для вычисления взаимных расстояний дифракционной картины.
В 1947 году вместе со своим сотрудником и будущей супругой Кэтлин Бриттен, он провел несколько месяцев с командой фон Неймана, которая в то время была лидером компьютерных исследований.
Бут разработал электромеханический компьютер (Компьютер с автоматическим реле) в конце 1940-х (1947-1948). Позже они построили экспериментальный электронный компьютер под названием SEC (разработан примерно в 1948-1949 годах) и, наконец, серию APE (X) C (All-Purpose Electronic Computer).
Компьютеры были запрограммированы Кэтлин..
Серия APE (X) C включала следующие машины:
Было построено только по одной из этих машин, за исключением HEC (и, возможно, MAC), которые были коммерческими машинами, выпущенными в довольно больших количествах на то время, около 150. Они были похожи по конструкции, с небольшими различиями, в основном в оборудовании ввода-вывода. APEHC был устройством перфокарт, а APEXC, APERC и APENC - телетайпами (клавиатура и принтер, плюс бумага лента читатель и перфоратор). Кроме того, в UCC было 8k слов памяти вместо 1k слов для других машин, а MAC использовал германиевые диоды для замены многих ламп.
В марте 1951 года британская компания по производству табуляторов (BTM) отправила команду в мастерскую Эндрю Бута. Затем они использовали его дизайн для создания Hollerith Electronic Computer 1 (HEC 1) до конца 1951 года. Этот компьютер был прямой копией схем Эндрю Бута с дополнительными интерфейсами ввода / вывода. HEC 2 был HEC 1 с более умным металлическим корпусом и был построен в 1953 году. Немного модифицированная версия HEC 2 затем продавалась как HEC2M, а затем продавались 8. На смену HEC2M пришел HEC4. В конце 1950-х было продано около 100 HEC4.
HEC использовала стандартные перфокарты ; HEC 4 также имел принтер и содержал несколько инструкций (например, разделить ) и регистры, которых нет в APEXC.
Эмулятор для серии APEXC был разработан MESS. Они описывают его работу следующим образом:
APEXC - невероятно простая машина.
Команды и слова данных всегда имеют длину 32 бита. Процессор использует целочисленную арифметику с дополнением до 2. Адреса имеют длину 10 бит. APEXC не имеет RAM, за исключением 32-разрядного аккумулятора и 32-разрядного регистра данных (используется вместе с 32-разрядным аккумулятором для реализации 64-разрядных инструкций сдвига и удержания 64-битный результат умножения ). Инструкции и данные хранятся на двух магнитных барабанах , всего 32 круговых магнитных дорожки по 32 слова. Поскольку скорость вращения составляет 3750 об / мин (62,5 оборота в секунду), скорость выполнения программы может возрасти от теоретического максимума 1 kIPS до ниже 100IPS, если программные инструкции и данные не являются смежными. Сегодня многие говорят, что карманный калькулятор быстрее.
Одна странность заключается в том, что нет счетчика программ : каждая машинная команда включает в себя адрес следующей инструкции. Такой дизайн может показаться странным, но это единственный способ добиться оптимальной производительности с этой цилиндрической памятью.
Машинный код состоит только из 15 инструкций, а именно: сложение, вычитание, умножение, загрузка (3 варианта), сохранение (2 варианта), условное ветвление, правый арифметический сдвиг битов, правое вращение битов, ввод перфокарт, вывод перфокарт, остановка машины и переключение банков (что никогда не используется в APEXC, поскольку у него всего 1024 слова памяти, а адреса Длиной 10 бит). Так называемый векторный режим позволяет повторить одну и ту же операцию 32 раза с 32 последовательными ячейками памяти. Обратите внимание на отсутствие побитового и / или / xor и деления. Также обратите внимание на отсутствие режимов косвенной адресации: динамическое изменение кодов операций - единственный способ имитировать это.
Еще одна странность в том, что шина памяти и ALU имеют ширину 1 бит. Имеется тактовая частота 64 кГц и тактовая частота 2 кГц, и каждое слово памяти и арифметическая операция раскладываются на 32 1-битной памяти и арифметические операции: это занимает 32 битных цикла, в общей сложности из 1 цикла слова.
Процессор достаточно эффективен: большинство инструкций занимают всего 2 цикла слов (1 для выборки, 1 для чтения операнда и выполнения), за исключением операций сохранения, сдвига и умножения. ЦП APEXC квалифицируется как RISC ; другого адекватного слова нет.
Обратите внимание, что нет постоянной памяти (ROM), и, следовательно, нет загрузчика начальной загрузки или какой-либо программы запуска по умолчанию. Считается, что для APEXC никогда не писалась исполнительная или операционная система, хотя были своего рода подпрограммы библиотеки для общей арифметики, ввода-вывода и отладки. задачи.
Работа машины обычно осуществляется через панель управления, которая позволяет пользователю запускать, останавливать и возобновлять работу центрального процессора, а также изменять регистры и память при остановке ЦП. При запуске машины необходимо ввести адрес первой инструкции выполняемой программы на панели управления, а затем нажать переключатель работы. Большинство программ заканчиваются инструкцией остановки, которая позволяет оператору проверить состояние машины, возможно, запустить некоторые процедуры посмертной отладки (процедура дампа ядра описана в книге по программированию APEXC), затем введите адрес другой программы и запустите ее.
Поддерживались два устройства ввода-вывода: устройство чтения бумажной ленты и перфоратор для бумажной ленты. Вывод перфоратора при желании может быть подан на принтер (телетайпер). Вывод на принтер эмулируется и отображается на экране. Лента вводилась либо на компьютере с помощью APEXC, либо вручную с помощью специальной 32-клавишной клавиатуры (каждая строка ленты имела 5 отверстий для данных (<->бит), что дает 32 различных значения).