3.3 can't use %ebx as address register. %rax is 64-bit, so we need movq Can't memory to memory. No register named %sl. The destination can't be a immediate. Destination operand incorrect size. movb -> movw