Я видел movw %dx (%eax) в своем учебнике, и мне интересно, почему здесь movw вместо movswl или movzwl?
movw %dx (%eax)
movw
movswl
movzwl
Я думаю, что в %dx 2 байта и 4 байта в (%eax) (для 32-битной машины), поэтому ему нужно расширение?
%dx
(%eax)