JavaScript is required

Đoạn lệnh sau cho kết quả trong AL bằng bao nhiêu?

MOV CL, 3

MOV AL,10h

SHL AL, CL

A.

10h

B.

128

C.

0

D.

4h

Trả lời:

Đáp án đúng: B


Đoạn lệnh thực hiện các bước sau: 1. `MOV CL, 3`: Gán giá trị 3 vào thanh ghi CL. Thanh ghi CL thường được sử dụng để lưu số lần dịch bit trong các lệnh dịch (shift). 2. `MOV AL, 10h`: Gán giá trị 10h (tức là 16 trong hệ thập phân) vào thanh ghi AL. 3. `SHL AL, CL`: Dịch trái (Shift Left) nội dung của thanh ghi AL đi CL bit. Trong trường hợp này, AL (hiện đang chứa 10h = 16) sẽ được dịch trái 3 bit. Phân tích phép dịch trái: - Giá trị ban đầu của AL là 10h, tương đương với 00010000 trong hệ nhị phân. - Dịch trái 3 bit sẽ cho kết quả: 00010000 -> 00100000 -> 01000000 -> 10000000. - 10000000 trong hệ nhị phân tương đương với 80h hoặc 128 trong hệ thập phân. Vậy, sau khi thực hiện đoạn lệnh, giá trị trong AL sẽ là 128.

Câu hỏi liên quan