Интернет-исследования — это настоящий поиск новых знаний о человеке. Как мы меняемся в цифровую эпоху, рассказывает преподаватель Университета ИТМО и НИУ ВШЭ Полина Колозариди.
Узнайте больше о Digital Humanities на Неделе цифровой гуманитаристики в Санкт-Петербурге от DH Центра Университета ИТМО!
Узнайте больше о Digital Humanities на Неделе цифровой гуманитаристики в Санкт-Петербурге от DH Центра Университета ИТМО!
Второй сезон «Ведьмака» в топе Netflix с середины декабря! Если вы уже посмотрели сериал и вам мало — советуем ознакомиться с книжной серией Анжея Сапковского.
В каком порядке читать книги про Геральта из Ривии — рассказывает эксперт Кью Дмитрий Салов.
В каком порядке читать книги про Геральта из Ривии — рассказывает эксперт Кью Дмитрий Салов.
Как быстро компьютер может досчитать до миллиона?
Объясняет эксперт Кью, программист Денис Васильковский.
«Человеческое» решение
Для того, чтобы ответить на этот вопрос, необходимо сначала перевести эту задачу на язык вычислений, то есть предельно ясно ответить на вопрос: «Каким образом мы считаем до миллиона?». Компьютеры действует немного не так, как люди. Скажем, если попросить человека досчитать до миллиона, то скорее всего он поймет задачу так: назовем последовательно все числа от одного до миллиона. Когда я скажу «миллион», счет окончен.
Решение «Человек с калькулятором»
Компьютер — это не человек, а скорее «калькулятор на максималках». Если бы меня попросили посчитать до миллиона на калькуляторе, то я бы сделал так:
1. Нажал кнопку «1»;
2. Нажал кнопку «+»;
3. Нажал кнопку «1»;
4. Нажал кнопку «=», на дисплее отобразилось «2»;
5. …
И, нажав оставшиеся 999998 раз «=», я бы наконец увидел «1 000 000» на дисплее и сказал: «Я досчитал».
«Компьютерное» решение
Если же мы хотим исключить человека из счёта, то нам на помощь придет специальная команда, которую не найдешь на калькуляторе, зато она есть у каждого современного процессора: сравнить два числа. А ещё у процессоров, в отличие от калькуляторов, нет экрана, зато есть регистр — кусочек памяти внутри процессора, где может лежать ровно одно число, то самое число, которое мы видим на экране калькулятора, когда он считает.
Таким образом, если мы хотим сосчитать до миллиона, прибавляя по единице каждый раз, то набор команд для процессора (или программы) будет выглядеть так:
1. Положить в регистр число 1;
2. Добавить к регистру единицу;
3. В регистре миллион?;
4. Если нет, вернуться к шагу 2;
5. Если да, то счет закончен.
Процессор не имеет интеллекта и исполняет команды в порядке очереди, прыгая вперёд или назад по списку команд, если его об этом просят. Для того, чтобы досчитать до миллиона, процессору, согласно такой программе, придётся «покрутиться» в буквальном смысле: прыжок с команды №4 на №2 придется повторить 999999 раз прежде чем процессор дойдёт до команды №5 и скажет нам: «Я посчитал!». Всего в данной реализации задачи процессору нужно будет выполнить чуть более трех миллионов команд, прежде чем мы закончим.
Так сколько времени нужно, чтобы досчитать до миллиона?
Одна команда в процессоре выполняется за один герц. Типичный процессор ноутбука или настольного компьютера сейчас работает в диапазоне 2-5 гигагерц, то есть 2-5 миллиардов команд в секунду — так примерно можно переводить с технического сленга слово «гигагерц». Для ровного счёта остановимся на трёх гигагерцах — трёх миллиардах команд в секунду. Мы прикинули раньше, что нам нужно исполнить 3 миллиона команд, так что при возможности исполнить 3 миллиарда в секунду, нам потребуется подождать всего одну тысячную долю секунды, чтобы дождаться ответа от компьютера.
Можно ли быстрее?
Можно и быстрее. Если перевернуть счёт и считать с миллиона до нуля, то можно соединить вместе инструкции №3 и №4, потому что в большинстве компьютеров есть специальная инструкция «сравнить с нулём и прыгнуть, если результат ноль (не ноль)». Такая программа будет выглядеть так:
1. Положить в регистр число 1000000
2. Уменьшить регистр на единицу
3. Если в регистре не ноль, вернуться к шагу 2
4. Счёт закончен
Выкинув одну операцию мы уменьшили число инструкций с примерно трех миллионов операций до двух миллионов. А значит такая программа закончит работу через 0,000666 секунды, а не через 0,001 секунды.
А ещё быстрее?
Ещё быстрее — вряд ли. Если, конечно, не сделать специализированный процессор, который умеет быстро делать ровно одну вещь — считать до миллиона. Такой процессор, думаю, способен уложиться даже за миллионные доли секунды, только вот в Fortnite на нём поиграть не получится, да и зайти на Яндекс.Кью тоже. Если ваша задача допускает такое, что два процессора будут считать одновременно: скажем, один считает от 1 до 500 тысяч, а другой от 500 тысяч до миллиона, то можно выжать немного скорости из современных многоядерных процессоров.
Объясняет эксперт Кью, программист Денис Васильковский.
«Человеческое» решение
Для того, чтобы ответить на этот вопрос, необходимо сначала перевести эту задачу на язык вычислений, то есть предельно ясно ответить на вопрос: «Каким образом мы считаем до миллиона?». Компьютеры действует немного не так, как люди. Скажем, если попросить человека досчитать до миллиона, то скорее всего он поймет задачу так: назовем последовательно все числа от одного до миллиона. Когда я скажу «миллион», счет окончен.
Решение «Человек с калькулятором»
Компьютер — это не человек, а скорее «калькулятор на максималках». Если бы меня попросили посчитать до миллиона на калькуляторе, то я бы сделал так:
1. Нажал кнопку «1»;
2. Нажал кнопку «+»;
3. Нажал кнопку «1»;
4. Нажал кнопку «=», на дисплее отобразилось «2»;
5. …
И, нажав оставшиеся 999998 раз «=», я бы наконец увидел «1 000 000» на дисплее и сказал: «Я досчитал».
«Компьютерное» решение
Если же мы хотим исключить человека из счёта, то нам на помощь придет специальная команда, которую не найдешь на калькуляторе, зато она есть у каждого современного процессора: сравнить два числа. А ещё у процессоров, в отличие от калькуляторов, нет экрана, зато есть регистр — кусочек памяти внутри процессора, где может лежать ровно одно число, то самое число, которое мы видим на экране калькулятора, когда он считает.
Таким образом, если мы хотим сосчитать до миллиона, прибавляя по единице каждый раз, то набор команд для процессора (или программы) будет выглядеть так:
1. Положить в регистр число 1;
2. Добавить к регистру единицу;
3. В регистре миллион?;
4. Если нет, вернуться к шагу 2;
5. Если да, то счет закончен.
Процессор не имеет интеллекта и исполняет команды в порядке очереди, прыгая вперёд или назад по списку команд, если его об этом просят. Для того, чтобы досчитать до миллиона, процессору, согласно такой программе, придётся «покрутиться» в буквальном смысле: прыжок с команды №4 на №2 придется повторить 999999 раз прежде чем процессор дойдёт до команды №5 и скажет нам: «Я посчитал!». Всего в данной реализации задачи процессору нужно будет выполнить чуть более трех миллионов команд, прежде чем мы закончим.
Так сколько времени нужно, чтобы досчитать до миллиона?
Одна команда в процессоре выполняется за один герц. Типичный процессор ноутбука или настольного компьютера сейчас работает в диапазоне 2-5 гигагерц, то есть 2-5 миллиардов команд в секунду — так примерно можно переводить с технического сленга слово «гигагерц». Для ровного счёта остановимся на трёх гигагерцах — трёх миллиардах команд в секунду. Мы прикинули раньше, что нам нужно исполнить 3 миллиона команд, так что при возможности исполнить 3 миллиарда в секунду, нам потребуется подождать всего одну тысячную долю секунды, чтобы дождаться ответа от компьютера.
Можно ли быстрее?
Можно и быстрее. Если перевернуть счёт и считать с миллиона до нуля, то можно соединить вместе инструкции №3 и №4, потому что в большинстве компьютеров есть специальная инструкция «сравнить с нулём и прыгнуть, если результат ноль (не ноль)». Такая программа будет выглядеть так:
1. Положить в регистр число 1000000
2. Уменьшить регистр на единицу
3. Если в регистре не ноль, вернуться к шагу 2
4. Счёт закончен
Выкинув одну операцию мы уменьшили число инструкций с примерно трех миллионов операций до двух миллионов. А значит такая программа закончит работу через 0,000666 секунды, а не через 0,001 секунды.
А ещё быстрее?
Ещё быстрее — вряд ли. Если, конечно, не сделать специализированный процессор, который умеет быстро делать ровно одну вещь — считать до миллиона. Такой процессор, думаю, способен уложиться даже за миллионные доли секунды, только вот в Fortnite на нём поиграть не получится, да и зайти на Яндекс.Кью тоже. Если ваша задача допускает такое, что два процессора будут считать одновременно: скажем, один считает от 1 до 500 тысяч, а другой от 500 тысяч до миллиона, то можно выжать немного скорости из современных многоядерных процессоров.
«Маменька, вы не понимаете, так сейчас все ходят».
Как сформировался крой древнерусской одежды и почему рукава у нее такие длинные, рассказывает эксперт Кью, кандидат исторических наук Александр Ершов.
Как сформировался крой древнерусской одежды и почему рукава у нее такие длинные, рассказывает эксперт Кью, кандидат исторических наук Александр Ершов.
Налейте себе чашечку кофе, включите Нила Янга на фоне и наслаждайтесь!
Как подготовиться к просмотру фильмов Джима Джармуша и что нужно знать об этом независимом режиссере, рассказывает эксперт Кью, киновед Ира Марголина.
Как подготовиться к просмотру фильмов Джима Джармуша и что нужно знать об этом независимом режиссере, рассказывает эксперт Кью, киновед Ира Марголина.
Как перевести «давай перейдем на "ты"» на английский, если в нем есть только местоимение you?
Почему в английском используют одно слово для местоимений «ты» и «вы», рассказывает эксперт Кью, автор обучающих материалов и лид команды менторов английского от Яндекс.Практикума Валентина Сербинова:
«Начнем с того, что you в английском ― это всегда вы, то есть автоматически вежливая форма. Местоимение ты тоже существовало (у Шекспира можно найти и thee, и thou), но со временем его перестали использовать. Почему так произошло?
Причина очень забавная: англичане, не зная, как лучше обращаться к малознакомому человеку в неформальной обстановке, предпочитали, если уж ошибаться, то ошибаться в сторону вежливости. Так и договорились: быть ко всем на вы. Это этичнее и безопаснее. Может быть, тогда-то и появились шутки про излишнюю английскую вежливость. Кроме того, в английском существует формальное обращение. Чаще всего используют Mr or Mrs/Miss, реже ― Sir или Madame, ну и совсем в редких случаях ― Your Highness (ваше высочество). И как после такого перейти на ты?
Сделать это можно разными способами, в зависимости от контекста и манеры общения между людьми:
• Let's not be so formal (К чему формальности?)
— How about we use first names? (Как насчёт обращаться друг к другу по имени?)
• Just call me (без Mr/Mrs и т.д...) Sam. (Зови меня просто Сэм).
Варианты, как не надо переводить фразу «давай перейдём на «ты»:
• Let's get over to you.
• Let's cross onto you.
Оба перевода являются дословными и не несут необходимой смысловой нагрузки. Однако let's get over to you можно использовать во время презентаций, когда надо передать слово или обратиться к следующей теме. А вот фраза let's cross onto you введёт в ступор как носителя, так и человека, изучающего язык».
Почему в английском используют одно слово для местоимений «ты» и «вы», рассказывает эксперт Кью, автор обучающих материалов и лид команды менторов английского от Яндекс.Практикума Валентина Сербинова:
«Начнем с того, что you в английском ― это всегда вы, то есть автоматически вежливая форма. Местоимение ты тоже существовало (у Шекспира можно найти и thee, и thou), но со временем его перестали использовать. Почему так произошло?
Причина очень забавная: англичане, не зная, как лучше обращаться к малознакомому человеку в неформальной обстановке, предпочитали, если уж ошибаться, то ошибаться в сторону вежливости. Так и договорились: быть ко всем на вы. Это этичнее и безопаснее. Может быть, тогда-то и появились шутки про излишнюю английскую вежливость. Кроме того, в английском существует формальное обращение. Чаще всего используют Mr or Mrs/Miss, реже ― Sir или Madame, ну и совсем в редких случаях ― Your Highness (ваше высочество). И как после такого перейти на ты?
Сделать это можно разными способами, в зависимости от контекста и манеры общения между людьми:
• Let's not be so formal (К чему формальности?)
— How about we use first names? (Как насчёт обращаться друг к другу по имени?)
• Just call me (без Mr/Mrs и т.д...) Sam. (Зови меня просто Сэм).
Варианты, как не надо переводить фразу «давай перейдём на «ты»:
• Let's get over to you.
• Let's cross onto you.
Оба перевода являются дословными и не несут необходимой смысловой нагрузки. Однако let's get over to you можно использовать во время презентаций, когда надо передать слово или обратиться к следующей теме. А вот фраза let's cross onto you введёт в ступор как носителя, так и человека, изучающего язык».