Forum de mathématiques - Bibm@th.net
Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#2 17-03-2021 15:55:12
- Bernard-maths
- Membre Expert
- Lieu : 34790 Grabels
- Inscription : 18-12-2020
- Messages : 1 862
Re : MSB et LSB
Bonjour !
si tu ne sais pas autrement, oui passe en binaire ...
Mais si tu connais un peu les nombres pairs et impairs en hexa, tu peux t'en passer ... mais attention ...
MSB(2C) = MSB(2) ? Et LSB(2) = LSB(C) ?
Bernard-maths
Dernière modification par Bernard-maths (17-03-2021 15:59:00)
Hors ligne
#3 17-03-2021 19:39:44
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 17 385
Re : MSB et LSB
Bonsoir,
En Python, je te propose
def Poids_bits(x):
nb="0x"+x
b=bin(int(nb,16))
pf=len(p)-3
return int(b[2]),int(x,16)%2,pf
msb,lsb,expo=Poids_bits("2C")
print ("MSB =", msb, "ou encore",2**expo)
print ("LSB =",lsb)
:
Seule contrainte, passer ton octet hexadécimal sous forme d'un string.
Python écrit, lui "0x2C" d'où le nb="0x"+x
int(nb,16) convertit nb en un entier en base 10,
b=bin(int(nb,16)) récupère la conversion du décimal en binaire sous forme de string : '0b101100'
pf c'est l'exposant de la puissance correspondant à la la position du 1er en partant de la gauche.
je prends la longueur de p, je lui soustrais 3, parce que longueur-2 calcule le nombre de chiffres en retirant "0b", et je retire encore 1 puisque python compte les index des string, des listes, des tuples, des boucles à partir de 0.
Dans le cas de ton exemple, j'obtiens :
MSB = 1 ou encore 32
LSB = 0
Si j'essaie :
msb,lsb,expo=Poids_bits("DB")
MSB = 1 ou encore 128
LSB = 1
@+
Hors ligne
Pages : 1







