Decide if a number is even or odd by using bitwise operator
Here are some things that may help you improve your code.

Simplify your code

This can certainly be simplified.  Keep the goal in mind: get either 0 or 1 into EAX.  Once you've executed this instruction:

and     eax,    0x1


That's exactly what you have.  So that means all of this can be deleted:

    cmp     eax,    0x0 
    je      print_result

    mov     eax,    0x1
print_result:


And all you need to do is print the result:

call    print_eax_binary