You really need to convert or just get an answer!?
I was thinking something like this, but need a bit more work and need check if really works:
align 4
output db "1000","1000","1000","1000","1000","1000","1000","1000"
db "0100","0100","0100","0100","0100","0100","0100","0100"
db "0010","0010","0010","0010","0010","0010","0010","0010"
db "0001","0001","0001","0001","0001","0001","0001","0001"
mov esi,"<"
mov edi,">"
mov eax,"1234" ;31323334h
mov ebx,"1246" ;31323436h
mov ecx,eax
xor ecx,ebx ;00000702h
jz after_dot ;integer part equal
and eax,ecx ;00000300h
and ebx,ecx ;00000402h
mov ecx,eax ;assume eax>ebx
mov edx,edi ;>
cmp eax,ebx ;.if eax > ebx, print ">", mov ecx,eax
cmovb ecx,ebx ;avoid jumps ;else print "<", mov ecx,ebx
cmovb edx,esi ;<
;print edx
bsr ecx,ecx ;count digits
;----------------------------
lea edx,output
mov eax,dword ptr [edx+ecx*4]
;print eax
jmp next_number
;----------------------------
.if ecx > 23
;print "1000"
.elseif ecx > 15
;print "100"
.elseif ecx > 7
;print "10"
.else
;print "1"
.endif
;----------------------------
jmp next_number
after_dot:
Oh, sorry, I now read your other post, ignore this message.