Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » Forum Ti68K » Programmation C » L'opérateur >> ou << (12 réponse(s))
./POST DE DEPART (post n°0)   Marquer comme non lu.
Thor Ecrit le: Vendredi 12 mars 2004 à 10:18 Déconnecté(e)    Voir le profil de Thor Envoyer un email à Thor Visiter le site WEB de Thor Envoyer un message privé à Thor  


Lorsque je regarde certaines sources (notamment celle de Starfield effect de Lionel) on trouve souvant l'opérateur >> ou << .Je ne comprend absomument pas cet opérateur c'est la raison pour laquelle je vous demande des infos telles que des redirections vers des tutoriaux ou si vous voulez bien m'xpliquer ce serait sympa :|
Cyril MOTTIER aka {==Thor==}
Modérateur général du forum de Tigen
[Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
    
./Post n°1   Marquer comme non lu.
Orage Ecrit le: Vendredi 12 mars 2004 à 12:15 Déconnecté(e)    Voir le profil de Orage Envoyer un email à Orage Envoyer un message privé à Orage  


<< = Décallage de bits vers la gauche <<x décalle de x bits, ou multiplie par 2^x
>> = Décallage de bits vers la droite. >>x décalle de x bits, ou divise par 2^x

ex :

var = (var<<3)-(var>>1); // var = (var*8)-(var/2); <=> var*=6;

-Edité le: Vendredi 12 mars 2004 à 12:17 par Orage-
    
./Post n°2   Marquer comme non lu.
Thor Ecrit le: Vendredi 12 mars 2004 à 13:04 Déconnecté(e)    Voir le profil de Thor Envoyer un email à Thor Visiter le site WEB de Thor Envoyer un message privé à Thor  


ben oui ça j'ai compris mais pourquoi s'embeter à mettre (var<<3)-(var>>1) alors c'est égal à (var*8)-(var/2) ???
Cyril MOTTIER aka {==Thor==}
Modérateur général du forum de Tigen
[Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
    
./Post n°3   Marquer comme non lu.
Orage Ecrit le: Vendredi 12 mars 2004 à 14:09 Déconnecté(e)    Voir le profil de Orage Envoyer un email à Orage Envoyer un message privé à Orage  


Pour gagner du temps, et parfois c'est obligatoire (pour l'affichage par exemple)
    
./Post n°4   Marquer comme non lu.
Billy Charvet Ecrit le: Vendredi 12 mars 2004 à 14:42 Déconnecté(e)    Voir le profil de Billy Charvet Envoyer un email à Billy Charvet Visiter le site WEB de Billy Charvet Envoyer un message privé à Billy Charvet  


En C++, ça sert pour les flots. (Mais Kevin va venir et dire ":s" si je continue)

-Edité le: Vendredi 12 mars 2004 à 14:42 par Billy Charvet-
Je suis tel la fleur du lotus.
Bien que naissant de la boue,
aucune boue n'y adhère.
    
./Post n°5   Marquer comme non lu.
Sasume Ecrit le: Vendredi 12 mars 2004 à 16:44 Déconnecté(e)    Voir le profil de Sasume Envoyer un email à Sasume Visiter le site WEB de Sasume Envoyer un message privé à Sasume  

Billy> Tu te crois malin ?

Thor> Les instructions de multiplication/division sont les plus lentes du 68000, c'est pourquoi il est avantageux de les remplacer par des décalages arithmétiques.
Par contre, attention à la priorité de << et >> : elle est inférieure aux + et -, ce qui fait qu'une expression comme : a<<b + c<<d sera interprétée comme : a<<(b+c)<<d.
    
./Post n°6   Marquer comme non lu.
Kevin Kofler Ecrit le: Vendredi 12 mars 2004 à 18:56 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Attention, c'est souvent une mauvaise idée de forcer l'utilisation de shifts. Dans cet exemple, c'est bon, mais par exemple pour multiplier par 6, on peut utiliser (var<<2)+(var<<1) ou ((var<<1)+var)<<1 ou (var+var+var)<<1 ou temp=var+var+var;temp+temp ou (var<<3)-(var<<1) ou ... Si on optimise en vitesse, le compilateur choisit lui-même la solution la plus rapide. Si au contraire on optimise en taille, toutes ces "optimisations" sont mauvaises (elles sont des pessimisations en taille), et mettre directement la multiplication amènera GCC à générer le code le plus compact, c'est-à-dire un muls ou mulu.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°7   Marquer comme non lu.
Thor Ecrit le: Vendredi 12 mars 2004 à 19:07 Déconnecté(e)    Voir le profil de Thor Envoyer un email à Thor Visiter le site WEB de Thor Envoyer un message privé à Thor  


Donc les >> ou << c'est valables si on veut vraiment optimiser la vitesse du programme ^^o
Cyril MOTTIER aka {==Thor==}
Modérateur général du forum de Tigen
[Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
    
./Post n°8   Marquer comme non lu.
Lionel Debroux Ecrit le: Vendredi 12 mars 2004 à 19:30 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

J'ai en effet modifié le starfield, mais je ne l'ai pas créé. Je n'ai créé aucun des softs de TICT; il y a plusieurs softs auxquels je n'ai jamais touché; je suis incapable de toucher à FAT-Engine pour y faire quelque chose d'utile...
Lionel Debroux - membre de TICT.
    
./Post n°9   Marquer comme non lu.
Thor Ecrit le: Vendredi 12 mars 2004 à 19:33 Déconnecté(e)    Voir le profil de Thor Envoyer un email à Thor Visiter le site WEB de Thor Envoyer un message privé à Thor  


Oui je sais Lionel que tu n'était pas dans la TICT d'origine. Au fait tu t'occupe maintenant tout seul du site et du maintien des jeux et applications?Car je me demande si Thomas Nussbaumer ce fait encore voir sur des sites TIs?
Cyril MOTTIER aka {==Thor==}
Modérateur général du forum de Tigen
[Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
    
./Post n°10   Marquer comme non lu.
Lionel Debroux Ecrit le: Vendredi 12 mars 2004 à 19:43 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

> Au fait tu t'occupe maintenant tout seul du site et du maintien des jeux et applications?
A peu près, oui.

> Car je me demande si Thomas Nussbaumer ce fait encore voir sur des sites TIs?
Oui, http://pub26.ezboard.com/btichessteamhq
Lionel Debroux - membre de TICT.
    
./Post n°11   Marquer comme non lu.
Thor Ecrit le: Vendredi 12 mars 2004 à 20:07 Déconnecté(e)    Voir le profil de Thor Envoyer un email à Thor Visiter le site WEB de Thor Envoyer un message privé à Thor  


Et ben courage Lionel ^^o
Cyril MOTTIER aka {==Thor==}
Modérateur général du forum de Tigen
[Etudiant à l'Institut National des Sciences Appliquées (INSA) de Rennes]
Mon site perso c'est ici
    
./Post n°12   Marquer comme non lu.
nEUrOO Ecrit le: Vendredi 26 mars 2004 à 19:47 Déconnecté(e)    Voir le profil de nEUrOO Envoyer un email à nEUrOO Envoyer un message privé à nEUrOO  

Et il programme encore pour ti TN ?
    
  :: Index » Forum Ti68K » Programmation C » L'opérateur >> ou << (12 réponse(s))
Pages : 1/1     « [1] » »|

.Répondre à ce sujet
Les boutons de code
[B]old[I]talic[U]nderline[S]trikethrough[L]ine Flip Hori[Z]ontallyFlip [V]erticallySha[D]ow[G]low[S]poilerCode [G][C]ite
Bullet [L]istList Item [K] Link [H][E]mail[P]icture SmileysHelp
Couleurs :
Saisissez votre message
Activer les smileys
     

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 66.54ms avec 18 requetes