2 ye bölüp kalanını almaktır binary mantığı
yani
33/2 kalan 1
16/2 kalan 0
8/2 kalan 0
4/2 kalan 0
2/2 kalan 0
1/2 kalan 1
33 = 100001

fakat senin örnek verdiğin şudur
3/2 kalan 1
1/2 kalan 1
3=11 fakat 4lü olması için başına anlamsız sıfırlar eklenir ve 0011 ve diğer 3 için 0011 daha(3+3 string toplaması yani)

ayrıca kodda yazarken % şu işaret kalanı almak demektir aklında bulunsun