Thắc mắc về cách encode 1 lệnh mov sử dụng 2 thanh ghi?

Giả sử ta có lệnh mov:
mov ax,bx
Trong sách nó encode lệnh trên sang mã máy là 89 D8 và ghi rằng 1 lệnh mov thanh ghi 16-bit thì có dạng encode là 89/r,trong đó /r là Mod r/m theo sau phần opcode

</br

>

Sau đó sách lại đưa ra cái bảng 12-23 ở hình trên.Phần opcode của lệnh mov ax,dx là 8B.
Tại sao không phải là 89 như trong ví dụ ở trên?Mọi người giải thích chỗ này cho mình với ?

Bạn xem bảng này: http://ref.x86asm.net/coder32.html
Thực ra 89 với 8B chỉ khác nhau là mem là nguồn hay là đích thôi, nếu cả hai đều là thanh ghi thì cả hai opcode đều đúng.

À mà bạn học RE?

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?