FUNCTION bit2int, bitin, checkneg = checkneg ; compile_opt idl2, strictarrsubs ; res = 0L n = n_elements(bitin)-1 IF keyword_set(checkneg) THEN BEGIN IF bitin[0] EQ 1 THEN BEGIN bitin[0] = 0 neg = -1 ENDIF ELSE neg = 1 ENDIF ELSE neg = 1 FOR i = 0, n DO res = res+2L^i*bitin[n-i] RETURN, neg*res END