TAILIEUCHUNG - Bài giảng Kiến trúc máy tính: Chương II
Bài giảng Kiến trúc máy tính - Chương II: Kiến trúc tập lệnh 1, trình bày các nội dung cơ bản: xem lại cách thực thi một chương trình, phân loại lệnh trong MIPS, truy cập bộ nhớ trong MIPS, chi tiết về các toán tử(Add, sub, etc), chi tiết về các lệnh chuyển đổi dữ liệu (load, store ), chi tiết về các lệnh điều khiển (Jump, branch if equal ). | Kiến trúc tập lệnh1 1 Nội dung Xem lại cách thực thi một chương trình Phân loại lệnh trong MIPS Truy cập bộ nhớ trong MIPS Chi tiết về các toán tử – Add, sub, etc. Chi tiết về các lệnh chuyển đổi dữ liệu – Load, store Chi tiết về các lệnh điều khiển – Jump, branch if equal Thực thi lệnh Today we’re going to learn the details! Thực thi chương trình Bộ xử lý thực thi chương trình như thế nào? 1. Tải lệnh 2. Tìm ra toán tử được sử dụng 3. Tìm ra dữ liệu nào được sử dụng 4. Thực hiện tính toán 5. Tìm lệnh tiếp theo Lặp lại quá trình Bài giảng nhấn mạnh sự thực thi trong bộ xử lý MIPS Ví dụ: Tập lệnh MIPS Định dạng trường lệnh 3 toán hạng : Complex operation many instructions with temporary values. Phân loại tập lệnh Toán tử – Số học (add, multiply, subtract, divide, ) – Logic (and, or, not, xor, ) Dịch chuyển dữ liệu – Move (register to register) – Load (memory to register) – Store (register to memory) Điều khiển dữ liệu – Branch (có điều kiện, ., , ==) – Jump (không điều kiện, ., goto) Bảng tham khảo định dạng lệnh Tập thanh ghi trong MIPS 32 Thanh ghi đa dụng. – Kí hiệu R0 R31 hoặc $0 $31 – Các biến phải lưu trên thanh ghi. Một số trường hợp đặc biệt. – R0 luôn có giá trị zero (0) – R29 là thanh ghi con trỏ ngăn xếp – R31 được sử dụng cho thủ tục quay lại địa chỉ Một số thanh ghi đặc biệt. – PC (Program Counter): Thanh ghi lệnh hiện tại – HI & LO: lưu kết quả của phép nhân – Thanh ghi dấu phẩy động – Một số thanh ghi điều khiển (kiểm soát lỗi hoặc trạng thái) Câu hỏi: Tại sao giá trị thanh ghi R0 luôn bằng 0? Trả lời: Luôn cần giá trị 0 trong một chương trình Move: add dest, src, R0 Định nghĩa thanh ghi: Là bộ nhớ dung lượng nhỏ và nhanh được sử dụng để tăng tốc độ xử lý. 8 Bộ nhớ là một mảng 1 chiều lưu trữ dữ liệu • Mỗi ô nhớ có kích thước 1 byte (8 bits) • Địa chỉ bộ nhớ trong mảng Địa chỉ bộ nhớ được đánh chỉ số trên mảng • Máy tính 32 bits, có 232 ô nhớ (4GB) • Máy tính 64‐bit, có 264 ô nhớ (16EB) – 64-bit x86 lên tới ~48‐bits một ô nhớ (4PB). Tổ
đang nạp các trang xem trước