- 1
x & (x-1);
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
x & (x-1);
Написавший это утверждает, что меняется содержимое памяти, но как происходят эти мистические изменения он объяснить не может.
Ioann_Zid 01.05.2018 07:35 # 0
yet_another_one_shit 01.05.2018 08:12 # 0
yet_another_one_shit 01.05.2018 08:42 # +2
то можэт быть...
Ioann_Zid 01.05.2018 08:49 # 0
yet_another_one_shit 01.05.2018 09:15 # +3
Так чтоле: ?
Ioann_Zid 01.05.2018 09:23 # 0
Ioann_Zid 01.05.2018 09:36 # 0
1024-- 01.05.2018 20:11 # +1
0. Автор запомнил это конструкцию, она изменила его память.
1. В момент написания кода в текстовом редакторе данная конструкция вписалась в оперативную память, затем долговременную память на жёстком диске.
2. При компиляции понадобилась память под подгрузку из файла, память под узел в AST, память под скомпилированный вариант.
3. При исполнении могла потревожиться память в регистрах.
4. При загрузке на ГК этой строчкой забилась память в маршрутизаторах и прочем сетевом оборудовании, переписалась память в БД.
5. При просмотре этого кода снова забивается память сетевых устройств, память ПК пользователей и память в их голове.
Не было бы этой строчки - не менялось бы содержимое памяти.
Alexander 01.05.2018 22:35 # +1
EBAD_STR_PTR_EXCEPTION
Я сегодня до зари встану,
По широкому пройду полю.
Что-то с памятью моей стало,
Всё, что было не со мной, помню.
4ACbl_3AP9I 05.10.2018 00:21 # 0
roskomgovno 02.05.2018 23:51 # −1
plusinho 02.05.2018 23:54 # 0
roskomgovno 02.05.2018 23:54 # +1
3. при компеляции тоже могла. В принципе, в x86 мало инструкций которые не затрагивают регистр. И уж точно там был хотя бы один call, а значит sp точно был затронут
Состальным согласен