def getBinaryDigit x,y #获取x的二进制数的第y位
return (x>>y-1)&1
end
拿getBinaryDigit 61,3为例
61的二进制为111101
111101右移2位
001111
二进制字符串转十进制:
def binaryStr2decimal str
sum=0
for i in 0..str.length-1
cf=str.length-1-i
ds=str[i].to_i
#puts "cf: "+cf.to_s+" ds: "+ds.to_s
sum=sum+ds*(2**cf)
end
return sum
end