Форум программистов, компьютерный форум CyberForum.ru

Умножение - что быстрее - C++

Восстановить пароль Регистрация
 
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
09.08.2013, 01:57     Умножение - что быстрее #1
1)
C++
1
2
 a = 0; 
a = x * y;
2)
C++
1
2
3
4
5
a = 0;
for (int i = 0; i < y; ++i)
{
a += x;
}
И, если второй вариант быстрее, при каких Y он становится ущербным? А если A и X - float/double?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.08.2013, 01:57     Умножение - что быстрее
Посмотрите здесь:

C++ Правда что С быстрее чем С++?
Что работает быстрее? C++
Что быстрее массив или файл C++
что быстрее работать будет?? C++
Что работает быстрее? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Issues
429 / 364 / 37
Регистрация: 06.08.2012
Сообщений: 961
09.08.2013, 02:18     Умножение - что быстрее #2
Цитата Сообщение от nexen Посмотреть сообщение
И, если второй вариант быстрее
с чего ты взял?
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
09.08.2013, 02:34  [ТС]     Умножение - что быстрее #3
Issues, ну как же, a = x * 3 всегда медленнее, чем a = x + x + x;
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11823 / 6802 / 769
Регистрация: 27.09.2012
Сообщений: 16,870
Записей в блоге: 2
Завершенные тесты: 1
09.08.2013, 02:45     Умножение - что быстрее #4
Цитата Сообщение от nexen Посмотреть сообщение
a = x + x + x
а Ваш код

for (int i = 0; сравнение; итерация)
сложение
прыжок к началу цикла
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
09.08.2013, 02:49  [ТС]     Умножение - что быстрее #5
Croessmah, ага, поэтому я и спрашиваю, будет ли оно быстрее и в каких пределах?
Winorun
38 / 38 / 4
Регистрация: 03.05.2013
Сообщений: 177
09.08.2013, 06:52     Умножение - что быстрее #6
не будет
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.08.2013, 07:25     Умножение - что быстрее
Еще ссылки по теме:

C++ Что выполняется быстрее?
Что быстрее assembler или c++ C++
C++ Что быстрее: i++ или ++i ?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
nonedark2008
624 / 502 / 92
Регистрация: 28.07.2012
Сообщений: 1,340
09.08.2013, 07:25     Умножение - что быстрее #7
nexen, процессор умеет умножать и складывать за один такт процессора, так что сложение и умножение чисел будет выполняться за одинаковое время.(и деление со всеми другими тоже туда) Так что 3*x - займет 1 такт(без учета загрузки в регистры и т.п.), а x + x + x - два такта.
Yandex
Объявления
09.08.2013, 07:25     Умножение - что быстрее
Ответ Создать тему
Опции темы

Текущее время: 09:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru