because lsr processes 32 bits of the short -9 and not 64 bits of the > long binary number? > Yes, -9 is considered as short. Try: ? bin(lsr(clng(-9),1), 64) 0111111111111111111111111111111111111111111111111111111111111011 Jussi