Goodday, Je dois porter le code C suivant en Python, mais je ne peux pas trouver un bon moyen de faire l'arithmétique char non signé qui ignore les bits de débordement dans python, c'est à dire. 255 + 1 = 0; 255 + 2 = 1 etc. Le code ci-dessous est utilisé dans un calcul de somme de contrôle pour un protocole implémenté en C sur l'Arduino avec lequel je dois m'interfacer.faire arithmétique char non signé en python
unsigned char b[length];
unsigned char c1=0,c2=0,c3=0,c4=0;
for (i=0; i<length;i++)
{
c1+=b[i];
c2+=c1;
c3+=c2;
c4+=c3;
}
La seule raison pour laquelle je ne l'ai pas ajouter cela comme une réponse, est que l'utilisation de ord (c) n'est pas bon (à mon humble avis) que les données seront bits de données non imprimables brutes sur le fil. C'est la raison pour laquelle j'ai utilisé unsigned char [] pour b. La réponse que j'ai choisie était pour des raisons génériques;) – Hvisage
'ord()' fonctionnera avec "les données non-imprimables brutes": 'ord ('\ x00') == 0' (' \ x00' est un octet nul). – Pierre