A Modular Assembler code for x86 and AMD64 Assembly Code


YASM is an assembler designed for use with the x86 and AMD64 instruction sets. It has support for NASM Assembler code syntax as well as some limited support for the GNU GAS Assembler code syntax and can output a variety of different object file types.

Using yasm on RCC Resources

On RCC resources, yasm does not require a module to be loaded. It can be run directly on the RCC login nodes. In order to run yasm, simply run the following commands. Note that the commands yasm --help can be used to get a list of options and an example of a call to yasm.

yasm -f FORMAT -[OPTS] -o OUTFILE.o INFILE.asm 

Here, -f FORMAT is code which allows the user to select the format of the object file, there are several available formats. -[OPTS] should be replaced in real usage with a list of command-line options. See either yasm --help or the yasm documentation for details on these options. The INFILE.asm assembly source file will then be assembled to the OUTFILE.o object file in the format requested in -f FORMAT. The format parameter has binary as a default output format. As a quick specific example, if you have an assembly file, say "test.asm" then it can be assembled using the default binary output format using the following command:

yasm -o test.o test.asm