Q: Why is the capacity printed on the label of the card different from the one indicated by Windows?

I. The unit of capacity. When card manufacturers say "MByte", "M" means "Mega" which
        is equivalent to million (=106). Windows or other Operating Systems define "M" as
        1024 times 1024 (=220). According to the fact, 256MByte is equal to 256000000 Byte
        as a definition of card manufactures, which is equivalent to 244MByte as a definition
        of Windows. 
II. The second one is related to the card itself. In general, memories on a card are consumed
        by not only the users but also by the card itself. For example a card needs management
        area or spare area. In addition, DOS (Windows) format needs some area even though it is
        very small.

SD, microSD, SDHC, microSDHC, SDXC and microSDXC Logos are trademarks of SD-3C, LLC.