一个perl的问题

sub log2($)
{
        my $v = shift;
        my $c = 0;
        ++$c while ($v >>= 1) ;
        return( $c );
}

谁能给解释一下这段perl代码里参数传递使用的什么方法?