Андрей Ходов - Игра на выживание
— Мобильные телефоны? — переспросил Сергей. — Нашли с десяток, два из них повреждены. Еще пару карманных электронных калькуляторов, но на них одна арифметика. А при чем тут телефоны?
— В этих аппаратах стоит достаточно мощный процессор, с производительностью порядка нескольких сотен миллионов операций в секунду. А, например, знаменитая советская ЭВМ БЭСМ-6, созданная в середине 60-х годов на элементной базе полупроводниковых транзисторов, имела быстродействие порядка одного миллиона операций в секунду. Размером она была кубометра в три. И тогда это было чуть ли не фантастикой.
— Любопытно, — воодушевился Сергей, — а почему вы раньше не сказали? И не только вы. Подождите, сейчас припоминаю. Был же разговор по поводу этой техники. Этот ваш пацан, который «типа почти программист», еще сетовал, что ничего путного не уцелело. Что свой «ноутбук» в панике в салоне оставил и что никто из спасшихся не захватил с собой даже «смартфона». Это, как я понял, нечто вроде маленького компьютера. А телефоны, по его словам, в этих целях использовать нельзя. Или все же можно?
Инженер хмыкнул.
— Вопрос сложный. Располагая полной документацией на конкретную модель, несомненно, можно. Не имея означенной документации, весьма проблематично.
— А в чем сложности?
— Как я понял, специалиста по языку ассемблера у вас нет? Протоколы связи тоже неизвестны. То есть процессор-то мы имеем, но вот как ему отдавать команды, непонятно. Разбираться придется методом научного тыка, а это долгая и кропотливая работа. Но попробовать, думаю, стоит. Представьте, что вам в руки попал космический корабль высокоразвитой инопланетной расы. Да, совершенно непонятно, как эта штука работает, включая даже то, что неясно, где у нее перед, а где зад. Но если знаешь, что человечество достигнет такого уровня лет через тысячу, то разбираться все равно надо. Вдруг повезет и машиной удастся воспользоваться, несмотря на опасность взлететь на воздух, нажав не на ту кнопку.
Так и здесь. Мы знаем, что еще лет тридцать процессоры этих телефонов будут самыми мощными вычислителями на планете.
— Хм, — Сергей задумался, — а зачем вообще в этой игрушке вычислитель такой мощности?
— Нужен, вообще-то при кодировании и раскодировании сигнала он решает достаточно сложную математику. Обратное преобразование Фурье, кажется, да еще в режиме реального времени. Плюс к тому стало модно вешать на телефон разные сервисные программы. Игры, например, требуют немалых ресурсов.
— Ясно, но я так и не понял, реально можно воспользоваться этими вашими процессорами или нет? И что для этого нужно?
— Думаю, что реально. В конце концов, эта техника сделана не пришельцами из космоса, а людьми. Если уж язык майя расшифровали, то и с языком ассемблера должны справиться. Хотя это может занять пару-тройку лет.
Что нужно? На первом этапе небольшая команда толковых ребят, человека три, хороший осциллограф. Еще нужно будет какое-то примитивное устройство для ввода информации. Например, перфоленту протягивать через фотоэлементы. Клавиатуру выносную надо сделать, а то штатная мелкая и долго не протянет. Систему для фотографирования экрана. С процессором лучше работать через порты USB или RS232, тогда сжечь его маловероятно. Вот только какие там рабочие частоты? В общем, надо разбираться. Проблем наверняка будет много, но решить их можно. Шансы неплохие.
— Ясно, — Сергей задумался. — А если получится, как вы говорите, расшифровать этот ваш «ассемблер», пусть и через пару лет, тогда что? Можно будет делать расчеты?
— Естественно, но как быть с секретностью, вам лучше знать.
— А могут быть сложности?
— Сложности будут, а как иначе работать? По-хорошему, вокруг каждого процессора может вырасти целый НИИ. Во главе, ясное дело, солидный академик, под его началом несколько хороших математиков. Математикам работы будет много. Появление высокопроизводительной вычислительной техники потребует новых разделов в математике. Численное интегрирование, численное решение дифференциальных уравнений, корреляционный анализ и всякое такое. Программы надо будет писать, отлаживать, для этого потребуются программисты. Девочки-операторы в немалых количествах. Вокруг процессора будут стоять периферийные устройства отечественного производства. Чтобы поддерживать их в работоспособном состоянии, опять же понадобятся люди. В общем, вырисовывается вычислительный центр с сотнями суетящихся сотрудников.
— Да, картинка впечатляющая. А как-нибудь потихоньку нельзя? В смысле, только самые важные расчеты делать. В ограниченных количествах?
— А кто эту важность определять будет? Вы что? Ученых не знаете? Им дай палец, тут же всю руку откусят. Допустим, «тихонько» рассчитаете параметры траектории первого искусственного спутника Земли. Его успешно запустят. А когда понадобится второй запускать? Что вы им скажете? Мол, дальше, ребята, сами, на логарифмической линейке считайте?
— Ладно, подумаем, — подвел итог Сергей. — Дело такое, что надо с руководством посоветоваться. Но в любом случае попробовать придется. Хотя бы первый этап, там людей понадобится немного, расходы тоже невелики. Если не получится, то нечего и копья ломать. А если получится… Кстати, сами за это дело не возьметесь?
— Если прикажут, то возьмусь. Но в электронике я не спец, в программировании тоже плаваю изрядно. И вообще, это работенка для молодых и любопытных. А этот «типа программист», с коим вы не удосужились меня познакомить из соображений перестраховочной паранойи? Может, лучше он?
— Может, и лучше. Но он нам этого варианта вообще не предложил. Будем теперь разбираться почему. То ли специалист липовый, то ли…
— Да ладно вам, — усмехнулся инженер, — думаю, что дело тут не в попытке саботажа. Просто молодежь у нас пошла избалованная, привыкшая к легким путям. Варианты, предусматривающие несколько лет кропотливой работы, без гарантии успеха отбрасывает как невозможные на подсознательном уровне. Кстати, вполне возможно, что с языком ассемблера он шапочно знаком. Может даже, писал на нем небольшие программы. В смысле, учить не учил, но если есть под рукой соответствующие руководства, то это не сложно. Со справочником в руках и я бы справился. Без руководства гораздо сложнее, но приз того стоит. Возможность использовать высокопроизводительную вычислительную технику — стратегическое преимущество. Вполне вероятно, что это преимущество существенно поможет нашей стране занять достойное место в мире, а может, и спасет ее от гибели. Такими шансами не разбрасываются!
Вернувшись на Объект, Сергей приказал привести к себе в кабинет «типа программиста», Владислава Валерьевича Тарасова, молодого веснушчатого парня восемнадцати лет от роду.
— Гражданин Тарасов, у меня есть к вам ряд вопросов.
— А почему это «гражданин»? — насторожилось молодое дарование. — Чего я сделал-то?
— Дело не в том, что вы сделали, а в том, что не удосужились сделать. Что, знаете ли, наводит на мысль о сознательном саботаже.
— Каком еще саботаже? — задергался парень. Было видно, что он не знает, куда деть руки. — На все вопросы отвечаю. Ну, если знаю. Бумаги кипу исписал.
— А мобильные телефоны?
— А что телефоны? Я все про них рассказал. Даже смотрел. В смысле, нет ли в них каких полезных программ. Так их там и нет, одни никчемные игрушки. Теперь дело за вашими спецами. Пусть курочат, может, чего полезного надыбают.
— Речь идет об использовании процессоров мобильных телефонов в качестве мощных вычислителей. Почему вы не сообщили нам о такой возможности?
— Чего? Ну, вы даете! Я об этом первым делом подумал, только фигня все это. Ничего не получится! Вот если бы мануал на эти девайсы был, тогда можно было бы попытаться их юзать. А без мануала…
— Тихо, — оборвал парня Сергей. — Теперь еще раз, медленно и по-русски. Почему не получится?
— Ну, бумаг на эту технику нет. А без бумаг непонятно, как с этим процессором общаться. Язык неизвестен, понимаете? И периферийных устройств тоже нет. То есть ни ввести ничего, ни вывести. Хотя вывести что-то можно, дисплей есть. Но неудобно.
— А какой там язык? — поинтересовался Сергей. — Ассемблера?
— Откуда вы…? А, ну да… Ну, ассемблера, а толку?
— А вы его, конечно, не знаете и никогда не пользовались?
— Так его никто кроме узких спецов и чокнутых хакеров не знает. Зачем парить себе мозги, когда можно мануал посмотреть. Если уж очень приспичит хитрую прогу написать.
— А вы смотрели? Писали?
— Ну, смотрел. Ну, писал пару раз по случаю. Так ведь не помню ни фига! А мануала нет!
— Вот и отлично! Займетесь дешифровкой языка. Методом, так сказать, научного тыка. Два дня на размышления. Потом сообщите, что вам для этого понадобится. Какие специалисты, какая аппаратура и так далее. Задача: дешифровать язык процессора с тем прицелом, чтобы можно было выполнять сложные инженерные расчеты. Дополнительное условие: процессоры жечь недопустимо, других взять, как понимаете, негде. Год сроку!