Bài giảng Kiến trúc máy tính - Chương: Tập lệnh - Nguyễn Ngọc Hóa

Kiến trúc máy tính  
Tập lệnh  
NGUYỄN Ngọc Hoá  
Bộ môn Hệ thống thông tin, Khoa CNTT  
Trường Đại học Công nghệ,  
Đại học Quốc gia Hà Nội  
28 October 2015  
Nội dung  
Khái niệm  
Biểu diễn lệnh  
Format lệnh  
Các kiểu đánh địa chỉ  
Tham khảo chương 10, 11 của [1]  
Computer Architecture DepartmentofInformationSystems@NGUYNNgọc Hoá  
2
1. Khái niệm  
Tập lệnh: tập đầy đủ các lệnh mà CPU hiểu được.  
Lệnh: Mã máy (binary), thường được biểu diễn bởi những hợp  
lệnh (assembly codes)  
Phần nhìn thấy của máy tính bởi người lập trình (đặc biệt đối với  
người viết chương trình dịch)  
Thể hiện khái quát về mặt logic một máy tính theo nghĩa các  
registers, hoạt động của ALU, kiểu dữ liệu, …  
Thiết kế tập lệnh một phần quan trọng trong việc thiết kế CPU  
Mỗi một kiểu máy tính có một tập lệnh một CPU đặc thù.  
Computer Architecture DepartmentofInformationSystems@NGUYNNgọc Hoá  
3
Khái niệm…  
Một lệnh phải chứa những thông tin đòi hỏi bởi CPU:  
Mã lệnh (operation code – opcode): mã nhị phân xác định thao tác  
phải thi hành  
Tham chiếu đến các toán hạng nguồn  
Tham chiếu đến toán hạng đích  
Tham chiếu đến lệnh kế tiếp  
Computer Architecture DepartmentofInformationSystems@NGUYNNgọc Hoá  
4
Sơ đồ trạng thái chu trình lệnh  
Computer Architecture DepartmentofInformationSystems@NGUYNNgọc Hoá  
5
2. Biểu diễn lệnh  
Biểu diễn lệnh: chuỗi các bits được chia thành các trường  
Opcode  
4 bits  
Operand Reference Operand Reference  
6 bits  
6 bits  
Biểu diễn tượng trưng: cả opcode lẫn các toán hạng  
Ex: ADD A,B  
Computer Architecture DepartmentofInformationSystems@NGUYNNgọc Hoá  
6
Ví dụ  
Diễn dịch  
Địa chỉ bộ nhớ  
Nội dung  
LOAD (1100)  
ADD (1101)  
ADD (1110)  
STORE (1111)  
0002  
0100  
0101  
0110  
0111  
1100  
1101  
1110  
1111  
0010 0010 0000 1100  
0001 0010 0000 1101  
0001 0010 0000 1110  
0011 0010 0000 1111  
0000 0000 0000 0010  
0000 0000 0000 0011  
0000 0000 0000 0100  
0000 0000 0000 0000  
0003  
0004  
0000  
Computer Architecture DepartmentofInformationSystems@NGUYNNgọc Hoá  
7
Ngôn ngữ máy tính  
Được chia làm nhiều bậc khác nhau:  
Bậc thấp LLL: ngôn ngữ máy (binary), hợp ngữ…  
Bậc cao HLL: C, Pascal, Basic  
Một lệnh HLL tương ứng với nhiều lệnh LLL  
Tập lệnh phải đảm bảo đủ khả năng mã hoá tất cả các  
lệnh của một ngôn ngữ bậc cao.  
Ví dụ : X = X + Y được dịch thành:  
LOAD X, R1  
ADD R1, Y  
STORE R1, X  
Computer Architecture DepartmentofInformationSystems@NGUYNNgọc Hoá  
8
Thiết kế tập lệnh  
Thoả hiệp giữa:  
Số lượng phép toán  
Độ phức tạp của các phép toán  
Số kiểu dữ liệu  
Số thanh ghi registers  
Phương thức sử dụng registers  
Các kiểu đánh địa chỉ  
Số lượng trường trong một lệnh  
Độ lớn của các trường  
Thiết kế tập lệnh thiết kế CPU  
Computer Architecture DepartmentofInformationSystems@NGUYNNgọc Hoá  
9
3. Format lệnh  
Phân loại tập lệnh theo format lệnh: dựa trên số lượng địa  
chỉ toán hạng tham chiếu  
Lý thuyết: cần 4 trường để chứa địa chỉ  
Toán hạng nguồn 1  
Toán hạng nguồn 2  
Toán hạng kết quả  
Lệnh kế tiếp  
Thực tế:  
3 địa chỉ: ít sử dụng  
2 địa chỉ: 1 cho nguồn và 1 cho đích  
1 địa chỉ: sử dụng accumulator để chứa một toán hạng và kết quả  
0 địa chỉ: sử dụng một stack để chứa các toán hạng và kết quả  
Computer Architecture DepartmentofInformationSystems@NGUYNNgọc Hoá  
10  
pdf 10 trang yennguyen 09/04/2022 4280
Bạn đang xem tài liệu "Bài giảng Kiến trúc máy tính - Chương: Tập lệnh - Nguyễn Ngọc Hóa", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_kien_truc_may_tinh_chuong_tap_lenh_nguyen_ngoc_hoa.pdf