-
En-tête IPV4 et binaire
Bonjour, voici mon problème, je possède une en tête d'adresse IPV4 au format "54sd0v3m1c4640804098p1e6ac232a63ac145bop"
Et j'ai plusieurs étapes à exécuter, la première, que j'ai réussi, était de séparer cette string en chaine bloc de 4 mais après il me faut convertir ces blocs en binaires pour les additionner et voir que j'obtiens (normalement) une chaine de 1 (en binaire)
Merci d'avance
PS : voici la 1ere fonction
module IPV4 where
import qualified Data.Char as C
import qualified Data.List as L
decoupeBlock :: String -> [String]
decoupeBlock (tete:queue)=[take 4 (tete:queue)]++decoupeBlock (drop 3 queue)
-
Peux-tu donner ce que tu attends en sortie lorsque l'on applique ton entête d'exemple ?
-
Lorsque tu écris decoupeBlock(tete:queue) comment penses-tu découper la chaine en 2 parties, tete et queue ? Comme c'est une chaine, tete contient 1 caractère et queue tout le reste. A quoi te sert ce premier caractère dans le découpage des blocs ? Ne serait-il pas plus judicieux de faire take 4 touteLaLigne et ensuite drop 4 touteLaLigne ?
Ensuite, tu parles de convertir les blocs en binaire. Selon quelle convention ? Comment transformes-tu un 'm' en binaire ? Par son code ASCII ? Et quand tu as 4 octets, ils forment un nombre de 32 bits ? Big endian ou pas ?
Et, comme dit juste avant, que cherches-tu à obtenir ?