Цитата Сообщение от Titus Посмотреть сообщение
Если вы хотите мне дать ссылку на программистов, которые на ассемблере пишут хуже, чем компилирует компилятор, то это это злостные извращенцы-двоечники)
Ерунду какую-то говорите. Почему по вашему кодов на ассемблере почти не пишут?
Код:
/*RUN IT BY (GNU compiler)
   gcc -O5  FN.c; time ./a.out
OR (it is without optimisation)
   gcc FN.c; time ./a.out
OR (Intel compiler)
   icc -fast FN.c; time ./a.out
OR (LLVM compiler)
   clang -O3 FN.c; time ./a.out
OR (Amsterdam Compiler Kit)
   ack -mlinux386 -O4 -o fib fib.c; time ./fib
*/
#include <stdio.h>
#define bestint long   //64 bits
bestint fib (bestint n) {
  return n < 3 ? 1 : fib(n - 1) + fib(n - 2);
}
main() {
  int k = 41;
  printf("%d %ld\n", k, fib(k));
}
Вот вам программка на си. Её ассемблерный аналог на 45% медленнее. Пробовал и с x86 и с x86-64, x86-64 процентов на 15 быстрее, но именно она и отстаёт почти на все 50 от си. Кстати, даже ява почти догоняет ассемблер, всего процентов на 30 медленнее. Аналогичная картинка и по функции Аккермана. Конечно, можно взять ассемблерный код, сгенерированный си-компилятором, но такое человек не напишет.