Bài giảng Kiến trúc máy tính - Chương 6: Kiến trúc bộ lệnh

1.Phân loại

ØKiến trúc ngăn xếp (Stack)

ØKiến trúc thanh ghi tích lũy (Accumulator)

ØKiến trúc thanh ghi đa dụng (General-Purpose Register Architecture – GPRS)

oThanh ghi – Bộ nhớ (Register – Memory)

oNạp – Lưu (Load – Store)

3.Mã hóa tập lệnh

ØCác tiêu chuẩn thiết kế dạng thức lệnh

ØOpcode mở rộng

ØVí dụ về dạng thức lệnh

ØCác chế độ lập địa chỉ

ppt 22 trang thiennv 07/11/2022 3080
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kiến trúc máy tính - Chương 6: Kiến trúc bộ lệnh", để 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:

  • pptbai_giang_kien_truc_may_tinh_chuong_6_kien_truc_bo_lenh.ppt

Nội dung text: Bài giảng Kiến trúc máy tính - Chương 6: Kiến trúc bộ lệnh

  1. Các chế độ lập địa chỉ thông dụng Computer Architecture 6.11 University of Information Technology
  2. Ví dụ: Add R1, @(R3) Computer Architecture 6.12 University of Information Technology
  3. 4. Bộ lệnh Quá trình biên dịch ra ngôn ngữ máy Computer Architecture 6.13 University of Information Technology
  4. Nhóm lệnh truyền dữ liệu LOAD đích, nguồn Ví dụ: LOAD Ri, M(địa chỉ) // Ri ← M[địa chỉ] STORE đích, nguồn Ví dụ: STORE M(địa chỉ), Ri // M[địa chỉ] ← Ri Computer Architecture 6.14 University of Information Technology
  5. Nhóm lệnh tính toán số học Tên lệnh Ý nghĩa ADD Cộng ADDD Cộng số có dấu chấm động, chính xác kép SUB Trừ SUBD Trừ số có dấu chấm động, chính xác kép MUL Nhân DIV Chia INC Tăng lên 1 DEC Giảm đi 1 NEG Đảo dấu toán hạng Computer Architecture 6.15 University of Information Technology
  6. Ví dụ: Viết đoạn chương trình bằng ngôn ngữ Assembly để cộng 5H với 3H, dùng các thanh ghi AL va BL. Kết quả của phép cộng lưu vào bộ nhớ tại địa chỉ 100H. MOV AL, 05H // AL ← 05H MOV BL, 03H // BL ← 03H ADD AL, BL // AL ← AL + BL MOV 100H, AL // MEM[100H] ← AL: di // chuyển kết quả từ AL vao // vị trí nhớ DS:100H Computer Architecture 6.16 University of Information Technology
  7. Nhóm lệnh logic AND/OR Dạng tổng quát của lệnh AND/OR nhu sau: AND đích, nguồn OR đích, nguồn Ví dụ: AND AL, BL // Nội dung thanh ghi BL được giao // với nội dung trong thanh ghi AL // và kết quả được lưu lại trong // thanh ghi AL. Nếu trong // AL là 00001101B và trong BL là // 00110011B thì kết quả trong thanh // ghi AL sau phép AND là 00000001B Computer Architecture 6.17 University of Information Technology
  8. Nhóm lệnh dịch chuyển o SRL (Shift Right Logical) o SLL (Shift Left Logical) o SRA (Shift Right Arithmetic) o SLA (Shift Left Arithmetic) o RRL (Rotate Right Logical) o RLL (Rotate Left Logical) Computer Architecture 6.18 University of Information Technology
  9. Nhóm lệnh có điều kiện và lệnh nhảy IF THEN ELSE Ghi nhớ điều kiện Các bit trạng thái: •Bit dấu S (Sign) - đúng nếu kết quả âm •Bit trắc nghiệm zero Z (Zero) - đúng nếu kết quả bằng 0 •Bit tràn OVF (Overflow) – đúng nếu phép tính số học làm thanh ghi không đủ khả năng lưu trữ kết quả, •Bit nhớ C (Carry) - đúng nếu số nhớ đầu ra là1 Computer Architecture 6.19 University of Information Technology
  10. Ví dụ: Câu lệnh thứ 4 là một lệnh có điều kiện. Khi kết quả tăng giá trị trong thanh ghi R1 là 0, thì flag Z sẽ chuyển thành 1 và lệnh tiếp theo được thực thi sẽ là lệnh ở vị trí nhãn Loop. LOAD #100, R1 Loop: ADD (R2) + , R0 DECREMENT R1 BEQZ R1, Loop Computer Architecture 6.20 University of Information Technology
  11. 5. Cấu trúc lệnh CISC và RISC Loại lệnh % sử dụng thời gian Chuyển dữ liệu 43% Điều khiển dòng chay 23% Tính toán số học 15% So sánh 13% Phép toán Logic 5% Các lệnh khác 1% Thống kê thời gian thực hiện các loại lệnh ➢ RISC (Reduced Instruction Set Computer) ➢ CISC (Complex Instruction Set Computer) Computer Architecture 6.21 University of Information Technology
  12. RISC CISC – Kích thước các lệnh (độ dài lệnh) là cố định ( 32 bit) với chỉ một vài định dạng. – Kích thước tập lệnh thay đổi với rất nhiều định dạng khác nhau. – Sử dụng kiến trúc load-store các lệnh xử – Cho phép giá trị trong bộ nhớ được dùng lý dữ liệu hoạt động chỉ trong thanh ghi và như toán hạng trong các chỉ lệnh xử lý dữ liệu cách ly với các lệnh truy cập bộ nhớ. – Có rất nhiều thanh ghi, nhưng hầu hết chi – Một số lớn các thanh ghi đa dụng 32 bit, cho phép cấu trúc load-store hoạt động để sử dụng cho một mục đích riêng biệt nào hiệu quả. đấy. – Có một số ít lệnh (thường dưới 100 lệnh). – Có rất nhiều lệnh (khoảng 500). – Có một số ít các kiểu định vị (thường là – Có nhiều kiểu định vị. định vị tức thì và định vị gián tiếp qua một – Có nhiều dạng lệnh. thanh ghi). – Có một số ít dạng lệnh (một hoặc hai). – Có nhiều lệnh khác cũng thâm nhập vào bộ – Chi có các lệnh ghi hoặc đọc ô nhớ mới nhớ được. thâm nhập vao bộ nhớ. – Sử dụng rất nhiều code trong ROM giải mã các chi lệnh. – Các máy cũ ít khi cho phép các dòng lệnh – Giải mã các lệnh logic bằng kết nối phần cứng. thực thi kiểu này, chúng phải – Thực thi chỉ lệnh theo cấu trúc dòng chảy. tuần tự hát dòng lệnh nay mới đến dòng lệnh – Một lệnh thực thi trong 1 chu kì xung nhịp. khác. – Cần nhiều chu kì xung nhịp để hoàn thành một lệnh. Computer Architecture 6.22 University of Information Technology