JavaScript is required

Xét đoạn chương trình và cho biết kết quả ?

DATA M1

DB ‘abcd,$’

Code …… CLD

LEA SI,M1 LODSB

A.

Nạp một byte từ M1 vào AL

B.

Nạp một từ vào M1

C.

Nạp một từ vào AL 

D.

Nạp một byte vào M1

Trả lời:

Đáp án đúng: A


Đoạn chương trình này thực hiện các bước sau: 1. **DATA M1 DB 'abcd,$'**: Khai báo một vùng nhớ M1 chứa chuỗi 'abcd,$'. Mỗi ký tự trong chuỗi này chiếm 1 byte. 2. **CLD**: Xóa cờ hướng (Direction Flag). Điều này có nghĩa là SI (Source Index) sẽ tăng lên sau mỗi lần đọc bằng LODSB. 3. **LEA SI, M1**: Nạp địa chỉ của M1 vào thanh ghi SI. SI bây giờ trỏ đến byte đầu tiên của chuỗi 'abcd,$'. 4. **LODSB**: Lệnh này thực hiện: * Đọc byte mà SI đang trỏ tới (byte đầu tiên của 'abcd,$', tức là ký tự 'a') vào thanh ghi AL. * Tăng SI lên 1 (do CLD đã xóa cờ hướng). Vì vậy, lệnh `LODSB` nạp 1 byte từ vùng nhớ M1 (bắt đầu từ địa chỉ được trỏ bởi SI) vào thanh ghi AL.

Chia sẻ tài liệu ôn thi với 300 câu trắc nghiệm Vi xử lý có đáp án dành cho các bạn sinh viên. Đây cũng là đề cương ôn tập hữu ích giúp bạn hệ thống kiến thức chuẩn bị cho kì thi sắp diễn ra. Mời các bạn tham khảo!


50 câu hỏi 60 phút

Câu hỏi liên quan