Читаем Инженер 2.1 полностью

Решившись, наконец, она выбрала клеточку ауры и разместила в ней сперва Любопытного, затем Упрямого. Голова закружилась, она пошатнулась и упала… в пропасть. Поверхность земли не встретила её, она не упала на мягкую шкуру, постеленную на полу юрты, а провалилась сквозь неё и, всё ускоряясь, полетела вниз. Ужас охватил её. Она падала в черноте в ещё большую черноту, не видя, а только чувствуя как увеличивается скорость с которой она несётся в бездну.

“Затухание! Здесь нет затухания!” — пришла ей в голову мысль. Она стала напрягать зрение, чтобы разглядеть что-нибудь вокруг. Ужас понемногу уходил: падение почему-то наполняло её энергией это прогоняло страх и даже доставляло удовольствие. Мимо иногда пролетали какие-то кляксы. “Другие духи земли” — решила она и сконцентрировала внимание на одной из них, чтобы успеть рассмотреть поближе. От проделанного мысленного усилия падение прекратилось. Сома висела и разглядывала кляксу аурным зрением.

Это не был элементаль земли. Это был элементаль огня! Она поняла это по злобе, исходящей из него. Клякса потянулась к ней, чтобы сожрать её ауру, она протянула к кляксе аурные руки и… оторвала ему голову! “Ну вот, теперь тебе нечем злиться!” — довольно подумала она и переместила внимание вверх. Тьма расступилась и она увидела солнце. Обычными глазами. Она стояла неподалёку от своей юрты и держала огненного в своих руках.

Ворона выпрыгнула на плечо, а затем взмыла в небо.

— Где-то и здесь встречались подобные кляксы, нужно найти и оторвать ему голову!

Понемногу расширяя круги и увеличивая высоту полёта, она вертела головой в поисках четвёртого, недостающего духа. Духи земли и воды остались там на земле. Это она их там оставила. Как она это сделала она не знала, она просто решила, что они останутся там и они остались. Раздумывая над тем, как же это так получается, она вдруг спикировала в пролетающее мимо пятно на ходу отрывая ему голову.

— Непоседа и Злой, сейчас посмотрим, что будет, если я соединю вас!

Она приземлилась у берега реки и всмотрелась в то, что могло получиться из этого. Большая огненная птица, ураганом летела над степью. У неё не получалось даже близко подлететь к самой себе: как только она снижалась ниже определённой высоты, всё внизу начинало гореть. И тело, её тело, тоже погибало от этого жара! Она не сможет становиться вороной, но… это получится, если Злого и Непоседу поселит в себе обычная Сома!

Получается, что аура должна быть одна! Нужно соединиться с телом. Держа в клюве свою добычу, она понеслась домой. “Всех четверых в одну клетку!” — решила она, набирая высоту.

<p><strong>Нападение</strong></p>

Отправив одно сознание в Эт, я доделывал своё ALU.

Пришлось пробные плетения переделать с четырёхбитных на девять бит. Я решил оснастить ALU несколькими совершенно одинаковыми аккумуляторами, нужно было определиться с их числом. Если аккумуляторов будет много, то большинство алгоритмов будут выполняться на регистровых переменных. Хотя предела по быстродействию вроде бы нет, но вдруг он всё-таки есть? Почему бы сразу не сделать сто двадцать восемь аккумуляторов? Селектор аккумулятора получился семибитным ну и я перешёл к девятибитной пробной архитектуре. Когда количество возможных команд превысит две, то опять придётся расширять шину, но это вроде несложно. Просто каждый опытный образец плетётся всё дольше и дольше.

Второй командой моего будущего ассемблера стала загрузка аккумулятора значением. Номер аккумулятора прописывается прямо в коде команды.

По аналогии с командой перехода по адресу, новая команда тоже состояла из двух слов: следующая за кодом команды ячейка содержит константу, которая попадёт в аккумулятор. Вроде бы всё хорошо, но расход памяти получился избыточный. Что переход по адресу, что загрузка значения — расходуют две ячейки. Две сто двадцати восьми битные ячейки! Это конечно фигня, но мой перфекционизм это задело и я сделал ещё две версии для каждой из команд, помещающиеся в одну ячейку. Если адрес или загружаемое число меньше чем 2^112, то можно экономить память программ.

Тут я снова упёрся в то, что разрядность опытного процессора нужно расширять и снова переделал перфокарты на то, чтобы шина была десятибитной. Опытное ALU теперь плетётся около получаса, а оно пока умеет-то всего две команды: перейти по адресу и загрузить аккумулятор. Чем дальше, тем более муторная разработка.

Нужно сплести минимальное самодостаточное ядро и переходить от Радио-86РК на него! Получается, ещё нужно две версии условного перехода по значению бита в статусном регистре, адресная загрузка из аккумулятора в память и из памяти в аккумулятор. С регистром стека можно подождать. А вот арифметику тоже надо доделать. Это получается ещё несколько недель возни не меньше! Мда.

От депрессивных раздумий над морем работы, меня ожидающей, меня отвлекла Эт.

— Гляди, там похоже пожар! — отправила она мне мысль.

Горизонт в направлении Цехина алел красным.

Перейти на страницу:

Все книги серии Инженер (Эд Нерский)

Похожие книги