1.1 .Các thế hệ máy tính
3.3. Diễn tiến thi hành lệnh mã máy
3.3.1. Đọc lệnh
MAR ← PC IR ← M[MAR]
Thanh ghi PC chứa địa chỉ lệnh tiếp theo Địa chỉ chuyển vào thanh ghi MAR
Địa chỉ đưa lên bus địa chỉ
Đơn vị điều khiển yêu cầu đọc bộ nhớ
Kết quả đưa lên data bus, sao chép vào thanh ghi MBR, đưa vào thanh ghi IR
Hình 3.4:Sơ đồ mô tả quá trình đọc lệnh
3.3.2. Giải mã lệnh
Lệnh từ thanh ghi lệnh IR được đưa đến đơn vị điều khiển
Đơn vị điều khiển tiến hành giải mã lệnh để xác định thao tác phải thực hiện Giải mã lệnh xảy ra bên trong CPU
31
3.3.3. Nhận dữ liệu
Giai đoạn này thường chỉ được dùng cho các lệnh nạp dữ liệu, lưu dữ liệu và lệnh nhảy.
Nhận dữ liệu trực tiếp:
CPU đưa địa chỉ của toán hạng ra bus địa chỉ CPU phát tín hiệu điều khiển đọc
Toán hạng được đọc vào CPU Tương tự như nhận lệnh
Nhận dữ liệu gián tiếp:
Hình 3.5: Sơ đồ tả nhận toán hạng gián tiếp
Quá trình nhận dữ liệu gián tiếp: CPU đưa địa chỉ ra bus địa chỉ CPU phát tín hiệu điều khiển đọc
Nội dung ngăn nhớ được đọc vào CPU, đó chính là địa chỉ của toán hạng Địa chỉ này được CPU phát ra bus địa chỉ để tìm ra toán hạng
CPU phát tín hiệu điều khiển đọc Toán hạng được đọc vào CPU
3.3.4. Thực hiện lệnh
Có nhiều dạng tuỳ thuộc vào lệnh Có thể là:
32 Đọc/Ghi bộ nhớ
Vào/Ra
Chuyển giữa các thanh ghi Thao tác số học/logic
Chuyển điều khiển (rẽ nhánh) ...
3.3.5. Lưu trữ kết quả
Rd ← Ngã ra ALU hoặc Rd ← MBR
CPU đưa địa chỉ ra bus địa chỉ
CPU đưa dữ liệu cần ghi ra bus dữ liệu CPU phát tín hiệu điều khiển ghi
Dữ liệu trên bus dữ liệu được copy đến vị trí xác định Lưu trữ kết quả trong thanh ghi đích.
Hình 3.6: Sơ đồ mô tả quá trình lưu kết quả