• dual_sport_dork@lemmy.world
    link
    fedilink
    arrow-up
    42
    arrow-down
    3
    ·
    3 months ago

    Gotta love Microsoft. “We need this to store either a 0 or a 1. How many bits should we take up, boss?”

    32.

    • Bezier@suppo.fi
      link
      fedilink
      arrow-up
      18
      ·
      edit-2
      3 months ago

      Using more than one bit for true/false isn’t just a microsoft thing, and not really as ridiculous as it sounds. Memory isn’t addessable by bits, but by bytes. You can either:

      • Do it like the example here.
      • Use bitfields: Pack multiple values into the same address, but “waste” more memory and cpu time for keeping track and checking which bit your bool is in. This is mostly useful when the data itself has to be really small.

      Why is it 32bit / 4 bytes instead of one? I assume a byte alignment reason because of some optimization.

    • MacN'Cheezus@lemmy.today
      link
      fedilink
      English
      arrow-up
      9
      arrow-down
      2
      ·
      3 months ago

      I bet the person who decided to store gender as a 32 bit value instead of a single bit is feeling utterly proud of his foresight right now.