В результате экспериментов с сегментами, программа "Hello World", мутировала в программу "Goodbye debugger" :)
Вывел два штамма, далее было лень, так как надо изучать ассемблер. А то получилось, что язык еще не изучил, а сносить крышу отладчикам уже научился. В общем, случайным образом, «открыл» пару антиотладочных приемов.
Итак первого мутанта в студию :)
Эта программа, если ее запустить на исполнение, ведет себя совершенно нормально и выводит наше супер сообщение, а вот когда она начинается исполнятся под отладчиком, то в окне кода отладчика, команды изменяются динамически, и появляются такие, которых в исходном тексте нет. Довольно забавно смотреть на это дело в отладчике.
Этот скриншот еще до выполнения первой команды:
А вот что получаем по ходу выполнения:
А это то, что выводит програ вместо сообщения Hello World, под отладчиком:
Забавненько, да?!
Теперь посмотрим на второго монстрика. Эта штучка напрочь выносит отладчик, завешивая его:
Исполнение третье команды приводит вот к такому результату:
После чего отладчик вываливается в командную строку :)
Вот так и свернули голову отладчику, даже не научившись еще программировать :)
Причем, обе программы, без отладчика, работают вполне корректно, выводя наше супер сообщение миру.
Комментариев нет:
Отправить комментарий