Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Comment on

( #3333=superdoc: print w/replies, xml ) Need Help??

The difference is that "b" is broken because it expects/produces the bits in the wrong order ["001" becomes chr(4)] while "B" is broken because short bit counts only deal with the highest bits ["001" becomes chr(32)]. (: [If multiple adjacent "b"/"B" formats could extract/set successive bits within a single byte, then this combination would be more reasonable.]

So, if you are a normal person, you have to use "B" and pad your binary strings (in front, that is, to the left) to multiples of 8 characters (for pack) and only use multiples of 8 as lengths after the "B" (for unpack).

It is called "ascending" bit order because it is assumed that you are reading the base-2 ASCII string (often confusingly called "binary" despite that term having way too many meanings in the context of pack and unpack) from left to right and, if you do that, the bits ascend in value from bit0=1, bit1=2, bit2=4, etc. While with "descending" bit order the leftmost "0" or "1" represents bit8=128 and the bit values descend from there.

BTW, I find that the documentation for pack/unpack is rather ambiguous/confusing and it is very hard to make it completely unambiguous. I often resort to testing via "perl -de 0" when I have a question about some detail of these two functions. You might find that useful as well.

        - tye (but my friends call me "Tye")

In reply to (tye)Re: Ascending vs descending bit order by tye
in thread Ascending vs descending bit order by dcpve

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?
    Username:
    Password:

    What's my password?
    Create A New User
    Chatterbox?
    [Corion]: In Amsterdam, the screen went down to the bottom of the stage (60cm above ground) and the seating was on the ground, meaning that the rows in the back couldn't see the bottom of slides.
    [Corion]: There also were some columns that meant that maybe you couldn't see the left/right edge of a slide.
    [ambrus]: Corion: Sure. I've had a course in a 50 seat lecture hall that has two fucking columns in the middle.
    [Corion]: Talking about it, the top should be fairly visible in the situations I've experienced at least. The top is uncomfortable for people in the first three rows, but that's life ;)
    [ambrus]: The pillars are there because this is in the 6th floor of building R of BME, which is an attic that was built in after the original building, which is also why the elevator doesn't go that high and the windows are tiny.
    [Corion]: ambrus: Hehe ;) Yeah - such real life stuff is far more inconveniencing than wasting display area due to screen ratio problems :)
    [ambrus]: Corion: yes, it's a bit tricky. you can try to adjust the slides live to cover only a part of the screen, but it's still hard.
    [ambrus]: Corion: two very hard things about presentations I should try to work on if I have twenty times as much free time as in real life are:
    [Corion]: That's why I like HTML - it makes it relatively easy to resize stuff. Resizing with Powerpoint is much harder, or at least, I remember it being that way
    [ambrus]: (a) good sans serif fonts optimized for slides in a projector with coverage of the symbols needed for mathematical formulas in a sans serif font matching the text font well, and

    How do I use this? | Other CB clients
    Other Users?
    Others about the Monastery: (12)
    As of 2017-09-26 10:14 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?
      During the recent solar eclipse, I:









      Results (293 votes). Check out past polls.

      Notices?