#include <windows.h>
typedef signed char SBYTE;
int main()
{
/* Somme de deux entiers signés */
SBYTE si = 0x7F; //0x7F -> plus grans entiers signé pour un SBYTE
SBYTE sj = 0x7F;
si = si + sj;
printf("\n%ld -> 0x%x\n\n", si, si);
/* Résultat (-2 -> 0xFE) négatif et OF = 1 */
/* Mais aussi avec les non-signé !! */
BYTE i = 0x7F;
BYTE j = 0x7F;
i = i + j;
printf("\n%ld -> 0x%x\n\n", i, i);
/* Résultat (254 -> 0xFE) est positif mais pas d'un point de vue "signé" (0xFE -> -2) donc OF = 1 */
system("pause");
return 0x0;
}