I think NASM is a very good assembler because it can compile into any well known format.But lack in syntax.
Is there a assembler out there that can compile compile to the same formats as NASM
NASM
Re:NASM
GNU 'as', contained in the binutils package, can assemble into any format that GCC can compile into (because GCC actually uses 'as' as backend).
But I doubt you'll be happy with its syntax if you don't even like NASM...
Edit / PS: GNU as uses AT&T syntax by default, which most people used to Intel / NASM syntax find to be nausea-inducing. Then again, I very much prefer AT&T syntax, so you might want to give it a try, perhaps after checking out how AT&T syntax differs from NASM.
But I doubt you'll be happy with its syntax if you don't even like NASM...
Edit / PS: GNU as uses AT&T syntax by default, which most people used to Intel / NASM syntax find to be nausea-inducing. Then again, I very much prefer AT&T syntax, so you might want to give it a try, perhaps after checking out how AT&T syntax differs from NASM.
Every good solution is obvious once you've found it.