Еггогология

Введение

Еггогология — изучение скрытых возможностей микрокалькуляторов.

Название происходит от сообщения об ошибке «ЕГГОГ» (англ. Error — ошибка), которую выдавали отечественные программируемые микрокалькуляторы второго поколения (Электроника Б3-34, МК-54, МК-56, МК-61, МК-52). Термин впервые появился в журнале «Техника — молодёжи» после цикла статей, посвященных программированию на микрокалькуляторах серии «Электроника Б3-34» и увлекательного фантастического путешествия с Луны на Землю (автор — Михаил Пухов) под общим названием «Кон-Тики: путь к Земле». В этом цикле, кроме игровых программ, описывались различные недокументированные возможности микрокалькуляторов и видеосообщения, многие из которых получались путем манипуляций с клавишами после появления сообщения об ошибке «ЕГГОГ».

Числовой океан

Числовой океан «Электроники Б3-34» — принятое название расширенного диапазона чисел, которым могли оперировать советские ПМК. При выводе некоторых из них на экран происходят забавные вещи. Попробуем, пользуясь средствами современной CMS и терминологией из «ТМ», произвести классификацию «арифметических чудовищ».

На индикатор ПМК, как известно, выводились числа, не превышающие по величине 9,9999999 ВП 99 (9,9999999 — мантисса, 99 — порядок числа). Они для нас столь же привычны, как и обычные рыбы земных водоёмов. Однако «Электроника Б3-34» (и последующие модели ПМК) была способна формировать числа гораздо большие (с порядком до 1000!), причём при соответствующем навыке каждое из них можно «изловить» (записать в регистр), проанализировать, а затем как-то использовать. Конкретный вид и свойства этих «арифметических чудовищ» зависят от глубин, где они водятся (точнее, от величины порядка). «Охота» на них — занятие увлекательное и в ряде случаев небезопасное.

Глубины (порядки) до 100 заселены обычными числами. Следующий «этаж» (от 100 до 199) принадлежит EГГ0Г-ам.

На предпоследнем этаже безраздельно властвует Ноль, дальше начинается зона обычных чисел с постепенно уменьшающимися отрицательными порядками, наконец после 1000 круг замыкается — на сцену вновь выступают числа с положительными порядками, затем EГГ0Ги, и всё повторяется.

1. Числа (0…99)

1-й этаж. Здесь обитают обычные числа с положительными порядками. Они для нас столь же привычны, как и обычные рыбы земных водоёмов. У них, конечно, много всяких любопытных свойств (как и у самых обыкновенных земных животных), но к еггогологии они не относятся.

---
Минимальное число: 0
Максимальное число: 9,9999999 ВП 99

2. EГГ0Ги (100…199)

2-й этаж. EГГ0Ги, населяющие глубины (порядки) от 100 до 199 — самые неинтересные из обитателей электронного океана Б3-34. В общем-то, это обычные числа, которые можно делить, умножать, складывать, записывать в регистры, но которые не выводятся на индикатор в силу своей чрезмерной величины.

Изловить EГГ0Га проще простого: достаточно, например, отдать команду 1 ВП 50 Fx^2 П0 Сx, и EГГ0Г (десять в сотой степени) сидит в регистре 0! Если теперь разделить его, допустим, на 10, то на индикаторе появится совершенно обыденная единица с порядком 99.

---
Минимальный EГГ0Г: 1 ВП 100
Максимальный EГГ0Г: 9,9999999 ВП 199

3. 3ГГ0Ги (200…299)

3-й этаж. Если возвести EГГ0Га (1 ВП 50 Fx^2) в квадрат (или иным способом получить число с показателем степени между 200 и 299), на индикаторе появится 3ГГ0Г. Эти числа также можно умножать, складывать, записывать в регистры и так далее. Однако, помимо этого, 3ГГ0Г обладает целым рядом присущих только ему и весьма полезных свойств.

  1. Десятичная точка при появлении 3ГГ0Га сохраняет своё положение, как бы "наследует" его от предыдущего числа. Запишите какого-нибудь 3ГГ0Га в произвольный регистр. Наберите на индикаторе любое число (в его состав, естественно, обязательно входит десятичная точка — если число целое, она его замыкает) и вызовите 3ГГ0Г на индикатор. Точка осталась на прежнем месте. Это свойство позволяло использовать 3ГГ0Гов в электронных играх для визуальной индикации положения объекта.
  2. Всякий 3ГГ0Г выполняет операцию безусловного перехода на адрес, совпадающий с первыми двумя цифрами порядка "зашифрованного" под ним числа. Так, полученный нами 3ГГ0Г равен 10 в двухсотой степени; если при его появлении на индикаторе отдать команду F ПРГ, убедимся, что справа горит 20.
  3. Всякого 3ГГ0Га, появившегося на индикаторе, легко "расшифровать" с помощью следующей процедуры: нажать F АВТ, затем десятичную точку — справа на индикаторе загорится трёхзначный порядок числа, которое прячется под личиной 3ГГ0Га. Снова нажмите F АВТ — слева на индикаторе появится мантисса числа, справа — некий новый показатель, весьма причудливый, зависящий от способа появления данного 3ГГ0Га на индикаторе и для дешифровщика бесполезный. Применение этой процедуры к нашему 3ГГ0Гу даёт порядок 200 и мантиссу 1, как, очевидно, и должно быть.
  4. Предыдущее свойство подсказывает эффективный приём формирования видеосообщений (чисел с буквенными порядками).
  5. 3ГГ0Г, записанный в регистр 9 либо 0, может использоваться как анализатор состояния программного счётчика.

---
Минимальный 3ГГ0Г: 1 ВП 200
Максимальный 3ГГ0Г: 9,9999999 ВП 299

4. Чудовища (300…399)

4-й этаж. Здесь, на глубинах 300…399, располагается вотчина диких и неукротимых чудовищ, норовящих при малейшей оплошности со стороны охотника привести программу в негодность и заставить его выключить ПМК.

---
Минимальное чудовище: 1 ВП 300
Максимальное чудовище: 9,9999999 ВП 399

5. 0C-оборотни (400…499)

5-й этаж. Данный этаж (от 400 до 499) заселен 0C-оборотнями — существами очень полезными, но, в свою очередь, подразделяющимися на многочисленные семейства.

---
Минимальный 0C-оборотень: 1 ВП 400
Максимальный 0C-оборотень: 9,9999999 ВП 499

6. Тьма (500…599)

6-й этаж. Здесь (от 500 до 599) располагаются владения Тьмы, при любом контакте с этой таинственной и грозной субстанцией индикатор гаснет, и приходится отключать ПМК. (Отметим, что с Тьмой можно случайно столкнуться и на других этажах.) Глубже, за пределы Тьмы, можно проникнуть лишь с помощью специального "водолазного оборудования" (соответствующих программ).

Для первого знакомства с ней можно в режиме АВТ набрать на клавиатуре такую, например, последовательность команд: 1 ВП 70 Fx^2 Fx^2 Fx^2. Индикатор гаснет — наши действия привели к числу 10^560, а это, конечно же, Тьма. Легко убедиться, что ПМК не отзывается теперь ни на один приказ с пульта. однако если его выключить на несколько секунд, а затем включить снова, он будет работать, как ни в чём не бывало.

---
Минимальная Тьма: 1 ВП 500
Максимальная Тьма: 9,9999999 ВП 599

7. C-EГГ0Гы (600…699)

7-й этаж. Медлительные C-EГГ0Гы.

---
Минимальный C-EГГ0Г: 1 ВП 600
Максимальный C-EГГ0Г: 9,9999999 ВП 699

8. Монстры (700…799)

8-й этаж. Ниже C-EГГ0Гов (от 700 до 799) обитают неповоротливые монстры, чьи повадки тем не менее заставляют вспомнить безудержных чудовищ 4-го этажа и "охота" на которых протекает аналогично. На этот этаж можно проникнуть и без "водолазной" программы, "вплавь" (то есть в режиме АВТ), со стороны чисел с отрицательными порядками. Например, так: 0,01 (количество нулей после запятой может быть произвольным) ВП /-/ 99 Fx^2. На индикаторе — 80,10000000 9.

---
Минимальный монстр: 1 ВП 700
Максимальный монстр: 9,9999999 ВП 799

9. Нуль (800…899)

9-й этаж. На предпоследнем этаже (порядки между 800 и 899, а также между -100 и -199) безраздельно властвует Ноль (самый обычный, насколько удалось выяснить). Проверьте это сами.

---
Минимальный Нуль: 1 ВП 800
Максимальный Нуль: 9,9999999 ВП 899

10. Числа (900…999)

10-й этаж. Здесь (от 900 до 999) начинается зона обычных чисел с постепенно уменьшающимися отрицательными порядками, после чего круг замыкается.

---
Минимальное число: 1 ВП 900 (1 ВП -100)
Максимальное число: 9,9999999 ВП 999 (9,9999999 ВП -1)

Ссылки