Ну например так: Пример из CrossWorks для 32-разрядного беззнакового.
<__int32_udiv>:
<__udivsi3>:
<__int32_udivmod>:
E3A02000 mov r2, #0x00000000
E3A03020 mov r3, #0x00000020
:
E1520001 cmp r2, r1
20422001 subcs r2, r2, r1
E0B00000 adcs r0, r0, r0
E0A22002 adc r2, r2, r2
E2533001 subs r3, r3, #0x00000001
1AFFFFF9 bne 0x00013200
E1520001 cmp r2, r1
20422001 subcs r2, r2, r1
E0A00000 adc r0, r0, r0
E12FFF1E bx lr
Цикл 32 раза по 6 команд + чуть чуть
На выходе есть и остаток