Bài Tập, Đề Thi Trắc Nghiệm Online - Môn Kiến Trúc Máy Tính - Đề 09 bao gồm nhiều câu hỏi hay, bám sát chương trình. Cùng làm bài tập trắc nghiệm ngay.
Câu 1: Trong kiến trúc máy tính hiện đại, bộ nhớ cache được sử dụng để làm gì?
- A. Lưu trữ dữ liệu hệ điều hành.
- B. Tăng tốc độ truy cập dữ liệu thường xuyên sử dụng.
- C. Thay thế cho bộ nhớ chính khi bộ nhớ chính bị đầy.
- D. Cung cấp bộ nhớ lưu trữ lâu dài cho dữ liệu.
Câu 2: Phương pháp địa chỉ hóa nào sau đây cho phép truy cập trực tiếp đến một vị trí bộ nhớ mà không cần tính toán địa chỉ phức tạp từ thanh ghi?
- A. Địa chỉ hóa trực tiếp (Direct Addressing)
- B. Địa chỉ hóa gián tiếp (Indirect Addressing)
- C. Địa chỉ hóa thanh ghi (Register Addressing)
- D. Địa chỉ hóa tương đối (Relative Addressing)
Câu 3: Trong một hệ thống pipeline, việc "hazard" (rủi ro) có thể làm giảm hiệu suất. Loại hazard nào xảy ra khi một lệnh cần dữ liệu mà lệnh trước đó chưa ghi xong?
- A. Control hazard
- B. Structural hazard
- C. Data hazard
- D. Instruction hazard
Câu 4: Kiến trúc Von Neumann khác biệt so với kiến trúc Harvard chủ yếu ở điểm nào?
- A. Số lượng thanh ghi trong CPU.
- B. Sử dụng chung bộ nhớ cho cả dữ liệu và chương trình.
- C. Cách thức thực hiện các phép toán số học và logic.
- D. Tốc độ xung nhịp của CPU.
Câu 5: Trong hệ thống bộ nhớ phân cấp, khi CPU tìm kiếm dữ liệu, thứ tự tìm kiếm thường bắt đầu từ đâu?
- A. Cache L1
- B. Bộ nhớ chính (RAM)
- C. Cache L3
- D. Ổ cứng (SSD/HDD)
Câu 6: Bus địa chỉ trong kiến trúc máy tính được sử dụng để làm gì?
- A. Truyền dữ liệu giữa CPU và bộ nhớ.
- B. Truyền tín hiệu điều khiển giữa CPU và bộ nhớ.
- C. Xác định vị trí ô nhớ cần truy cập.
- D. Cung cấp nguồn điện cho các thành phần bộ nhớ.
Câu 7: Thanh ghi "Program Counter" (PC) có vai trò gì trong CPU?
- A. Lưu trữ kết quả của phép tính số học.
- B. Lưu trữ dữ liệu tạm thời trong quá trình xử lý.
- C. Chứa địa chỉ của dữ liệu đang được truy cập.
- D. Chứa địa chỉ của lệnh tiếp theo sẽ được thực thi.
Câu 8: Kỹ thuật "Direct Memory Access" (DMA) cho phép thiết bị ngoại vi nào truy cập bộ nhớ chính mà không cần sự can thiệp trực tiếp từ CPU?
- A. Bộ nhớ cache
- B. Thiết bị ngoại vi
- C. ALU (Arithmetic Logic Unit)
- D. Thanh ghi
Câu 9: Trong biểu diễn số dấu phẩy động (floating-point), thành phần "exponent" (số mũ) dùng để làm gì?
- A. Biểu diễn phần nguyên của số.
- B. Biểu diễn dấu của số.
- C. Xác định vị trí dấu phẩy động và độ lớn của số.
- D. Lưu trữ thông tin về độ chính xác của số.
Câu 10: Phương pháp nào sau đây thường được sử dụng để giải quyết "control hazard" trong pipeline, khi quyết định rẽ nhánh phụ thuộc vào kết quả của một lệnh chưa hoàn thành?
- A. Data forwarding
- B. Stalling (pipeline bubble)
- C. Cache memory
- D. Branch prediction
Câu 11: Trong kiến trúc tập lệnh (ISA), CISC và RISC là hai loại kiến trúc khác nhau. RISC tập trung vào điều gì?
- A. Tập lệnh phức tạp với nhiều chế độ địa chỉ hóa.
- B. Tập lệnh đơn giản, số lượng lệnh ít, thực thi nhanh.
- C. Sử dụng vi chương trình để thực thi lệnh phức tạp.
- D. Tối ưu hóa cho việc thực hiện các phép toán số học phức tạp.
Câu 12: Bộ phận nào của CPU chịu trách nhiệm thực hiện các phép toán logic (AND, OR, NOT, XOR)?
- A. ALU (Arithmetic Logic Unit)
- B. CU (Control Unit)
- C. Register File
- D. Cache Memory
Câu 13: Khái niệm "locality of reference" (tính cục bộ tham chiếu) là cơ sở cho hiệu quả của bộ nhớ nào?
- A. Bộ nhớ chính (RAM)
- B. Bộ nhớ ảo (Virtual Memory)
- C. Bộ nhớ cache
- D. Bộ nhớ ROM
Câu 14: Trong hệ thống bộ nhớ ảo, "page fault" xảy ra khi nào?
- A. Khi truy cập một địa chỉ bộ nhớ không hợp lệ.
- B. Khi trang (page) cần thiết không có trong bộ nhớ chính.
- C. Khi bộ nhớ cache bị đầy.
- D. Khi xảy ra lỗi phần cứng bộ nhớ.
Câu 15: Loại bộ nhớ nào sau đây thường được sử dụng làm bộ nhớ chỉ đọc (ROM) để lưu trữ firmware hoặc BIOS?
- A. DRAM
- B. SRAM
- C. Cache
- D. EEPROM/Flash Memory
Câu 16: Kỹ thuật "pipelining" trong kiến trúc CPU nhằm mục đích gì?
- A. Tăng thông lượng lệnh (instruction throughput).
- B. Giảm độ trễ lệnh (instruction latency).
- C. Giảm mức tiêu thụ năng lượng của CPU.
- D. Đơn giản hóa thiết kế mạch logic của CPU.
Câu 17: Trong kiến trúc máy tính, "interrupt" (ngắt) là cơ chế để làm gì?
- A. Tăng tốc độ xử lý dữ liệu.
- B. Xử lý các sự kiện bất đồng bộ từ phần cứng hoặc phần mềm.
- C. Quản lý bộ nhớ cache hiệu quả hơn.
- D. Thực hiện đa nhiệm (multitasking) trên CPU đơn nhân.
Câu 18: "Memory-mapped I/O" và "Port-mapped I/O" là hai phương pháp giao tiếp với thiết bị ngoại vi. "Memory-mapped I/O" có đặc điểm gì?
- A. Sử dụng tập lệnh I/O riêng biệt.
- B. Giao tiếp thông qua các cổng I/O đặc biệt.
- C. Thiết bị ngoại vi được ánh xạ vào không gian địa chỉ bộ nhớ.
- D. Tốc độ truyền dữ liệu chậm hơn so với "Port-mapped I/O".
Câu 19: Trong kiến trúc CPU, "register file" là gì?
- A. Bộ nhớ cache cấp 1 (L1 cache).
- B. Bộ phận giải mã lệnh (instruction decoder).
- C. Bộ phận thực hiện phép toán số học và logic (ALU).
- D. Tập hợp các thanh ghi đa dụng và thanh ghi đặc biệt trong CPU.
Câu 20: Xét một hệ thống máy tính 32-bit. Độ rộng của bus địa chỉ thường là bao nhiêu để có thể truy cập 4GB bộ nhớ?
- A. 16-bit
- B. 32-bit
- C. 64-bit
- D. 20-bit
Câu 21: Trong kiến trúc bộ nhớ cache, "cache line" (khối cache) là gì?
- A. Địa chỉ của một vị trí trong bộ nhớ cache.
- B. Bộ điều khiển bộ nhớ cache.
- C. Đơn vị dữ liệu nhỏ nhất được truyền giữa bộ nhớ chính và bộ nhớ cache.
- D. Thời gian truy cập vào bộ nhớ cache.
Câu 22: Phương pháp tổ chức bộ nhớ cache nào chia bộ nhớ cache thành các tập hợp (sets), và mỗi tập hợp chứa nhiều "cache lines"?
- A. Direct-mapped cache
- B. Fully associative cache
- C. Sector cache
- D. Set-associative cache
Câu 23: Trong kiến trúc máy tính song song, SIMD (Single Instruction, Multiple Data) là gì?
- A. Một lệnh duy nhất được thực hiện đồng thời trên nhiều dữ liệu khác nhau.
- B. Nhiều lệnh khác nhau được thực hiện đồng thời trên cùng một dữ liệu.
- C. Nhiều lệnh khác nhau được thực hiện tuần tự trên nhiều dữ liệu.
- D. Một lệnh duy nhất được thực hiện tuần tự trên một dữ liệu duy nhất.
Câu 24: "Cache coherence" (tính nhất quán cache) là vấn đề quan trọng trong hệ thống đa xử lý. Vấn đề này phát sinh khi nào?
- A. Khi bộ nhớ cache quá nhỏ.
- B. Khi nhiều CPU cùng chia sẻ bộ nhớ chính và có cache riêng.
- C. Khi tốc độ CPU quá nhanh so với tốc độ bộ nhớ.
- D. Khi sử dụng bộ nhớ ảo.
Câu 25: Trong các phép toán số học dấu phẩy động, điều gì xảy ra khi kết quả của một phép toán quá nhỏ, gần bằng 0 và không thể biểu diễn chính xác trong định dạng số dấu phẩy động?
- A. Overflow
- B. Rounding error
- C. Underflow
- D. Precision loss
Câu 26: Kỹ thuật "branch prediction" (dự đoán rẽ nhánh) được sử dụng để cải thiện hiệu suất của pipeline bằng cách nào?
- A. Giảm độ trễ của bộ nhớ cache.
- B. Tăng tốc độ giải mã lệnh.
- C. Loại bỏ hoàn toàn "control hazard".
- D. Dự đoán hướng rẽ nhánh để nạp lệnh trước, tránh pipeline stall.
Câu 27: Trong kiến trúc máy tính, "endianness" đề cập đến điều gì?
- A. Thứ tự byte trong biểu diễn dữ liệu đa byte trong bộ nhớ.
- B. Kích thước của một ô nhớ (memory cell).
- C. Tốc độ truyền dữ liệu trên bus dữ liệu.
- D. Phương pháp địa chỉ hóa bộ nhớ.
Câu 28: "Superscalar" architecture là gì?
- A. Kiến trúc chỉ hỗ trợ xử lý số nguyên.
- B. Kiến trúc có khả năng thực thi nhiều lệnh đồng thời trong một chu kỳ xung nhịp.
- C. Kiến trúc sử dụng bộ nhớ cache chỉ đọc.
- D. Kiến trúc tối ưu cho các ứng dụng đồ họa.
Câu 29: Trong hệ thống RAID (Redundant Array of Independent Disks), RAID 5 cung cấp khả năng chịu lỗi và cải thiện hiệu suất đọc bằng cách nào?
- A. Sao chép dữ liệu đầy đủ trên tất cả các ổ đĩa.
- B. Sử dụng một ổ đĩa riêng biệt để lưu trữ dữ liệu dự phòng.
- C. Phân tán dữ liệu và thông tin chẵn lẻ (parity) trên tất cả các ổ đĩa.
- D. Không cung cấp khả năng chịu lỗi, chỉ cải thiện hiệu suất đọc.
Câu 30: Xét một đoạn mã lệnh assembly. Lệnh "JMP" (Jump) có chức năng gì?
- A. Thực hiện phép toán số học.
- B. Di chuyển dữ liệu giữa các thanh ghi.
- C. So sánh hai giá trị và đặt cờ trạng thái.
- D. Chuyển luồng điều khiển chương trình đến một địa chỉ khác.