Bài giảng Hệ thống máy tính và Ngôn ngữ lập trình: Chương 4 - PGS.TS. Đặng Thành Tín

90 202 0
Bài giảng Hệ thống máy tính và Ngôn ngữ lập trình: Chương 4 - PGS.TS. Đặng Thành Tín

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Hệ thống máy tính và Ngôn ngữ lập trình - Chương 4: Các cấu trúc luận lý số cung cấp cho người học các kiến thức: Transistor, cổng luận lý, mạch tổ hợp, phần tử nhớ cơ bản, bộ nhớ, mạch tuần tự, đường truyền dữ liệu LC3. Mời các bạn cùng tham khảo.

HỆ THỐNG MÁY TÍNH VÀ NGƠN NGỮ C CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 CHƢƠNG 4: MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.1 Các thành phần 4.2 Một ví dụ mơ hình von Neumann: LC-3 4.3 Quá trình xử lý lệnh 4.4 Thay đổi trình xử lý lệnh 4.5 Khái niệm ISA LC-3 4.6 Nhóm lệnh thi hành 4.7 Nhóm lệnh di chuyển liệu 4.8 Nhóm lệnh điều khiển 4.9 Ba cấu trúc lệnh LC-3 4.10 Một ví dụ CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.1 Các thành phần Vào năm 1946, John von Neumann đưa mô hình máy tính để xử lý chương trình máy tính gồm năm phận bản: - nhớ (memory) - đơn vị xử lý (processing unit) - thiết bị nhập (input) - thiết bị xuất (output) - đơn vị điều khiển (control unit) Chương trình máy tính chứa nhớ máy tính Việc điều khiển thứ tự lệnh cần thực đơn vị điều khiển đảm trách CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.1 Các thành phần CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.1 Các thành phần 4.1.1 Bộ nhớ (Memory) Tổng quát, với số bit địa k, biểu diễn 2k phần tử nhớ Với kiến trúc tập lệnh máy tính LC-3, có khơng gian địa 216, phần tử dài 16 bit CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.1 Các thành phần 4.1.1 Bộ nhớ (Memory) Có hai thao tác truy xuất nhớ đọc ghi Đọc thông tin ô nhớ: - Đặt địa nhớ vào ghi địa nhớ MAR (Memory Address Register) - Tín hiệu Read tích cực - Sau thời gian, thơng tin từ nhớ có địa đặt vào ghi liệu nhớ MDR (Memory Data Register) CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.1 Các thành phần 4.1.1 Bộ nhớ (Memory) Lưu giá trị vào ô nhớ: - Ghi địa ô nhớ vào ghi MAR giá trị cần lưu vào ghi MDR - Tín hiệu Write Enable tích cực - Khi đó, thơng tin ghi MDR ghi vào nhớ có địa ghi MAR CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.1 Các thành phần 4.1.1 Bộ nhớ (Memory) CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.1 Các thành phần 4.1.2 Đơn vị xử lý (Processing Unit) Đơn vị xử lý phận thực máy tính xử lý thông tin (chia, bậc hai, … ) Theo mơ hình von Neumann phận xử lý đơn vị số học luận lý ALU (Arithmetic Logic Unit) thực phép tính số học cộng, trừ, thao tác logic AND, OR, NOT Các thao tác mà ALU LC-3 thực ADD, AND, NOT CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.1 Các thành phần 4.1.2 Đơn vị xử lý (Processing Unit) Kích thước toán hạng ALU xử lý thường xem chiều dài từ máy máy tính Mỗi tốn hạng xem từ Trong LC-3, ALU xử lý toán hạng 16 bit Chúng ta nói LC-3 có chiều dài từ 16 bit (32 bit Intel Pentium 64 bit SUN SPARC-V9 Intel Core i3.) CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.8 Nhóm lệnh điều khiển 4.8.3 Hai phương pháp điều khiển lặp Chúng ta dùng thuật ngữ lặp (loop) để mô tả chuỗi lệnh cần thực thi lặp lặp lại theo chế điều khiển Mỗi thân vòng lặp thực ta gọi lặp lại (iteration) vòng lặp CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.8 Nhóm lệnh điều khiển 4.8.3 Hai phương pháp điều khiển lặp Trong ví dụ mục trên, phương pháp biến đếm sử dụng Nếu biết xác số lần lặp n lần, đơn giản cần gán cho biến đếm trị n, sau lần lặp, cần giảm biến đếm kiểm tra xem có hay chưa Nếu chưa 0, đặt trị cho ghi PC địa lệnh đầu thân vòng lặp, tiếp tục lặp lại CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.8 Nhóm lệnh điều khiển 4.8.3 Hai phương pháp điều khiển lặp Phương pháp thứ hai dùng trị canh (sentinel) Cách đặc biệt hiệu khơng biết trước có lặp lại cần phải thực Thông thường trình lặp dãy kiện cần xử lý, cần thêm vào dãy kiện kiện kiểm tra giá trị mà biết trước hay theo quy ước không xuất kiện gốc Nếu việc kiểm tra xảy ra, tức việc lặp kết thúc Giá trị gọi trị canh CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.8 Nhóm lệnh điều khiển 4.8.4 Ví dụ Giả sử cần cộng trị nguyên dương từ nhớ x3100 tới x310B Khi dùng trị âm để làm trị canh Giả sử trị canh chứa ô nhớ x310C -1 CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MÔ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.8 Nhóm lệnh điều khiển 4.8.4 Ví dụ CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.8 Nhóm lệnh điều khiển 4.8.5 Lệnh JMP Lệnh JMP nạp ghi PC trị ghi xác định bời bit [8:6] lệnh Nếu lệnh JMP nằm địa x4000, R2 chứa trị x6600, PC chứa x4000, lệnh JMP x4000 thực thi, làm cho lệnh lệnh x6600 Vì ghi dài 16 bit, mã hóa địa cho nhớ 64K ISA LC-3, nên lệnh JMP khơng có giới hạn cho lệnh kế cần thực thi CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.8 Nhóm lệnh điều khiển 4.8.6 Lệnh TRAP Lệnh TRAP (opcode = 1111) cho phép lấy liệu vào xuất liệu khỏi máy tính có định dạng sau Lệnh thay đổi trị ghi PC, làm tới vị trí nhớ mà phần hệ điều hành để hệ điều hành thực tác vụ nhân danh chương trình thực thi Theo kiểu nói ngơn ngữ hệ điều hành, nói lệnh TRAP gọi dịch vụ hệ điều hành (service call) Các bit [7:0] lệnh TRAP tạo nên trapvector bit, xác định dịch vụ cần gọi mà chương trình muốn hệ điều hành thực CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 • • • 4.8 Nhóm lệnh điều khiển 4.8.6 Lệnh TRAP Một số dịch vụ cần biết để sử dụng : Nhập ký tự từ bàn phím: trapvector = x23 Xuất ký tự hình: trapvector = x21 Kết thúc chương trình: trapvector = x25 Khi hệ điều hành hồn tất dịch vụ, đếm chương trình PC đặt trở lại địa lệnh sau lệnh TRAP chương trình thực thi, chương trình tiếp tục chạy Đây khả thực giao tiếp LC-3 hệ điều hành chương trình thực thi CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.9 Ba cấu trúc lệnh LC-3 4.9.1 Ba cấu trúc lập trình có cấu trúc Trong lập trình có ba cấu trúc lệnh để thực tác vụ cần thiết, cấu trúc (sequential), điều kiện (conditional), lặp (iterative) Hình 4.16 trình bày ba cấu trúc triển khai tác vụ cần thực thi (task) CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.9 Ba cấu trúc lệnh LC-3 4.9.1 Ba cấu trúc lập trình có cấu trúc CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.9 Ba cấu trúc lệnh LC-3 4.9.2 Ba cấu trúc LC-3 CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.10 Một ví dụ Đếm số lần xuất ký tự xác định trước (được nhập từ bàn phím) mảng ký tự (file) cho trước Sau hiển thị số lần xuất hình(chấp nhận số lần xuất tối đa ký tự 9) CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.10 Một ví dụ CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.10 Một ví dụ CuuDuongThanCong.com https://fb.com/tailieudientucntt CHƢƠNG MƠ HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4.10 Một ví dụ CuuDuongThanCong.com https://fb.com/tailieudientucntt ... HÌNH VON NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4. 1 Các thành phần Vào năm 1 946 , John von Neumann đưa mơ hình máy tính để xử lý chương trình máy tính gồm năm phận bản: - nhớ (memory) - đơn vị xử lý... NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4. 1 Các thành phần 4. 1.3 Xuất nhập Để máy tính xử lý thơng tin, thơng tin phải đưa vào máy tính Để sử dụng kết xử lý, kết phải thể hiển cách bên ngồi máy tính. .. NEUMANN VÀ KIẾN TRÚC TẬP LỆNH LC-3 4. 1 Các thành phần 4. 1.1 Bộ nhớ (Memory) Lưu giá trị vào ô nhớ: - Ghi địa ô nhớ vào ghi MAR giá trị cần lưu vào ghi MDR - Tín hiệu Write Enable tích cực - Khi

Ngày đăng: 11/01/2020, 19:19

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan