Now when I test one of the 16 bit multiplication routines I found somewhere around here, I multiply 2 by 1 and get something I consider strange Number 1: 00000000 00000010 Number 2: 00000000 00000001 And get the output multiplied 00010000 00010000 So again, is this "working" as far as what I should expect in a binary multiplication routine? If so, what exactly does that output represent? It's not "2 times 1 = 2" so I don't know what it is... I'm afraid to try my subtraction and division routines until I learn what's going on with this much...