Bộ đệm lệnh của bộ vi xử lý 8088 có kích thước bao nhiêu?
A.
6 byte
B.
4 byte
C.
5 byte
D.
7 byte
Trả lời:
Đáp án đúng: D
Bộ vi xử lý 8088 có bộ đệm lệnh (instruction queue) với kích thước là 6 byte. Bộ đệm này cho phép CPU lưu trữ trước một vài byte lệnh tiếp theo để tăng tốc độ xử lý, giảm thời gian chờ đợi lệnh từ bộ nhớ.
Chế độ địa chỉ thanh ghi là chế độ mà toán hạng là một thanh ghi. Trong các phương án: - A. MOV AL, [BX]: Đây là chế độ địa chỉ gián tiếp thanh ghi, BX chứa địa chỉ bộ nhớ. - B. MOV CL, 10: Đây là chế độ địa chỉ trực tiếp (immediate), 10 là một hằng số. - C. MOV BX, DX: Đây là chế độ địa chỉ thanh ghi, DX là thanh ghi. - D. MOV AL, [0243H]: Đây là chế độ địa chỉ trực tiếp (direct addressing), 0243H là địa chỉ bộ nhớ. Vậy đáp án đúng là C.
Lệnh MUL (Multiply) được sử dụng để thực hiện phép toán nhân trong các hệ thống máy tính hoặc vi xử lý. Các lệnh ADDC (Add with Carry), SUB (Subtract), và DIV (Divide) thực hiện các phép toán cộng có nhớ, trừ và chia, tương ứng.
Trong kiến trúc x86, khi thực hiện phép nhân hai số 8-bit, kết quả sẽ được lưu trữ trong thanh ghi AX (16-bit). Nếu kết quả vượt quá 8-bit, nó sẽ chiếm toàn bộ 16-bit của thanh ghi AX. Thanh ghi DX thường được sử dụng khi thực hiện phép nhân hai số 16-bit, khi đó kết quả 32-bit sẽ được lưu vào cặp thanh ghi DX:AX (DX chứa phần cao 16-bit, AX chứa phần thấp 16-bit). Trong trường hợp này, vì phép nhân là hai số 8-bit, thanh ghi AX là đủ để chứa kết quả.
Lệnh nhảy có điều kiện là lệnh mà việc thực thi nhảy đến một địa chỉ khác trong chương trình phụ thuộc vào một điều kiện cụ thể (ví dụ: một cờ trạng thái được đặt hoặc xóa).
- Lệnh JMP là lệnh nhảy không điều kiện, nó luôn nhảy đến địa chỉ được chỉ định. - Lệnh JL (Jump if Less) là lệnh nhảy có điều kiện. Nó nhảy đến địa chỉ đích nếu giá trị của toán hạng thứ nhất nhỏ hơn toán hạng thứ hai (thường là sau một phép so sánh). - Lệnh LOOP là lệnh lặp, nó giảm giá trị của thanh ghi CX và nhảy nếu CX khác 0. Đây cũng là một dạng nhảy có điều kiện. - Lệnh SHL là lệnh dịch trái logic, nó không phải là lệnh nhảy.
Trong các lựa chọn trên, JL là lệnh nhảy có điều kiện rõ ràng nhất, vì nó trực tiếp kiểm tra một điều kiện (less than) để quyết định việc nhảy. LOOP cũng là nhảy có điều kiện nhưng JL thể hiện rõ tính chất "có điều kiện" hơn trong tên gọi và chức năng.
Trong kiến trúc máy tính, ngăn xếp (stack) là một cấu trúc dữ liệu hoạt động theo nguyên tắc LIFO (Last-In, First-Out). Con trỏ ngăn xếp (Stack Pointer - SP) là một thanh ghi đặc biệt được sử dụng để theo dõi đỉnh của ngăn xếp. Khi thực hiện các thao tác như đẩy (push) dữ liệu vào ngăn xếp hoặc lấy (pop) dữ liệu ra khỏi ngăn xếp, con trỏ SP sẽ được cập nhật để luôn trỏ vào đỉnh hiện tại của ngăn xếp. Vì vậy, đáp án chính xác là A.