Bonjour, j'essaye de faire une additon en c en passant par le binaire.
Le schéma de l'additionneur est:
L'équation logique est donc: (a XOR b) OU (a ET b) avec a et b les nombres à additionner.
Or, ce code renvoye 3 au lieu de 5.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #include <stdio.h> unsigned int add (unsigned int a, unsigned int b){ return a^b|a&b;} void main(){ int r = add(2,3); printf("%d", r); }
Partager