Deux parties deux ma question. Ce qui est plus efficace/plus rapide:longues lignes d'arithmétique entière
int a,b,c,d,e,f;
int a1,b1,c1,d1,e1,f1;
int SumValue=0; // oops forgot zero
// ... define all values
SumValue=a*a1+b*b1+c*c1+d*d1+e*e1*f*f1;
ou
Sumvalue+=a*a1+b*b1+c*c1;
Sumvalue+=d*d1+e*e1*f*f1;
Je suppose que le premier est. Ma deuxième question est pourquoi.
Je suppose qu'une troisième question est, à tout moment serait-il nécessaire de rompre une opération d'addition (outre les limitations du compilateur sur le nombre de suites de lignes etc ...).
Modifier
est la seule fois que je voyais un ralentissement quand alors l'opération arithmétique entière ne pouvait pas tenir dans le cache? Je pense que c'est impossible - le compilateur devient probablement fou de deux continuations de lignes avant que cela puisse arriver. Peut-être que je devrai jouer demain et voir.
Son arithmétique, avec un 'e' :-) – Arun
Mettez-les dans une très grande boucle, et chronométrer les. Ensuite, vous saurez lequel est le plus rapide. – abelenky
@ArunSaha, pourquoi commenter quand vous pouvez éditer? :-) – ergosys