1. Си / Говнокод #5969

    +140

    1. 1
    printf("0x%02X", (int)( (((block[i << 1] >> ((15 - (j >> 4)) << 2)) & 15) << 4 ) | ((block[(i << 1) | 1] >> ((15 - (j & 15)) << 2)) & 15)));

    Жертва жестокой оптимизации. При всем этом код исправно делал свое дело... пока не пришла пора в нем что-то изменить =)

    Запостил: SIGSEGV, 13 Марта 2011

    Комментарии (5) RSS

    • Какая ещё жёсткая оптимизация при использовании printf?
      Ответить
      • Изначально эта строка была в другом месте.
        Ответить
        • Какая строка?
          Ответить
          • (((block[i << 1] >> ((15 - (j >> 4)) << 2)) & 15) << 4 ) | ((block[(i << 1) | 1] >> ((15 - (j & 15)) << 2)) & 15)

            Я даже вспомнил, что она делала - это блок подстановки шифра ГОСТ28147. После я переделал это чудо на побайтовых подстановках.
            Ответить
            • Ну, вроде бы рабочий код. Изменять его не надо, написали один раз, отладили, — и не трогать.
              Ответить

    Добавить комментарий