Executing perl script in Linux gives :Exec format error. Wrong Architecture

i have perl script that used to be working great , once i edit it in windows
and convert it to UTF-8 and then via FTP return it .
also did:

    chmod +x foo.pl

and then when i try to run it :

     ./foo.pl
    im getting this error:
    ./foo.pl: Exec format error. Wrong Architecture.

what ? what wrong Architecture ? whats going on here ?

My guess is Windows added a BOM to the file, while converting to UTF-8. It tends to do that... (Perhaps in addition the file was ftp-transferred in binary mode instead of ASCII mode ?)

You are right !
after converting it to ansi every thing worked ,
can you please tell me why its see it at wrong file if its UTF8?
by the way in notpad++ i didnt convert it to UTF8 with BOM
just plain UTF8

nine times out of ten this is the problem.

I have seen numerous files not work properly because they were ftp over in binary instead of ASCII and vise versa.

I can understand the latter, but not the former. The former should leave them unchanged no matter what.