30

Se qui me laisse perplexe c que g tjrs lu que le C utilise un ordre de priorité, et lisait de gauche a droite..

Donc :
if ((chgmt += (xx++) + xx) >= 0)

=

1 -> xx++
2 -> chgmt += xx
3 -> chgmt += xx
4 -> chgmt >= 0

Voir plus simple :

1 -> xx++
2 -> chgmt += xx*2
4 -> chgmt >= 0

On pourrait donc changer le code en :

if ((chgmt += ((xx++) * 2 )) >= 0)
ou
if ((chgmt += ((xx++) << 1)) >= 0)


avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

31

sauf que ca serait plus lent avec un decalage qu'en re-additionnant smile
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

32

Oui, mais il faut que GCC optimise correctement en mettant une addition.
À mon avis c'est mieux de laisser un *2 (ça je sais qu'il l'optimise, mais un <<1, je ne suis pas sûr...).

33

Moi dans mon cours de C j'ai une grosse page sur la priorité d'interprétation des instructions, et je ne vois donc pas comment ça peut être interprété de façon aléatoire confus
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

34

Tout a fait d'accord avec toi Ximoon !

Sinon je voit pas l'interet de mettre des () !
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

35

peut etre que gcc sait pas le faire... (grin)
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

36

C'est testé aussi sous VS et ca marche ... donc pas que gcc thibaut

37

sBibi> faut croire picol
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

38

moralité ? grin

39

argh... resister... haaannn....
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

40

gcc ca pue
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

41

oups pardon ca m'a echappe scotch
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

42

Mdr grin

Vive Visual C++ grin

Oups sa ma echapé aussi scotch
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

43

Pour moi,
if ((chgmt += ((xx++) << 1)) >= 0)est à éviter, ça rend le code moins lisible pour le même résultat que if ((chgmt += ((xx++) * 2 )) >= 0).
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

44

en quoi c moins lisible? confus
c tres lisible ca...
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

45

Thibaut
a écrit : C'est le "frontend" qui décide "quand" incrémenter ?

Si je ne me trompe, le middle-end, les optimisations et le backend peuvent modifier l'ordre si c'est plus efficace.
godzil a écrit :
On pourrait donc changer le code en :

if ((chgmt += ((xx++) * 2 )) >= 0)
ou if ((chgmt += ((xx++) << 1)) >= 0)

Oui.
jackiechan a écrit :
Oui, mais il faut que GCC optimise correctement en mettant une addition. À mon avis c'est mieux de laisser un *2 (ça je sais qu'il l'optimise, mais un <<1, je ne suis pas sûr...).

Il optimise aussi <<1 en une addition.
Ximoon a écrit :
Moi dans mon cours de C j'ai une grosse page sur la priorité d'interprétation des instructions, et je ne vois donc pas comment ça peut être interprété de façon aléatoire confus

priorité d'interprétation != ordre d'exécution !
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

46

>priorité d'interprétation != ordre d'exécution !

Ben alors si le compilo utilise une prio d'interprétation != de celle d'execution
YA UN GROS PROBLEME ALORS !!!

avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

47

C'est ce qui est prévu par le standard C!!!
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

48

Quel interet d'un ordre d'interpretation alors ????

Je vois pas

Et il me semble pas avoir lu dans la "bible" du C que l'interpretation et l'execution pouvait etre différente.

Perso si un compilo compile différenement se qu'il interprete² c qu'il y a un pbm
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

49

Thibaut: tu as tout à fait raison, mais pour toi, c'est aussi lisible maintenant nan? idem pour les personnes qui connaissent un peu ces manips

50

Ba suffit de connaitre un peu la base 2 et de savoir que << est un décalage a gauche

Pas besoin d'etre sorcier pour comprendre que
<<1 = *2
et
>>1 = /2
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

51

voué grin

52

Je parle des personnes qui débutent. Et puis :
*2 c'est pour quand on veut faire une multiplication
<<1 c'est pour quand on veut faire un décalage

Ca revient au même, mais utiliser la bonne instruction pour chaque besoin (dont le résultat est le même, ok) c'est plus clair.

Bon... je suis peut-être de mauvaise foi grin
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

53

Baaa thibaut du sais bien qu'il faut laisser gcc optimiser wink
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

54

-Os powan n'est-ce pas Kevin smile

-O2 sera toujours dans mon coeur smile

55

-g powwwaaaaaa tongue
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

56

NON gcc n'otpimisera pas forcement...
<< != *2 !!!!!!!!!!!!!

vous avez fumé du chichon!
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

57

[edit]*2 c'est pour quand on veut faire une multiplication
<<1 c'est pour quand on veut faire un décalage

Ca revient au même, mais utiliser la bonne instruction pour chaque besoin (dont le résultat est le même, ok) c'est plus clair. [/edit]

pas du tout..
essaye avec un signé
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

58

en effet, puis même, le décalage prend plus de place !
donc à ne pas utiliser si on en a pas besoin

59

TiMad a écrit :
NON gcc n'otpimisera pas forcement...
<< != *2 !!!!!!!!!!!!!
vous avez fumé du chichon!
TiMad
a écrit : essaye avec un signé

Tu confonds avec la division! <<1 et *2 sont strictement la même chose, que le nombre soit signé ou non!
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

60

?????
et le bit de signe il revient ou??
#confu#
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!