Любое число в двоичной форме можно представить как числовой ряд:
y = a[0] * 2**0 + a[1] * 2**1 + a[2] * 2**2 + ... + a[x-1] * 2**(x-1)
Суть алгоритма деления - разделить один числовой ряд на другой числовой ряд.
Реализуете алгоритм на любом удобном языке высокого уровня, и потом без труда перепишете его на ассемблере.