Sample $n^2$ integers $a_{11},\dots,a_{nn}$ in $\{-d,\dots,-1,0,1\dots,d\}$ uniformly. 

What is the probability that the resulting matrix $[a_{ij}]$ has rank $r$?

Is there a nice parametrization of such matrices that helps us generate such a rank $r$ matrix quickly deterministically?

In general what is a good strategy?