bar codes – how do they work?

how does a bar code reader understand a code that is upside down and not mistake it for a completely different code? i mean, a bar code consists of lines that are not symmetrical in any way.

maybe i should call my brother late tonight… give him another sleepless night, haha.. (hey come on, it’s only fair. payback for all those bedtime fairy tales he used to tell me when i was growing up..)



  1. “How stuff Works”

    The last digit of the UPC code is called a check digit. This digit lets the scanner determine if it scanned the number correctly or not. Here is how the check digit is calculated for the other 11 digits, using the code 63938200039

    1. Add together the value of all of the digits in odd positions (digits 1, 3, 5, 7, 9 and 11).
    6 + 9 + 8 + 0 + 0 + 9 = 32

    2. Multiply that number by 3.
    32 * 3 = 96

    3. Add together the value of all of the digits in even positions (digits 2, 4, 6, 8 and 10).
    3 + 3 + 2 + 0 + 3 = 11

    4. Add this sum to the value in step 2.
    96 + 11 = 107

    5. Take the number in Step 4. To create the check digit, determine the number that, when added to the number in step 4, is a multiple of 10.
    107 + 3 = 110

    The check digit is therefore 3.

    Each time the scanner scans an item, it performs this calculation. If the check digit it calculates is different from the check digit it reads, the scanner knows that something went wrong and the item needs to be rescanned.

    Sleep well….

    1. i’m so sorry i ever asked…

  2. Seems just about as complex as Marshall Mannerheim’s time-zone death question…..

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: