8 ms·
Coming from 6502, 68000, and similar families, I have always found it weird that mov eax, ebx means moving ebx into eax. When you move something, you mov
by hota_mazi 4y ago
Coming from 6502, 68000, and similar families, I have always found it weird that
mov eax, ebx
means moving ebx into eax.
When you move something, you move it to its destination, not from its destination.
mov A, B
should mean "Move A into B".
- curling_grad 4y agoIf you interpret "mov eax, ebx" as "eax = ebx", it's not that weird.
- hota_mazi 4y agoYes, that's how I read it mentally, but that was not my point.
- NikkiA 4y agoIt makes sense if you consider that intel kept flip-flopping between LD (load; 4004, 8008, 8085) and MOV (move; 8080, 8086) semantics, but didn't change the syntax layout. 'LD EAX, EBX' makes perfect sense, or would have, but 8086 landed on a 'move' generation, and stuck there.