DCPU-16 Bitwise Shifting
===

I am trying to learn DCPU and prior to this i haven't dabbled with binary so bare with me...

    ;Set b to 1
    SET B,1 ;00001 (1)
    SHL B,1 ;00010 (2)
    SHL B,1 ;00100 (4)
    SHL B,1 ;01000 (8)
    SHL B,1 ;10000 (16)

All i am doing is shifting to the left one so shouldn't it simply double itselff each shift...  in my code you can see i have the last shift turning the registry B into 16 but when ran B ends up as 10 why is that.

I know this is simple stuff but i find it hard to wrap my head around!
Thanks for the help in advance,
Jacob