Рубрика «Алгоритмы» - 25

Зачастую если в устройстве есть программируемая логика, присутствует и процессор/микроконтроллер.

В какой-то момент мне надоело разводить на платах разъем JTAG, он занимает много места на плате и по сути нужен только для разработки. В конечном устройстве он вообще без надобности.

Очень часто для проверки правильности реализации Verilog кода или вообще "посмотреть как сигнальчики бегают" я использую SignalTap II Logic Analyzer, штука удобная и наглядная, я думаю многие сразу узнают по изображению:

INTEL (Altera) USB Byte Blaster на STM32 - 1

Читать полностью »

Этот код напечатает случайную последовательность латинских букв, так ведь?

import java.util.Random;

class WTF {
    public static void main(String[] args) {
        Random r = new Random(76880392499L<<11);
        String alphabet = " abcdefghijklmnopqrstuvwxyz";
        int n;
        while ((n = r.nextInt(alphabet.length())) > 0)
        	System.out.print(alphabet.charAt(n));
    }
}

Можете проверить; вывод кажется совсем не случайным. Как же так вышло?

Прежде всего: какой шанс, что из всех последовательностей латинских букв напечатается именно эта? Сгенерировано 10 случайных чисел, каждое выбиралось из 27 вариантов, значит всего вариантов было $inline$27^{10} approx 2.06cdot10^{14}$inline$. Если считать, что все варианты равновероятны, то нам выпал один шанс из двухста миллионов миллионов! Ух!Читать полностью »

Разработана опенсорсная утилита Depix для восстановления паролей с размытых скриншотов

Разработана опенсорсная утилита Depix для восстановления паролей с размытых скриншотов - 1
Результат работы программы Depix (исходный код)

В голливудских фильмах любят преувеличивать. Они зуммируют фотографии в миллион раз — и выводят цифры из одного пикселя.

Хотя это невероятно, но научные исследования в этой области идут давно. Ещё в 90-е годы были опубликованы теоретические работы и PoC с восстановлением текста из размытых изображений. В 2012 году Владимир Южиков писал на Хабре о своей программе SmartDeblur для восстановления смазанных и расфокусированных снимков.

Несмотря на достаточно хорошее развитии науки в данном направлении, до сих пор не было специализированного инструмента конкретно для восстановления паролей (текста) после пикселизации. Программа Depix — первый такой инструмент.
Читать полностью »

Выясняем, как и откуда можно получить электронную подпись на примере криптосистемы RSA.

RSA: от простых чисел до электронной подписи - 1
Содержание
  1. Введение

  2. Определения и обозначения

  3. Описание криптосистемы RSA

    1. Асимметричные криптографические системы

    2. Генерация ключей

    3. Шифрование и дешифрование

    4. Получение подписи сообщения по RSA

  4. Электронная подпись документов

  5. Заключение

Читать полностью »

Казалось бы что тут такого сложного, ну I2C ну без TWI.

Читать полностью »

Мы в 2ГИС хотим облегчить пользовательскую поисковую рутину и потому стремимся предугадывать запросы пользователей. Под катом расскажем про то, как мы придумали алгоритм для персонализации интересных мест и что из этого вышло.

image

Читать полностью »

Как я создал собственный алгоритм YouTube (чтобы не тратить время впустую) - 1

Побег от алгоритма YouTube

Я люблю смотреть видео на YouTube, осязаемым образом улучшающие мою жизнь. К сожалению, алгоритм YouTube с этим не согласен. Он любит кормить меня кликбэйтом и прочим мусором.

Всё это неудивительно: алгоритм отдаёт приоритет кликам и времени просмотра.

Поэтому я поставил перед собой задачу: Смогу ли я написать код, который автоматически будет находить ценные видео, избавив меня от привязанности к алгоритму YouTube?

Вот так всё и началось.

Оптимально выстроенные планы

Я начал с визуализации того, что должен делать мой инструмент. Мне нужна была программа, которая будет (i) ранжировать видео на основании вероятной релевантности для меня и (ii) автоматически отправлять мне предлагаемые видео, из которых я смогу выбирать.

Я решил, что смогу серьёзно повысить продуктивность, если буду пакетно выбирать наборы видео для просмотра на каждую неделю и избавлюсь от необходимости бесконечного скроллинга YouTube.
Читать полностью »

Когда я только начал своё путешествие к науке о данных, я потратил много времени на то, чтобы понять, с чего начать, что я должен узнать в первую очередь и какие ресурсы должен использовать. За последние два года я узнал несколько вещей, о которых хотел знать раньше, например о том, стоит ли сначала сосредоточиться на программировании или статистике, какие ресурсы я должен использовать для изучения новых навыков, как я должен подходить к изучению этих навыков и так далее. Таким образом, эта статья написана, чтобы дать направления и идеи для тех, кто изучает Data Science.

Как бы я изучал Data Science, если бы начал пару лет назад, или Руководство по эффективному изучению науки о данных - 1

Читать полностью »

Введение

Читать полностью »

Машинное обучение в Hum to Search от Google - 1


Навязчивые мелодии (англ. earworms) – хорошо известное и порой раздражающее явление. Как только одна из таких застревает в голове, избавиться от нее бывает довольно трудно. Исследования показали, что так называемое взаимодействие с оригинальной композицией, будь то ее прослушивание или пропевание, помогает прогнать навязчивую мелодию. Но что, если вы не можете вспомнить название песни, а можете только напеть мотив?
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js