• Comment faire pour...

    Les réponses aux questions fréquement posées.

    FAQ

  • 1

Comment calculer le CRC 16 utilisé dans le protocole XModem

Auteur : Kristian PARADIS

Code adapté du C++
Procédure mCalculerCRC(_Chaine)
//Renvoie une chaine sur 2 octets.
eBit est un entier
eOctet est un entier
eCaract est un entier sans signe
eCRC est un entier sans signe
cChaine est une chaine = _Chaine
POUR eOctet = 1 _A_ taille(cChaine)
	eCaract = ASC(cChaine[[eOctet]])*0x100
	eCRC = OUExbinaire(eCRC,eCaract)
	POUR eBit = 0 _A_ 7
		SI ETBinaire(eCRC,0x8000) <> 0 ALORS
			eCRC = eCRC * 2
			eCRC = OUExbinaire(eCRC,0x1021)
		SINON
			eCRC = eCRC * 2
		FIN
	FIN
	eCRC = ETBinaire(eCrC,0xFFFF)
FIN
RENVOYER Caract(PartieEntiere(eCrC/256)) + Caract(Modulo(eCrc,256))

Participez à nos FAQs

Proposez vos questions réponses...

Nos FAQs comportent les réponses aux questions fréquemment posées : 'Comment je fais...' et 'Le saviez-vous...'.
Vous pouvez participer en spécifiant la question et la réponse à publier dans le formulaire.

 Bientôt un nouveau formulaire

image image