Bonjour.
Concernant le fichier alu.c de la semaine 2, je ne comprend pas bien la technique d'addition utilisée. Prenons l'un des exemples de test-alu.c :
Soit une chaine de 8 bits 10000000 qu'on souhaite additionner à 011111111, en ajoutant la constante 1 ( je raisonne en binaire car je trouve ça plus compréhensible visuellement ). On devrait obtenir 0. En suivant le raisonnement point par point, j'obtiens :
a. Une variable qui additionne les lsb des deux chaines, on obtient alors : 00001111 + 1 (la constante) = 00010000.
b. Une variable qui additionne les msb des deux chaines et de la variable précédente, soit 00001000 + 00000111 + 00000001 = 00010000. En décalant de 4 vers la gauche pour repositionner les msb en tête de chaine, on a donc une chaine nulle. Mais si on concatène les deux variables avec l'opérateur bitwise OR, on obtient donc 00010000 au lieu de 0. Quelle est l' erreur dans mon raisonnement s'il vous plait ?