в некоторых числах тупит =*)
fasm:
Код:
include 'win32ax.inc'
temp db 256 dup(?)
formats_str db "%i",0
main:
call oy
;4110000001 => 53
invoke wsprintf,temp,formats_str,edx
invoke MessageBox,HWND_DESKTOP,temp,temp,MB_OK
exit:
invoke ExitProcess,0
.end main
proc oy
mov ecx,4110000001
and ecx,0FFFFFh
MOV EAX,ECX
SHR EAX,10h
AND EAX,0Fh
IMUL EAX,EAX,95h
XOR EDX,EDX
MOV ESI,0A7h
DIV ESI
MOV EAX,ECX
SHR EAX,0Ch
AND EAX,0Fh
IMUL EAX,EAX,6Ch
MOV EDI,97h
MOV ESI,EDX
XOR EDX,EDX
DIV EDI
MOV EAX,ECX
SHR EAX,8h
AND EAX,0Fh
IMUL EAX,EAX,1Fh
SHL ESI,4h
MOV EDI,0A3h
ADD ESI,EDX
XOR EDX,EDX
DIV EDI
MOV EAX,ECX
SHR EAX,4h
AND EAX,0Fh
IMUL EAX,EAX,1Dh
SHL ESI,4h
MOV EDI,0B3h
ADD ESI,EDX
XOR EDX,EDX
DIV EDI
MOV EAX,ECX
AND EAX,0Fh
IMUL EAX,EAX,35h
SHL ESI,4h
MOV ECX,0C5h
ADD ESI,EDX
XOR EDX,EDX
DIV ECX
SHL ESI,4h
ADD ESI,EDX
MOV ECX,EAX
ret
endp
|