Je viens d’inventer le problème suivant, qui est en fait une variation informatique d’un casse-tête récemment proposé sur un autre blog membre du C@fé des Sciences.
Un registre de microprocesseur contient un mot de 32 bits quelconque, mais dont exactement 8 bits sont à 1, les autres à 0 (par exemple 01001000000000111000010000101000)
Comment faire pour modifier les premiers 8 bits du mots de façon à ce qu’ils comportent autant de bits à ‘1′ qu’il n’y en a au total dans les 24 bits suivant (soit 6 dans l’exemple ci-dessus), et ceci en une seule instruction du processeur ?
"Binary Kite" par Syntopia
Si vous n’êtes pas familier avec l’assembleur, disons que vous disposez des mêmes opérations qu’une calculatrice, mais en binaire : addition, soustraction, ansi que des fonctions logiques (et, ou, …). Une instruction, c’est une de ces opérations suivie d’une opérande.
Posted in Casse-Têtes, Informatique