; For Windows:
; nasm -f win32 -o fizzbuzz.obj fizzbuzz.asm
; gcc -o fizzbuzz.exe fizzbuzz.obj
; For Linux: (remove all "_" underscores from this source)
; nasm -f elf -o fizzbuzz.o fizzbuzz.asm
; gcc -o fizzbuzz fizzbuzz.o
section .data
one: db '1',10,'2',10,'Fizz',10,'4',10,'Buzz',10,
db 'Fizz',10,'7',10,'8',10,'Fizz',10,'Buzz',10,'',0
two: db '11',10,'Fizz',10,'13',10,'14',10,'FizzBuzz',10,
db '16',10,'17',10,'Fizz',10,'19',10,'Buzz',10,'',0
three: db 'Fizz',10,'22',10,'23',10,'Fizz',10,'Buzz',10,
db '26',10,'Fizz',10,'28',10,'29',10,'FizzBuzz',10,'',0
four: db '31',10,'32',10,'Fizz',10,'34',10,'Buzz',10,
db 'Fizz',10,'37',10,'38',10,'Fizz',10,'Buzz',10,'',0
five: db '41',10,'Fizz',10,'43',10,'44',10,'FizzBuzz',10,
db '46',10,'47',10,'Fizz',10,'49',10,'Buzz',10,'',0
six: db 'Fizz',10,'52',10,'53',10,'Fizz',10,'Buzz',10,
db '56',10,'Fizz',10,'58',10,'59',10,'FizzBuzz',10,'',0
seven: db '61',10,'62',10,'Fizz',10,'64',10,'Buzz',10,
db 'Fizz',10,'67',10,'68',10,'Fizz',10,'Buzz',10,'',0
eight: db '71',10,'Fizz',10,'73',10,'74',10,'FizzBuzz',10,
db '76',10,'77',10,'Fizz',10,'79',10,'Buzz',10,'',0
nine: db 'Fizz',10,'82',10,'83',10,'Fizz',10,'Buzz',10,
db '86',10,'Fizz',10,'88',10,'89',10,'FizzBuzz',10,'',0
ten: db '91',10,'92',10,'Fizz',10,'94',10,'Buzz',10,
db 'Fizz',10,'97',10,'98',10,'Fizz',10,'Buzz',10,'',0
section .text
global _main
extern _printf
_main:
push one
call _printf
add esp, 4
push two
call _printf
add esp, 4
push three
call _printf
add esp, 4
push four
call _printf
add esp, 4
push five
call _printf
add esp, 4
push six
call _printf
add esp, 4
push seven
call _printf
add esp, 4
push eight
call _printf
add esp, 4
push nine
call _printf
add esp, 4
push ten
call _printf
add esp, 4
xor eax, eax
ret
Nathan.