What is the cross assembler?

The assembly part of a compiler is at the back end of the build process. A build process takes instructions from a programming language and converts them into machine instructions. When you need to make machine instructions for a machine that is different than the type you are programming on you need a cross compiler. For instance, if you have a PC with an Intel X86 and you want machine instructions for an Xbox with a PowerPC inside then you would need to cross compile. You could take some intermediate output from your compilation process on the PC and use a cross assembler to make PowerPC instructions. Thus you would be using a cross assembler.