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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
#1

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

09.08.2013, 01:57. Просмотров 609. Ответов 6
Метки нет (Все метки)

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?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Issues
430 / 365 / 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
Модератор
Эксперт CЭксперт С++
12878 / 7264 / 810
Регистрация: 27.09.2012
Сообщений: 17,945
Записей в блоге: 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++
Что быстрее - двоичный или текстовый файл? C++
Что быстрее assembler или c++ C++
If или switch().case. Что быстрее C++
C++ Что быстрее: i++ или ++i ?

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

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

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