• Как прибавить месяц к дате?

    Stalker_RED
    @Stalker_RED
    Ответ написан
    Комментировать
  • Реализация меню сайта?

    Scrollspy
    Ответ написан
    Комментировать
  • Как работают макросы в c?

    @mamkaololosha
    Гуглите этапы компиляции. В частности - препроцессор
    https://en.wikipedia.org/wiki/C_preprocessor
    Ответ написан
    Комментировать
  • Как работают макросы в c?

    @MiiNiPaa
    __DATE__, __LINE__ и прочее подобное подставляются самим препроцессором. Реализацию можно посмотрев только скачав исходники компилятора.
    Ответ написан
    Комментировать
  • Как работают макросы в c?

    BuriK666
    @BuriK666
    Компьютерный псих
    www.opennet.ru/docs/RUS/cpp/cpp-5.html
    '__DATE__'
    Этот макрос заменяется на строчную константу, которая указывает дату запуска препроцессора. Эта константа содержит одинадцать символов и выглядит примерно так '"Jan 29 1987"' или '"Apr 1 1905"'.
    Ответ написан
    Комментировать
  • Оптимизация assember?

    @Justlexa
    test al,al эквивалентно сравнению регистра al с 0. но да, это некоторая оптимизация по сравнению с cmp al, 0
    Ответ написан
    Комментировать
  • Busy loop - это какой цикл?

    @MiiNiPaa
    Да, это цикл который постоянно проверяет какое-то условие. Постоянно тратит процессорное время на проверки условия, поэтому и busy.
    Что-то вроде
    while(status != DONE) {
        Sleep(500);
    }


    Альтернатива это механизм callback'ов, когда выполнение потока останавливается и продолжается по внешнему сигналу.
    Ответ написан
    3 комментария
  • Как создать медиаплеер?

    @Loligan
    Юзай библиотеку BASS если нужно только аудио
    Ответ написан
    Комментировать
  • Для чего нужны побитовые операции?

    @Mercury13
    Программист на «си с крестами» и не только
    Для чего битовые сдвиги вообще существуют? А потому, что они выполняются очень простой схемой — сдвиговым регистром. И вместо того, чтобы проводить умножение (поначалу это было десятки тактов), подключаем этот самый регистр к регистрам процессора, и выполним всё за один такт. Существовала даже программа, генерирующая быстрый код умножения на константу, например, 6 — сдвинуть, сложить и ещё раз сдвинуть. И это в своё время было быстрее, чем mul — а ведь сейчас мы без зазрения совести пишем mul eax, 6.

    Чего могут сдвиги, но со скрипом реализуется через всё остальное? Доступ к i-му биту.
    i-й бит = (x >> i) & 1

    По правилам хорошего программистского тона умножение, даже на 2 или на 4, пишется как обычное * (>> пишут, если компилятор непроходимо туп и умножение медленнее). А вот сдвиги — именно их, а не умножение — пишут, когда работают с битовыми полями.

    Есть также специальные сдвиги.
    * Арифметический сдвиг вправо (левый совпадает с обычным) — для чисел со знаком.
    * Сдвиг-вращение — в основном для криптографии.
    * Сдвиг-вращение через регистр флагов — в основном для длинной арифметики.
    Ответ написан
    Комментировать
  • Для чего нужны побитовые операции?

    bogolt
    @bogolt
    Они нужны для:
    • Реализации криптографических алгоритмов
    • Реализации любых других алгоритмов требующих работу с битами
    • Чтобы пользователи языка не изобретали велосипеды


    Понимаете, это ведь не особенность языка - это скорее особенность наших процессоров,принципов вычислений, ассемблера. Раз уж эти операции существуют, причем именно в том виде в каком к ним привыкли то логично предположить что многие программы и алгоритмы рассчитывают на их наличие в инструментарии разработчика. Представьте что вам пришлось бы портировать некий криптографический алгоритм использующий эти операторы на js в котором их не было бы. Допустим вы реализуете его умножая/деля на два, но затем обнаруживаете, что при умножении старший бит у вас исчезает, а должен становится самый младшим. Кроме того ваша реализация на js была бы много медленней чем встроенная в язык реализация.
    Ответ написан
    Комментировать
  • Python, авторизация на vk.com?

    @dimka665
    Прорекламирую свой модуль для доступа к API vk.com: https://github.com/dimka665/vk

    Реализована авторизация. Работает на Python2.7, Python3.3
    Ответ написан
    Комментировать