Overflow không thể xảy ra khi dùng mul instruction?

Câu hỏi in màu vàng ở dưới nó nói : Hãy giải thích tại sao overflow không thể xảy ra khi dùng mul instruction và imul instrcution với 1 toán hạng





Nhưng khi mình test lại thì thấy vẫn có trường hợp xảy ra overflow với mul instruction(Hình bên dưới) :confused:



( of = 1 và cf = 1)
Không biết “sách sai” hay mình sai nữa? :yum:.Giải thích giùm mình cái này đi !!

Không xảy ra được Overflow vì kq nó được lưu ở thanh ghi lớn hơn.
Như al * bl = 255*255 -> kq lưu trong AH = 2 byte cuối của EAX = 0xFE01, như hình trên đã đúng.
AH * x -> lưu trong EAX
EAX * x -> lưu = 2 thanh ghi là EAX:EDX (64bit)

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