MarioLANG, 1111 8 bytes
;>;:[< =====[^ =: This prints a space after each 0 or 1 (as has been clarified is acceptable). The program was tested in the Ruby interpreter. It's not clear whether this behaviour of ^ is according to spec, but it works consistently in this implementation.
As usual, = is just some ground for Mario to walk on.
;reads an integer from STDIN into the current tape cell.>ensures Mario walks right (doesn't do anything at this point).:prints the integer in the current tape cell to STDOUT.[is a conditional. If the tape cell is0, Mario skips the next cell (the^), which will make him fall through the:(printing the0), off the rightbottom edge and terminate the program (poor Mario). If the tape cell is1, this does nothing, and execution continues.<^ensures Mario walks left, i.eis a jump command. turnsIt stops Mario from moving forward and sends him aroundstraight up one cell before he falls back down.[still does nothing For some reason (at least in this implementation) Mario can jump in mid-air provided there's another cell (even a space) below the jump.- That means Mario repeatedly jumps into the top
:prints, printing the1again. - , falls back down onto the
>^turns Mario around. - And now we repeat.and performs another jump. This must be a feature from the popular Super Ninja Brothers spin-off.