Всю планету бы в пыль расхреначило и была бы тут туманность Баранья Голова, блин. Моя, в смысле, голова.
Ну ладно, порадовался я везучести этой планеты в общем и себя в частности, отошел слегонца от переживаний и задумался. Микрограмм-то тот был едва ли не последний. Этой радиоактивной фигни и было-то всего ничего, да и тратил я его поначалу дай боже. По всему выходило, что надо мне к выработке энергии из обычного материала переходить. Превратил я последние крохи моего тяжелого элемента в энергию. Помаленьку, чуть ли не по молекулам отщипывая, чтобы не дай бог. Нехилые в результате получились батарейки, мегатонн на двадцать каждая. Ну и думать начал. Запустить реакцию - фигня, энергии на это пока хватит, надо ее как-то остановить еще. Решил рекурсию вглубь ограничить, передавать стало быть, параметр, увеличивать его с каждым вложением и дальше определенного уровня не опускаться.
Заложил для начала глубину, равную трем. Запустил. Весь материал распался на хрен-его-знает-что и пшик вышел. Ну, я так и ожидал. Закладываю сто - не запускается моя структурка, всю энергию из аккумулятора вычерпывает и дохнет. Закладываю десять - то же самое. Стал разбираться - понял. Параметр-то мой, тоже чуть-чуть, да энергии на себя забирает. А сколько этих параметров хранить надо? Столько же, сколько атомов в моем материале в степени глубины рекурсии. Да тут и чуть-чуть в охренительную прорву превратится. Нельзя, стало быть, параметр передавать.
Решил по времени процесс ограничить. Есть, знаешь ли, в магии возможность эдакий аналог таймера к заклинанию присобачить, и обращаться к нему по мере надобности. Вот только раньше я над быстродействием заклинаний не задумывался, а тут пришлось. За сколько времени необходимое количество энергии наберется? Прикинул в уме, решил что микросекунда - безопаснее некуда, со скважинами всякими загоняться и не стоит. Подвесил материал над столиком, прикрутил заклинание. Только вот одного не продумал - я ж по аналогии с земным компьютером прикидывал, он рекурсивные алгоритмы все равно последовательно выполняет - процессор-то один. А заклинание вполне может реальную параллельность процессов обеспечить. В неограниченном количестве этих самых процессов. Ну и опять я чуть не попал. Ладно, хоть не слишком близко стоял. Запустил свою машинку - хлоп! И нету столика. Хороший был столик, каменный такой, основательный. А в полу - яма сантиметров тридцать глубиной, круглая такая. И видно, что яма эта - часть шара. Прикинул я пропавшую массу, смотрю на свой перстень, к которому аккумулятор прилепил и чую, что опять Азраил меня по головке потрепал и мимо пролетел.
Ладно, батарейка заряжена, а что с ней делать? Это можно с паровым котлом сравнить. Есть в нем, скажем, сотня атмосфер, делаешь дырку, приделываешь к ней турбину и радуешься. А если в котле этих атмосфер пара миллиардов, а то и больше? В общем, взял я аккуратно тот перстенек, и отправил заклинанием в космос со скоростью где-то километров двадцать в секунду. Есть у меня теория насчет того, что никаких паралелльных миров не существует, а все эти порталы - нуль-т кабины в одной нашей вселенной; так что если там, на Земле, астрономы как-нибудь увидят летящий мимо перстень, намекни им, чтоб не трогали, пусть себе дальше летит, лады?
Семен усмехнулся, - заметано, - и подмигнул.
- Тогда я спокоен, - улыбнулся Вадим, - ну, вот я выяснил, что микросекунда - это много. Казалось бы, чего проще, ну сделай там наносекунду, или пикосекунду, а вот фигу там. И вам и нам. Не настолько этот таймер точный. У него один цикл как раз около наносекунды и длится. Плюс-минус трамвайная остановка. Поэтому меньше сотни мегаджоулей за раз у меня получить никак не выходит. Да что там сотни, обычно выходит пять-десять гигаджоулей, и ладно.
Ну, с этим хоть работать можно, так что особо не жалуюсь. Вот только подумаю иногда, что в котелке, в котором я себе чай кипячу, тонна тротилового эквивалента, и фигею помаленьку. А потом - ничего, опять нормально. Так и живу.
2. Вадик
Вадик вздохнул и раздраженно отодвинул клавиатуру. Зашумели, падая со стола, пустые пивные банки. Вадик задумчиво на них поглядел и принялся философствовать. 'Несомненно', - думал он - 'существует некая сила, целью которой является достижение максимального уровня энтропии, возможного в системе. И не только для термодинамики. Причем, в случае приложения некоей противоположной, упорядочивающей силы, первая сила возрастает экспоненциально. Иначе, почему так легко написать кривую, но работающую программу и так сложно - работающую, но с красивой внутренней структурой? По логике - должно быть наоборот, а хрен там. Значит, это кому-то выгодно. Значит, здесь проявляет себя некая сила, которая противится упорядоченному. Да мы, программисты, стало быть, просто какие-то солдаты армии Порядка, бойцы первой линии в бою с силами Хаоса'.
Вадик развеселился. Ткнул, не глядя, в клавиатуру и попал, конечно: 'Not againnn! ARRRGhh.'. - прорычали динамики голосом умирающего зомби, и экран потух. Вадик потянулся, с наслаждением хрустнув позвонками, и двинулся в поход на кухню. Поле боя осталось за силами Хаоса.
- Сложность всякой программы растет до тех пор, пока не превысит способностей программиста, - пробормотал он, вытягивая из глубин холодильника запотевшую бутылку 'Золотого фазана'.
- Я т-те покажу, превысит! - крикнул он, погрозив кулаком в сторону оставленного компьютера, - еще посмотрим, кто кого, мазеборд твой за ногу.
Вадик с размаху уселся в низкое кресло, одним духом выпил половину содержимого бутылки, и уставился в потолок. Мысли приняли благодушную окраску. 'Ну', - подумал Вадик, - 'Дванго сейчас наверняка бездельничает. Если, скажем, ему позвонить? И еще Нике. Или лучше Нике позвонить, а Дванго нафиг не надо? Не, лучше позвонить им обоим и еще Меге. Мега один не придет, Мега придет с бабами. И с двумя, как минимум. Вот и консенсус. Сейшн устроим, ммм..'., - Вадик мечтательно зажмурился и отхлебнул еще. 'Мда, неплохо. Но: не сегодня. Да, завтра. А еще лучше - послезавтра. Потому что завтра надо сдать уже эту четырежды гребаную глюкалу, потому что иначе хрен мне, а не триста баксов. И плакали пятьсот двенадцать метров мозгов, да и холодильник пустоват чего-то'. Вадик допил пиво, достал из холодильника две банки 'Туборга'и решительно пошагал обратно в комнату.
- Какого, спрашивается, я тебя выключал? - спросил он у безмолвного компьютера и с отвращением ткнул в кнопку 'Power'.
- 'I`m alive!', - торжествующе проревели колонки.
Проблема, если вдуматься, двух байт не стоила. Всего то нужно, получить данные с пяти устройств. Вот интерфейс, вот его описание. Запустить цикл типа 'пока не надоест'и в цикле же опрашивать эти пять устройств - чего уж проще. Но некрасиво. Поскольку теоретически может возникнуть ситуация пропадания данных, особенно если устройств будет не пять, а хотя бы десять. Поэтому Вадик замутил хитрейшую систему на прерываниях, кладущую данные в общий буфер, использующую отдельные потоки для каждого устройства, семафоры, критические участки... в общем, все, как у людей. Зато устройств эта система могла поддерживать очень много. Почти неограниченно. Заказчик, правда, утверждал, что их и пять-то бывает не всегда, но этот факт Вадика не волновал. Заказчик, как известно, никогда сам не знает, чего хочет. Программисту виднее. Сегодня зазкзчик говорит - пять, а завтра у него их пятьдесят пять. Так что нафиг. Ибо нефиг.
Задумчиво поводив мышкой, Вадик вздохнул и решительно ткнул курсором в пиктограмму MSDEV.