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

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 mã 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 là 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 và một CPU đặc thù.

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

Trang 1

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

Trang 2

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

Trang 3

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

Trang 4

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

Trang 5

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

Trang 6

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

Trang 7

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

Trang 8

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

Trang 9

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

Trang 10

pdf 10 trang xuanhieu 7000
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

Tóm tắt nội dung 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

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 Hoa.Nguyen@vnu.edu.vn
 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 –DepartmentDepartment ofof InformationInformation SystemsSystems @@ HoáNGUYỄN NGUYEN Ngọ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 mã 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 là 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 và một CPU đặc thù.
Computer Architecture –DepartmentDepartment ofof InformationInformation SystemsSystems @@ HoáNGUYỄN NGUYEN Ngọ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 –DepartmentDepartment ofof InformationInformation SystemsSystems @@ HoáNGUYỄN NGUYEN Ngọc Hoá 4
 Sơ đồ trạng thái chu trình lệnh
Computer Architecture –DepartmentDepartment ofof InformationInformation SystemsSystems @@ HoáNGUYỄN NGUYEN Ngọ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 Operand Reference Operand Reference
 4 bits 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 –DepartmentDepartment ofof InformationInformation SystemsSystems @@ HoáNGUYỄN NGUYEN Ngọc Hoá 6
 Ví dụ 
 Địa chỉ bộ nhớ Nội dung Diễn dịch
 0100 0010 0010 0000 1100 LOAD (1100) 
 0101 0001 0010 0000 1101 ADD (1101) 
 0110 0001 0010 0000 1110 ADD (1110) 
 0111 0011 0010 0000 1111 STORE (1111) 
 1100 0000 0000 0000 0010 0002 
 1101 0000 0000 0000 0011 0003 
 1110 0000 0000 0000 0100 0004 
 1111 0000 0000 0000 0000 0000
Computer Architecture –DepartmentDepartment ofof InformationInformation SystemsSystems @@ HoáNGUYỄN NGUYEN Ngọ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 –DepartmentDepartment ofof InformationInformation SystemsSystems @@ HoáNGUYỄN NGUYEN Ngọ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 –DepartmentDepartment ofof InformationInformation SystemsSystems @@ HoáNGUYỄN NGUYEN Ngọ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 –DepartmentDepartment ofof InformationInformation SystemsSystems @@ HoáNGUYỄN NGUYEN Ngọc Hoá 10

File đính kèm:

  • pdfbai_giang_kien_truc_may_tinh_chuong_tap_lenh_nguyen_ngoc_hoa.pdf