Введение

Electrologica X1 - цифровой компьютер, разработанный и изготовленный в Нидерландах с 1958 по 1965 год. Около тридцати из них были произведены и проданы в Нидерландах и за рубежом. X1 был разработан Математическим центром в Амстердаме, академической организацией, которая занималась разработкой компьютеров с 1947 года, и изготовлен Electrologica NV, компанией, созданной специально для производства машины. X1 был твердотельным бинарным компьютером ("полностью транзисторизованным" В 1965 году X1 был заменен X8. Electrologica была приобретена Philips несколько лет спустя. В результате условный вывод может быть основан на тестах, сделанных некоторое количество строк ранее, а не на условиях, основанных только на результате самой последней арифметической операции. Это позволило компактно выразить программы. Следующий пример демонстрирует загрузку значения памяти в n в аккумулятор A, вызов подпрограммы (которая, предположительно, использует это значение в A), и, наконец, настройка A на абсолютное значение чисел, прочитавших: 2A n P // копировать [n] на A, установить флаг условия на "да", если положительное 6T fn 0 // вызвать функцию на fn, которая вернется с флагом условия сохранен N 5P AA // если флаг условия "нет", скопировать A на A.

Сборщик

X1 включал в себя простой сборщик в своей памяти только для чтения. У него довольно основные особенности: символические адреса могут быть определены, но символы длиной всего две буквы. Инструкции называются комбинацией цифр, представляющих операцию, и буквы, обозначающей регистр, на котором будет выполняться операция, или одной или двумя буквами, указывающими класс операции. Например, "0A" означает "добавить содержание памяти в аккумулятор A", а "5P" означает "установить аккумулятор на отрицательное значение другого аккумулятора". Обычно символические адреса используются для обозначения "параграфов", т.е. связанных блоков кода или данных. Символические адреса будут изменены "номером строки" (цифровым смещением) и "номером страницы" (число в диапазоне от 0 до 31). Например, "3 FE 6" - это строка номер 3, страница номер 6, представляющая собой смещение 195 (6 * 32 + 3) от начала пункта FE. Эта адресная нотация является особенностью ассемблера; аппаратное адресование просто использует 15-битовые адреса.