In the work are defined the concepts semi-canonical and canonical binary matrix. What is described is an algorithm solving the combinatorial problem for finding the semi-canonical matrices in the set \Lambda_n^k consisting of all n\times n binary matrices having exactly k 1's in every row and every column without perambulating all elements. In the described algorithm bitwise operations are substantially used. In this way it becomes easier to find the solution to the problem for receiving one representative from every equivalence class regarding the introduced in the article equivalence relation in the set \Lambda_n^k . The last problem is equivalent to the problem for finding all canonical matrices in \Lambda_n^k .