Към текста

Метаданни

Данни

Серия
Д-р Джереми Лоугън (1)
Включено в книгата
Оригинално заглавие
Deep Storm, (Пълни авторски права)
Превод от
, (Пълни авторски права)
Форма
Роман
Жанр
Характеристика
  • Няма
Оценка
5,1 (× 53 гласа)

Информация

Сканиране, разпознаване и корекция
nqgolova (2007)

Издание:

Оформление на корица: „Megachom“, 2007-12-19

ИК „БАРД“ ООД, 2007

История

  1. — Добавяне
  2. — Добавено означение на 41 глава, поправка в програмата от 22 глава

ГЛАВА 25

Вратата на лабораторията на Джон Марис беше отворена, но въпреки това Ашър почука.

— Влез — каза криптологът.

Лабораторията на Марис беше най-чистата и подредената в Базата. Не се забелязваше нито прашинка. С изключение на няколкото наръчника, старателно натрупани на купчина в ъгъла, на бюрото нямаше нищо освен клавиатура и компютър с плосък екран. Нямаше снимки, нито плакати или лични спомени. От друга страна, това беше типично за Марис — стеснителен, сдържан, затворен и потаен за личния си живот и мнението си. Изцяло отдаден на работата си. Идеалните качества за криптолог.

Жалко, че сегашният му проект — кратък и очевидно лесен за разбиване шифър, се оказваше толкова труден и сложен.

Ашър затвори вратата, седна на единствения стол за посетители и каза:

— Получих съобщението ти. Успя ли да разбереш нещо от атаките с груба сила?

Марис поклати глава.

— А с филтрите за хаотични байтове?

— Нищо смислено.

— Разбирам. — Ашър прегърби рамене. Когато бе получил имейла от Марис да се отбие при него при първа възможност, той почувства прилив на надежда, че криптологът е разгадал шифъра. В устата на флегматичния Марис обаче думите „при първа възможност“ всъщност бяха крещяща молба за незабавна консултация.

Марис го погледна, после отмести очи.

— Питах се дали не подхождаме към шифъра от погрешен ъгъл.

Ашър се намръщи.

— В смисъл?

— Снощи четох една книга за живота на Алън Тюринг.

Ашър не се изненада. Марис беше опитен, стремящ се към съвършенство учен и работеше върху втора докторска степен по история на компютрите, а Алън Тюринг беше култова фигура в първите компютърни теории.

— Продължавай.

— Ами… Знаеш ли какво представлява машината на Тюринг?

— Опресни паметта ми, ако обичаш.

— През тридесетте години на двадесети век Алън Тюринг конструира теоретичен, абстрактен компютър, известен като машината на Тюринг. Състои се от хартиена лента с произволна дължина, изпъстрена със символи от някаква крайна азбука. Върху нея минава „глава“, която разчита символите въз основа на таблица. Положението на главата се променя в зависимост от символите, които разчита. Лентата записва или информация, или краен списък от инструкции, кратки програми. В съвременните компютри лентата е паметта, а главата микропроцесорът. Тюринг твърди, че теоретичният компютър може да изчисли всичко. Той е първият.

— Продължавай — повтори Ашър.

— Замислих се за шифъра, който се опитваме да разкодираме. — Марис посочи екрана на компютъра, където светлинните пулсации на маркера излъчваха сигнала — той сякаш им се подиграваше с краткотрайността и загадъчността си.

1111100000101010001101011001110010000101
0001001100010100011010011000010000000000

— Запитах се дали това не е лента на Тюринг — продължи Марис. — И какво ще направят нулите и единиците, ако ги пуснем през машината на Тюринг?

Ашър бавно се наведе напред.

— Мислиш, че тези осемдесет бита са компютърна програма?

— Знам, че звучи налудничаво, сър.

— Съвсем не. — „Не по-налудничаво от факта, че сме тук — помисли си Ашър. — На дъното на морето и копаем“. — Продължавай — каза на глас за трети път.

— Добре. Първо трябваше да разбия редицата нули и единици на отделни команди. Предположих, че първите стойности 00000 и 11111 са указания, които обозначават дължината на всяка инструкция и че всяка дигитална „дума“ е дълга пет бита. Така ми останаха четиринадесет петбитови инструкции. — Марис натисна един клавиш и дългата редица цифри изчезна. На нейно място се появиха серии кратки редове:

10101
00011
01011
00111
00100
00101
00010
01100
01010
00110
10011
00001
00000
00000

Ашър се втренчи в екрана.

— Кратка е за компютърна програма.

— Да. Трябва да е много елементарна компютърна програма. И на машинен език — основният, универсален, дигитален език.

Ашър кимна.

— И после?

— Сутринта съставих кратка програма, която да сравни тези стойности с крайния списък инструкции, написани на стандартния машинен език. Програмата даде всевъзможни инструкции на стойностите, една по една, и после провери дали ще се появи компютърна програма, с която може да работи.

— Какво те кара да мислиш, че подателите на посланието използват същия машинен език за инструкции като нашия?

— На бинарно ниво има някои дигитални инструкции, които са общи за всяко въобразимо компютърно устройство — инкремент, декремент, прескочи, пропусни, ако е нула, и булеан логика. Затова оставих програмата да върви и продължих с другата си работа.

Ашър кимна.

— Преди двадесетина минути програмата завърши проверката.

— И четиринадесетте реда преведоха ли се в някоя компютърна програма?

— Да. В една.

— Сериозно?

— Програма за прост математически израз. Ето я. Марис натисна друг клавиш и на монитора се появиха редици инструкции.

Ашър нетърпеливо се наведе напред.

ЛИНИЯ № МНЕМОНИКА ЗАБЕЛЕЖКИ
00101 ADD /Зареди установена единица /от числото в позиция 13 (десетична дроб)
00011 00011
01011 CNM /Сложи обратен знак на числото.
00111 PLC /Въведи полученото число /в позиция 14.
00110 00100
00101 ADD /Извади от /числото в позиция 12.
00010 00010
01100 ISZ /Инкремент и пропусни, ако е нула.
01010 JMP /Върни програмния контрол /на стъпка 6.
00110 00110
10011 КРАЙ /Затвори програмата.
00001 /Позиция 12
00000 /Позиция 13
00000 /Позиция 14

— Какво прави програмата? — попита Ашър.

— Ще забележите, че е написана като серия от повтарящи се изваждания, закодирани в кръг. Така се извършва делението на машинен език — чрез повтарящо се изваждане. Е, поне единият от начините. Може също да използваш десния SHIFT за аритметически действия, но това изисква по-специализирана компютърна система.

— Тогава е деление.

Марис кимна.

Ашър почувства изненада и озадаченост, примесени с внезапно силно вълнение.

— Не се колебай. Кое число се дели?

— Едно.

— Едно. И на какво се дели едно?

Марис облиза устни.

— Ами, проблемът е там, че…