A. Lý thuyết 1. Khái niệm general purpose computer, stored-program, compiler (xây dựng nên hợp ngữ (assembly language) của bộ xử lý) 2. Mô hình máy tính Von Neumann, Kiến trúc máy Von Neumann, lưu đồ hoạt động và hợp ngữ của máy này. 3. Các đặc trưng chính của tập chỉ thị (ISA), chú ý đến các đặc trưng liên quan đến sử dụng tập chỉ thị để lập trình cho máy tính (dùng hợp ngữ) 4. Cấu trúc bộ xử lý và thực thi chương trình: -Tổ chức thanh ghi, các loại thanh ghi, chức năng và ý nghĩa sử dụng -Nguyên lý thực thi chương trình bên trong máy tính (cơ chế tự động đọc và thực thi chỉ thị) -Khái niệm chu kỳ chỉ thị và các trạng thái máy tính trong một chu kỳ chỉ thị 5. Ngắt: -Khái niệm về cơ chế ngắt -Tại sao phải dùng ngắt -Vấn đề đa ngắt -Nguyên lý thực thi chương trình khi có ngắt (thủ tục ngắt, cơ chế chuyển thực thi…) 6. Biểu diễn số và tính toán số học: -Biểu diễn số nguyên +Biểu diễn theo dấu và độ lớn, thực hiện các phép tính số học trên dạng biểu diễn này +Biểu diễn theo số bù 2, thực hiện các phép tính số học trên dạng biểu diễn này -Biểu diễn số thực dấu chấm động +Nguyên lý biểu diễn +Những điểm lưu ý đối với biểu diễn số thực (dải số, số lượng số biểu diễn được, sai số…) +Thực hiện các phép tính 7 . Bộ nhớ -Tổ chức bộ nhớ trong DRAM - Cache: +Khái niệm +Tổ chức cache, ánh xạ +Hoạt động trong máy tính khi có cache +Các khó khăn khi dùng cache và giải pháp -Tổ chức bộ nhớ ngoài: đĩa cứng và những yếu tố ảnh hưởng đến tốc độ của máy tính 8. Kiến trúc bus -Tầm quan trọng của bus -Đặc trưng ảnh hưởng đến chất lượng toàn cục của máy tính 9. Kiến trúc I/O -Khái niệm I/O module -Nguyên lý thao tác với I/O -Khái niệm DMA, vấn đề phát sinh khi dùng DMA và giải pháp -Khái niệm I/O channel -Nguyên lý programmed I/O với I/O channel B. Dạng bài tập 1. Viết chương trình để thực hiện một yêu cầu trên máy giả thuyết (cho trước) hay máy Von Neumann. Yêu cầu có thể là một biểu thức hay một vài dòng code ở dạng ngôn ngữ cấp cao. Phải viết dưới dạng mã giả hay hợp ngữ (nếu có) rồi dịch sang mã máy. Trình bày chi tiết quá trình chạy chương trình bằng cách biểu diễn từng chu kỳ chỉ thị trên sơ đồ bộ nhớ và thanh ghi. 2. Vẽ sơ đồ thiết kế một RAM động theo yêu cầu: Biết dung lượng RAM cần, loại chip có (chú ý chỉ một loại hay nhiều loại), xác định số chip cần và vẽ sơ đồ giải mã địa chỉ. Bài Tập mẫu 1.Một máy tính có thuộc tính kiến trúc như sau: - Mỗi địa chỉ chứa một từ nhớ 16 bit. Chỉ thị có 4 bit mã lệnh và 12 bit địa chỉ. Số liệu có 1 bit dấu và 15 bit định lượng. -Bộ xử lý có thanh ghi PC, thanh ghi tích lũy AC và thanh ghi chỉ thị IR. -Một số mã lệnh: 0010 (Nạp nội dung bộ nhớ vào AC); 0110 (Ghi nội dung AC ra bộ nhớ); 1001 (Lấy nội dung bộ nhớ trừ nội dung của AC); 0101 (Cộng nội dung bộ nhớ với nội dung của AC); 0111 (Nhân nội dung bộ nhớ với nội dung của AC). Cho ô nhớ 940h chứa số 3, ô nhớ 941h chứa số 5. Hãy trình bày quá trình tính (3+5)*(5-3), ghi kết quả tại ô nhớ 942h. Chương trình được nạp vào bộ nhớ bắt đầu từ vị trí 300h. 2. Hãy vẽ sơ đồ giải mã địa chỉ cho DRAM 256 Kbyte dùng các chip nhớ 64K x 4, biết từ nhớ của DRAM là 1 byte? . (cho trước) hay máy Von Neumann. Yêu cầu có thể là một biểu thức hay một vài dòng code ở dạng ngôn ngữ cấp cao. Phải viết dưới dạng mã giả hay hợp ngữ (nếu có) rồi