Ahhhh... Nasm's default output format is flat binary. That's usually used to create a dos .com file, but can be used to create PE or ELF executables as well. So I guess the default platform is "any of 'em". :)
You'd select between 32- and 64-bit output with "-f win32", "-f win64", "-f elf32", "-f elf64" - or if by some madness you're doing this in "-f bin", a "bits 32" or "bits 64" directive.
By default, Nasm will accept any valid instruction you type. If you want Nasm to prevent you from using any instruction beyond a certain CPU level, the "cpu" directive will do that. You'd want "cpu 586", I guess. (never used it)
You may need to inform your (64-bit?) linker that you intend a 32-bit target. Mmmm... something like "-march=i386" or so for ld - dunno if "586" is an option. RTFM for your linker, if all else fails. :)
Never done it, but I think that's what you'd want to do.
Best,
Frank