• Авторизация


Чудеса оптимизации. 07-10-2007 18:04 к комментариям - к полной версии - понравилось!


Сижу, программирую. Чашка горячего чая, ритмичная музыка, код сам ложится в строчки - все отлично, ничто не предвещает беды. Запускаю написанный кусок на исполнение. Ошибка! Попытка чтения из, грубо говоря, неразмеченной под мои нужды области памяти. Что за нафиг? Сижу, проверяю. По идее, надо с семидесятью элементами массива сотворить некоторые преобразования. В массиве и есть ровно эти самые семьдесят элементов. Как проще всего? Верно, цикл, знакомый всем со школьной скамьи: for i:=1 to 70 do... Ничего не понимаю, все же должно быть как надо?.. Запускаю. Ошибка. Чай остывает. Картина мира дает трещину. Трассирую. Цикл начинается тем, что переменной i задается значение... 71! И при последующих итерациях уменьшается! Давлюсь чаем. Это что за новое слово в конной авиации? Что за сальто через левое ухо? Побеждаю глюк только сменой вида цикла на while-цикл с принудительным увеличением переменной. Видимо, компилятор соптимизировал цикл таким вот странным способом, перевернув его с ног на голову. Сколько программирую, а с такой акробатикой столкнулся впервые. Но зато теперь буду знать на будущее.
вверх^ к полной версии понравилось! в evernote
Комментарии (12):
Optical_Race 07-10-2007-19:11 удалить
Прикольно :)

Это ты на Паскакале программируешь?

Про "новое слово в конной авиации" улыбнуло :)
Acerus 07-10-2007-19:15 удалить
А чашку с чаем ты ставишь на выдвинутый лоток CD-ROM'а? :)
(У меня CD-ROM вертикально установлен, так что на него ничего поставить нельзя)
V_exeR 07-10-2007-22:44 удалить
Optical_Race, если точнее, то это был Дельфи. Все никак не соберусь с духом переписать свои проекты на си...
V_exeR 07-10-2007-22:50 удалить
Acerus, не пойму, это шутка какая или оскорбление? :D На всякий случай отвечу серьезно: нет, DVD-привод предпочитаю использовать по прямому назначению :)
V_exeR 07-10-2007-22:54 удалить
Optical_Race, кстати, про конную авиацию это старый прикол. Просто незаслуженно забытый :)
RKx 08-10-2007-09:31 удалить
" Сколько программирую, а с такой акробатикой столкнулся впервые" - эт ещё с паскаля идет:) Переходи на си...
Acerus 08-10-2007-11:24 удалить
Исходное сообщение V_exeR
Acerus, не пойму, это шутка какая или оскорбление? :D На всякий случай отвечу серьезно: нет, DVD-привод предпочитаю использовать по прямому назначению :)

Никаких оскорблений! Просто пошутил :)
-hunter- 08-10-2007-12:06 удалить
lol! В C++ таких штук не встречал :)
"конная авиация" )))
V_exeR 08-10-2007-18:17 удалить
RKx, при первой же возможности перейду :) Тем более, что язык вроде не чужой мне, демку даже писал на нем. А если этот глюк оптимизатора еще с Паскаля, тем более удивительно, что не сталкивался до сих пор...
Лезгафт 11-10-2007-22:07 удалить
Исходное сообщение Optical_Race
...
Про "новое слово в конной авиации" улыбнуло :)


Гм..вообще то многие американские армейские вертолетные части формировались на базе кавалирийских..
V_exeR 11-10-2007-22:47 удалить
Лезгафт, в курсе :D Оттуда, по-моему, это выражение и пошло :) Я просто никак не могу вспомнить, откуда оно ко мне прицепилось :)


Комментарии (12): вверх^

Вы сейчас не можете прокомментировать это сообщение.

Дневник Чудеса оптимизации. | V_exeR - ЛИру-аккаунт | Лента друзей V_exeR / Полная версия Добавить в друзья Страницы: раньше»