- 1
- 2
int i;
if(i/2 == i - i/2) { ... }
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+108.1
int i;
if(i/2 == i - i/2) { ... }
Тоже из лабораторки. Проверка на четность
0 != 1 - 0
if (0 == (i & 1)) { ... }
Обсирать мы все горазды... покажите как надо.
if (!(i%2)) { ... }
Деление - процесс очень трудоёмкий.
спс за код
Кстати, на wikibooks был неплохой вводый курс в ассемблер для Сишников.
Ещё у меня есть документация по оптимизации приложений для разных процессоров, там указано какая инструкция сколько тактов выполняется, некоторые из них ты сможешь найти тут: ftp://xaionaro.ultanet.org/programming/ (к примеру: ftp://xaionaro.ultanet.org/programming/Assembler/athlon-code-optimization.pdf)
К примеру используем gcc 4.3.3 и компилируем с флагом "-O2" два файла:
И вауля:
Экономим байты исходников ;)