Because it executes your two instruction and then continues with executing
invalid instructions after your program. Try adding
movl $0, %eax
movl %eax, %ebx
to call exit(0) at the end.
Have a nice fortnight
-- Martin `MJ' Mares <firstname.lastname@example.org> http://atrey.karlin.mff.cuni.cz/~mj/ Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth "They'll release Windows 96 when 95 finishes loading."
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to email@example.com