SkÃ¥ne Sjælland Linux User Group - http://www.sslug.dk Forside   Tilmelding   Postarkiv   Forum   Kalender   Søg
MhonArc Dato: [Date Prev] [Kronologisk oversigt] [Date Next]   TrÃ¥d: [Date Prev] [Oversigt trÃ¥de] [Date Next]   MhonArc
 

Re: [PERL] pack bit string



On Wed, Mar 06, 2002 at 03:15:20PM +0000, Jørgen Heesche wrote:
> Kan man pakke et antal dataværdier i een lang bit streng, således at der
> til hver enkelt dataværdi kun afsættes netop så mange bits, som det er
> nødvendigt med hensyn til værdiområdet for det pågældende dataelement?
> Eks.:
> Nogle målinger fortaget på samme tid skal pakkes i en record således:
>   Byte 1-4   BUFR    32 bits  : Her starter recorden med teksten BUFR
>     -  5-7   længde  24   -   : total recordlængde i bytes
>     -  8-    år      12   -   : 
>              måned    4   -   :
>              dag      6   -   :
>              time     5   -   :
>              minut    6   -   :
>              a       14   -   :
>              b       10   -   :
>              c        4   -   :
> 
> og så videre til f.eks. 267 bits ialt.
> Der er nu brugt 34 bytes på nær 5 bits som sættes til 0.
> Der sluttes med 4 bytes med teksten 7777.
> Der er nu dannet en binær record på 38 bytes som skal udlæses til en
> fil, hvordan gør man det?

Du kan i hvert fald pakke det ud vha. vec og unpack, men jeg kan ikke
finde nogen funktion der direkte kan pakke det sådan, men det er da muligt
selv at lave et pænt interface til det hvis du vil, f.eks. vha. tie.

MVH David Darville


 
Forside   Tilmelding   Postarkiv   Oversigt   Kalender   Søg

 
 
Henvendelse vedrørende websiderne til <www_admin>. Senest ændret 2005-08-10, klokken 19:54
Denne side vedligeholdes af MHonArc .