boujour

dans le cours que j'ai pour le l'angage C ils disent que ce opirateur ">>=" il décale les bits de la variable a droite et qu'il fait l'affictation en meme temps j'ai fais ce petit code pour voir qu'est que va se passe dans ma variable mais pas de bon resultat comme je comprend normalement si la variable i vaut 10000 aprés l'opirateur ">>" égale 1000 + 1 ça fait 9 pas 8 pour quoi mon programme affiche 8

int main(void)
{
unsigned char i = 0x10;
printf("%x \n",i);
i >>= 0x01;
printf("%x \n",i);
return 0;
}