On Thu, Aug 29, 2002 at 06:34:28PM +0200, Francois Ryser wrote:
> Bonjours,
>
> Je recherche une methode en c++ de compter le nombre de bits a 1 dans des
> mots de 16 bits, mais avec un imperatif de vitesse car nous devons faire sur
> 1 million de mots de 16 bits
utilise la division modulo avec 2, qui donne le reste de la division :
r = 0;
w = .... ;
for (i = 0; i < 16; ++i) {
r += w % 2 ; // on accumule le reste de la division entiere par deux
w = w / 2; // division entiere */
}
avec un processeur actuelle, ca devrait prendre dans les 10ms pour
ton million de mot de 16 bits
y doit y avoir plus rapide, mais ca vaut probablement pas
la peine de se creuser plus les meninges je crois.
--
Philippe Strauss
http://philou.ch/
L'indiff�rence est le plus grand risque de notre temps,
la forme civilis�e de la cruaut�. -- Zenta Maurina
.
--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question. Ouais, pour se d�sabonner aussi.