Рой - Майкл Крайтон

Шрифт:

-
+

Интервал:

-
+
1 ... 57 58 59 60 61 62 63 64 65 ... 109
Перейти на страницу:

— Эй, ребята! — окликнул нас Бобби Лембек. — Как там у вас дела?

— Разбираемся тут, что к чему. А что?

— Ветер ослабевает.

— Какая сейчас скорость ветра? — спросил я.

— Пятнадцать узлов. А было восемнадцать.

— Пятнадцать — не так уж мало, — сказал я. — Все в порядке.

— Я знаю. Просто предупреждаю вас.

В соседней комнате Рози спросила:

— Что такое термит? — она держала в руках пластиковую коробку, наполненную металлическими цилиндриками размером с большой палец.

— Поосторожнее с ними, — сказал Дэвид. — Наверное, это осталось после строителей. Видимо, они делали термитную сварку.

— Но что это такое?

— Термит — это смесь алюминия и оксида железа, — пояснил Дэвид. — Он дает очень высокую температуру горения — три тысячи градусов — и горит так ярко, что смотреть невозможно. Термитом плавят сталь для сварки.

— Много там таких штук? — спросил я у Рози. — Возможно, они нам пригодятся сегодня ночью.

— Там их четыре ящика. — Она достала один цилиндрик из коробки. — А как их поджигают?

— Осторожнее, Рози. Они в магниевой оболочке. Могут вспыхнуть от любого случайного источника тепла.

— Даже спичкой можно поджечь?

— Если хочешь остаться без руки. Лучше использовать сигнальные ракеты или осветительные патроны. Что-нибудь с фитилем.

— Понятно, — сказала Рози и скрылась за углом.

Счетчик радиации все еще щелкал. Я повернулся к умывальнику. Мае уже закрыла контейнер с изотопом и теперь переливала золотистую жидкость в бутылку из-под «Виндекса».

— Эй, ребята, слышите меня? — это снова был Бобби Лембек. — Я наблюдаю некоторую нестабильность. Ветер затихает. Скорость уже упала до двенадцати узлов.

— Хорошо, — сказал я. — Не нужно сообщать нам о малейшем изменении, Бобби.

— Просто я заметил нестабильность, вот и все.

— Я думаю, пока нам ничего не угрожает, Бобби.

Как бы то ни было, Мае должна справиться за несколько минут. Я подошел к компьютерному терминалу и включил его. Экран засветился, появилось меню. Я спросил:

— Рики, могу я вывести код роя на этот монитор?

— Код? — переспросил Рики. В его голосе мне послышались тревожные нотки. — Зачем тебе понадобился код?

— Я хочу посмотреть, что вы, ребята, туда наворотили.

— Зачем?

— Рики, бога ради, могу я его увидеть или нет?

— Можешь, конечно, можешь. Все версии кода в директориях через слэш после кода. Они запаролированы.

Я нашел нужную директорию. Но войти в нее не смог.

— Какой пароль, Рики?

— Пароль — л-а-н-г-т-о-н, все буквы строчные.

— Хорошо.

Я ввел пароль. И вошел в директорию, в которой были собраны все модификации программы, с указанием размера файла и даты изменений. Все документы были больших размеров. Это означало, что в них — все программы для разных аспектов системы роя. Потому что коды самих частиц обычно бывают маленькими — всего несколько строчек, на восемь-десять килобайт, не больше.

— Рики.

— Да, Джек.

— Где коды частиц?

— Их там нет?

— Черт тебя дери, Рики, перестань увиливать!

— Слушай, Джек, это не я занимался архивами…

— Рики, это рабочие файлы, а не архивы, — сказал я. — Скажи мне, где они?

Он помолчал немного, потом сказал:

— Там должна быть субдиректория Си-Ди-Эн. Коды в ней.

Я прокрутил страничку вниз.

— Вижу.

В этой директории я нашел список файлов, все — очень маленькие. Судя по датам модификаций, они начали создаваться около шести недель назад. А за последние две недели ничего нового не появилось.

— Рики, вы не меняли коды последние две недели?

— Да, примерно столько.

Я открыл самый последний документ.

— Вы делали краткие сводки?

Когда эти ребята работали в моей группе, я всегда требовал, чтобы они составляли краткое описание структуры программы на обычном языке. Такую сводку просмотреть гораздо проще, чем документацию внутри самого программного кода. К тому же, когда требуется сжато описать структуру программы, нередко удается решить логические проблемы.

— Они должны быть там же, — сказал Рики.

Я увидел на экране следующее:

/*Инициализировать*/

Для j=1 до LxV выполнить

Sj=0 /*установить начальный запрос до 0/

Закончить для

Для i=L до z выполнить

Для j=1 до LxV выполнить

Sij = (состояние (x,y,z))/*пороговые параметры агента*/

0ij = (требуемые (Сj,Нj))/*требуемые параметры агента*/

Реакция = 0/*начало реакции агента*/

Зона = z(i)/*начальная зона, не изученная агентом*/

Охват = 1/*активация перемещения агента*/

Закончить для

Закончить для

/* Главное*/

Для k1=1 до RVd выполнить

Для tm=1 до nv выполнить

Для S=L до j выполнить/*выслеживание окружающего*/

0ij = (требуемые (Сj,Нj))/*требуемые параметры агента*/

Sij (состояние (x,y,z))/*агент находится в движении*/

SikL = (действительное(x,y,z))/*отслеживать ближайшие агенты*/

Я какое-то время изучал записи, пытаясь понять, что они в них изменяли. Потом я пролистал вниз, до описания окончательного кода, чтобы посмотреть, как в конце концов они это выполнили. Но самого главного кода в папке не было. Вся совокупность поведения частиц была обозначена как объект со ссылкой на нечто под названием «комп. стат.».

— Рики, — сказал я. — Что такое «комп. стат.»? Где это?

— Должно быть там…

— Его здесь нет.

— Ну, я не знаю… Может, его скомпилировали.

— Но мне-то от этого не легче, правда? — Скомпилированный код прочитать невозможно. — Рики, я хочу увидеть этот чертов модуль. В чем проблема?

— Да нет никакой проблемы… Мне придется его поискать, вот и все.

— Хорошо…

— Я сделаю это, когда вы вернетесь.

Я посмотрел на Мае.

— Ты можешь найти код?

Она покачала головой. По выражению ее лица я понял, что кода мне не видать как своих ушей, что Рики будет придумывать все новые и новые отговорки, чтобы не допустить меня к нужной информации. Я только не понимал почему. В конце концов, я ведь затем сюда и приехал, чтобы помочь им разобраться с кодом. Я эксперт в этой области.

1 ... 57 58 59 60 61 62 63 64 65 ... 109
Перейти на страницу:

Комментарии

Обратите внимание, что комментарий должен быть не короче 20 символов. Покажите уважение к себе и другим пользователям!

Никто еще не прокомментировал. Хотите быть первым, кто выскажется?