Kiến trúc tập lệnh1

Tài liệu tương tự
Lkgjlfjq?etyuiiofjkfjlsfjkslddghdgertt

Nội dung chương 3 IT1110 Tin học đại cương Phần I: Tin học căn bản Chương 3: Hệ thống máy tính 3.1. Giới thiệu 3.2. Chức năng và các thành phần của má

Microsoft Word - Tom tat Luan van - Nguyen Thi Ngoc Quynh.doc

PowerPoint Presentation

Chương II - KIẾN TRÚC HỆ ĐIỀU HÀNH

Slide 1

TÀI LIỆU NHỮNG CÁNH CỬA BỎ NGỎ NGHIÊN CỨU CHO THẤY MÁY IN CÓ THỂ DỄ DÀNG BỊ TẤN CÔNG MẠNG. Trong khi đội ngũ CNTT tập trung vào các thiết bị đầu cuối

Microsoft Word - Module 2. Cau truc cua may tinh dien tu.doc

HỘI THI TIN HỌC TRẺ TỈNH AN GIANG ĐỀ CHÍNH THỨC ĐỀ THI LÝ THUYẾT BẢNG A - KHỐI TIỂU HỌC Khóa ngày: Thời gian : 20 phút (không kể thời gian

Tìm hiểu ngôn ngữ lập trình Visual Basic Tìm hiểu ngôn ngữ lập trình Visual Basic Bởi: Khuyet Danh Tìm hiểu ngôn ngữ lập trình Visual Basic Tổng quan

Slide 1

mySQL - Part 1 - Installation

Kiểm soát truy suất Kiểm soát truy suất Bởi: Khoa CNTT ĐHSP KT Hưng Yên Khái niệm Bảo mật thực chất là kiểm soát truy xuất [1]. Mục đích của bảo mật m

Chương trình dịch

Hướng dẫn Bắt đầu Nhanh Microsoft Publisher 2013 trông khác với các phiên bản trước, vì vậy chúng tôi tạo ra hướng dẫn này để giúp bạn dê dàng nắm bắt

MỘT SỐ LƯU Ý KHI DẠY CÁC TIẾT ÔN TẬP CHƯƠNG Môn Tin học cung cấp cho học sinh những kiến thức phổ thông về ngành khoa học tin học, hình thành và phát

CÂN ĐÔNG ĐÔ

PrA4_Belec-BVL-1704-GB-VarioLab_A4S05on-K1aLR _ LowResolution

CÔNG TƠ ĐIỆN XOAY CHIỀU KIỂU ĐIỆN TỬ 3 PHA VSE3T TÀI LIỆU KỸ THUẬT Dùng cho công tơ điện xoay chiều kiểu điện tử 3 pha VSE3T o 230/400V - 5(6)A (VSE3T

Tài liệu Hướng dẫn sử dụng

User Manual

ZTE-U V889D Hướng dẫn sử dụng

BỘ GIÁO DỤC VÀ ĐÀO TẠO

ETH-MOD-T BỘ CHUYỂN ĐỔI GIAO THỨC HAI CHIỀU MODBUS - ETHERNET 1 Thông tin chung: Tất cả dữ liệu của đồng hồ và relay trong đường dây được kết nối với

Chapter 5

ĐỀ CƯƠNG ÔN THI 1. Khái niệm về điều khiển Logic khả trình Có rất nhiều định nghĩa về bộ điều khiển Logic khả trình (Programmable logic controller viế

Kyõ Thuaät Truyeàn Soá Lieäu

DocuCentre-V 5070 / 4070 DocuCentre-V 5070 / 4070 Vận hành linh hoạt giúp nâng cao công việc của bạn.

THƯ VIỆN PHÁP LUẬT

Slide 1

Chapter #

Microsoft Word - Phan 1 - Kien thuc co so IFS-HANU 2011.doc

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG TIN HỌC ĐẠI CƯƠNG Bài 5. Kiểu dữ liệu và biểu thức trong C Nội dung 1. Các ki

Thư viện đề thi thử lớn nhất Việt Nam SỞ GD&ĐT KONTUM KIỂM TRA HỌC KÌ I NĂM HỌC TRƯỜNG THPT DUY TÂN MÔN: TIN HỌC - LỚP: 10 Thời gian: 45 phú

Tạp chí KHOA HỌC ĐHSP TPHCM Số 54 năm 2014 PHƯƠNG PHÁP SỬ DỤNG TRÒ CHƠI TRONG DẠY HỌC NGUYỄN THỊ BÍCH HỒNG * TÓM TẮT Bài viết trình bày phương pháp sử

ThemeGallery PowerTemplate

Tóm tắt ngữ pháp tiếng Anh Tổng hợp và biên soạn: Thầy Tâm - Anh Văn ( TÓM TẮT NGỮ PHÁP TIẾNG ANH Mục lục Tóm tắt

Quốc hội CỘNG HÒA DÂN CHỦ NHÂN DÂN LÀO Hòa bình-độc lập-dân chủ-thống nhất-thịnh vượng Số 11/QH Viêng chăn, ngày 9/11/2005 LUẬT DOA

Chöông 1 (tt.)

Slide 1

CÁC PHƯƠNG PHÁP GIẢNG DẠY TÍCH CỰC

Điểm ĐỀ THI HK 1 ( ) Môn: Kỹ thuật số Thời gian: 110 phút (SINH VIÊN KHÔNG ĐƯỢC SỬ DỤNG TÀI LIỆU) Chữ kí giám thị HỌ TÊN:. MSSV: NHÓM:.. SINH

- DEEBOT của tôi không thể kết nối với Wi-Fi. Tôi có thể làm gì? 1. Vui lòng kiểm tra cài đặt Wi-Fi. Robot chỉ hỗ trợ Wi-Fi 2.4G. Nó không hỗ trợ Wi-F

Bài 1:

Quy dinh lap ke hoach

NGÔN NGƯ LÂ P TRIǸH Biên tập bởi: nguyenvanlinh

Thực hành trên Rose Thực hành trên Rose Bởi: Đoàn Văn Ban Xây dựng biểu đồ thành phần + Tạo lập mới hoặc mở một biểu đồ thành phần đã được tạo lập trư

Lỗi thường gặp ở Windows Lỗi thường gặp ở Windows Bởi: Vien CNTT DHQG Hanoi LỖI THƯỜNG GẶP Ở WINDOWS Khi hệ thống gặp bất ổn, hệ điều hành (HĐH) sẽ cố

Lập trình cấu trúc trong Visual Basic Lập trình cấu trúc trong Visual Basic Bởi: Nguyễn Sơn Học xong chương này, sinh viên phải nắm bắt được các vấn đ

Microsoft Word - Authpaper_ICO_2019.docx

User Manual

(Tái bản lần thứ hai)

CÔNG TY CỔ PHẦN TIẾN BỘ QUỐC TẾ Hướng dẫn sử dụng Activ Vote & Expresss

User Manual

Đức Hùynh Phú Sổ Chủ Trương Tòan Dân Chánh Trị

Microsoft Word - TUT02.01.PVN.NTCR doc

Modbus RTU - Modbus TCP/IP Converter

TIẾNG VIỆT ENGLISH Hướng dẫn sử dụng User Guide LG-V400 MFL (1.0)

Gói Dự đoán bao trúng 100% áp dụng toàn VN cho cả BC và IDP, hình thức thi trên giấy, Academic, UKVI Gói dự đoán Platinum (4 kĩ năng -Giá 2tr): ĐỘC QU

LG-P698_VNM_cover.indd

ZTE-G R255 越南说明书.doc

HOÀNG VĂN VÂN (Tổng chủ biên) NGUYỄN THỊ CHI (Chủ biên) LÊ KIM DUNG PHAN CHÍ NGHĨA VŨ MAI TRANG LƯƠNG QUỲNH TRANG - NGUYỄN QUỐC TUẤN TẬP HAI

TẬP ĐOÀN VIỄN THÔNG QUÂN ĐỘI VIETTEL TRUNG TÂM CÔNG NGHỆ THÔNG TIN 1 HƯỚNG DẪN SỬ DỤNG HỆ THỐNG QUẢN LÝ VÀ ĐIỀU HÀNH VĂN BẢN ĐIỆN TỬ Đối tượng Văn thư

I. MSWLogo là gì. Giới thiệu. Là một ngôn ngữ lập trình được thiết kế và phát triển bởi Seymour Papert, Daniel Bobrow và Wallace Feurzeig. Trong chươn

Hướng dẫn bắt đầu sử dụng mozabook mozabook 2 Cài đặt, bắt đầu, Bản đồ màn hình Mở ấn phẩm, Nhập PDF và PPT Dẫn đường, Cập nhật ấn phẩm Ấn phẩm mới Nộ

Trường Đại học Văn Hiến TÀI LIỆU MÔN HỌC KỸ NĂNG MỀM (Lưu hành nội bộ) KỸ NĂNG GIẢI QUYẾT VẤN ĐỀ VÀ RA QUYẾT ĐỊNH Biên soạn: ThS. Nguyễn Đông Triều

Microsoft Word - Listen to Your Elders-2 Stories.docx

Microsoft Word - UW-MLT-W V_AutoCare Wording v14

DocuCentre-V 3065/3060/2060

Operating Instructions

HƯỚNG DẪN SỬ DỤNG DỊCH VỤ STORAGE.COM.VN

Cấu trúc và hoạt động của máy tính cá nhân Biên tập bởi: Vien CNTT DHQG Hanoi

Moduel 7:Trinh chiếu bài thuyết trình 163 Moduel 7: rình chiếu bài thuyết trình 7.1. rình chiếu bài thuyết trình Thiết lập các tùy ch n cho chế độ Sli

ESET Mobile Security

PowerPoint Template

Chuyển đổi tương tự - số photonic bằng cách dùng buồng cộng hưởng Fabry- Perot phi tuyến Chuyển đổi tương tự - số song song về mặt không gian được đề

Bitdefender Total Security

Dell Latitude 12 Rugged Extreme – 7214 Getting Started Guide

Microsoft Word - 3.QC tiep nhan, xu ly quan ly VB(R.1).doc

Bảo hiểm tai nạn của học sinh giờ đây có ý nghĩa quan trọng hơn bao giờ hết! Năm học Mặc dù quý vị đã nỗ lực hết sức để bảo vệ con em mình,

Microsoft Word - [vanbanphapluat.co] qcvn bct

10 Vạn Câu Hỏi Vì Sao - Tin Học

Công cụ trong VB6 Công cụ trong VB6 Bởi: FPT Software Để tìm hiểu về các công cụ trong VB chúng ta sẽ đề cập tới Add-in Các công cụ trong add-in Trình

UART0

5667 vn-SEA 422ZX Wheeled Loader Brochure Issue 1

Hệ điều hành UNIX Hệ điều hành UNIX Bởi: Wiki Pedia UNIX Unix hay UNIX là một hệ điều hành máy tính viết vào những năm 1960 và 1970 do một số nhân viê

Hướng dẫn sử dụng Camera thông minh EZVIZ C6C Bước 1 : Kết nối Camera với phần mêm EZVIZ (ta có thể tham khảo phần thêm Camera vào trong phần EZVIZ) B

Lesson 4: Over the phone (continued) Bài 4: Nói chuyện qua điện thoại (tiếp theo) Trần Hạnh và toàn Ban Tiếng Việt, Đài Úc Châu, xin thân chào quí bạn

Câu lệnh (statement) Câu lệnh (statement) Bởi: Khuyet Danh Trong C# một chỉ dẫn lập trình đầy đủ được gọi là câu lệnh. Chương trình bao gồm nhiều câu

ĐIỀU KHOẢN KHÁCH HÀNG CỦA HP - Portfolio Số Hợp đồng nếu cần: HP: Khách hàng: CÁC ĐIỀU KHOẢN KHÁCH HÀNG CỦA CÔNG TY HP 1. Các Bên. Các điều khoản này

Chương trình dịch

Co s? d? li?u (Database)

Bài tập thực hành NNLT Visual Basic GV. Nguyễn Thị Hải Bình BÀI THỰC HÀNH ÔN TẬP 1. Sinh viên ĐỌC CẨN THẨN TẤT CẢ NỘI DUNG trong bài thực hành trước k

INTRODUCTION TO THE CRACKING WITH OLLYDBG

Microsoft Word - Tran Thi Thuy Linh.doc

Folie 1

Bản ghi:

Kiến trúc tập lệnh1

Nội dung Xem lại cách thực thi một chương trình Phân loại lệnh trong MIPS Truy cập bộ nhớ trong MIPS Chi tiết về các toán tử Add, sub, etc. Chi tiết về các lệnh chuyển đổi dữ liệu Load, store Chi tiết về các lệnh điều khiển Jump, branch if equal

Thực thi lệnh Today we re going to learn the details!

Thực thi chương trình Bộ xử lý thực thi chương trình như thế nào? 1. Tải lệnh 2. Tìm ra toán tử được sử dụng 3. Tìm ra dữ liệu nào được sử dụng 4. Thực hiện tính toán 5. Tìm lệnh tiếp theo Lặp lại quá trình Bài giảng nhấn mạnh sự thực thi trong bộ xử lý MIPS

Ví dụ: Tập lệnh MIPS Định dạng trường lệnh 3 toán hạng : Complex operation many instructions with temporary values.

Phân loại tập lệnh Toán tử Số học (add, multiply, subtract, divide, ) Logic (and, or, not, xor, ) Dịch chuyển dữ liệu Move (register to register) Load (memory to register) Store (register to memory) Điều khiển dữ liệu Branch (có điều kiện, e.g., <, >, ==) Jump (không điều kiện, e.g., goto)

Bảng tham khảo định dạng lệnh

Tập thanh ghi trong MIPS 32 Thanh ghi đa dụng. Kí hiệu R0 R31 hoặc $0 $31 Các biến phải lưu trên thanh ghi. Một số trường hợp đặc biệt. R0 luôn có giá trị zero (0) R29 là thanh ghi con trỏ ngăn xếp R31 được sử dụng cho thủ tục quay lại địa chỉ Câu hỏi: Tại sao giá trị thanh ghi R0 luôn bằng 0? Trả lời: Luôn cần giá trị 0 trong một chương trình Move: add dest, src, R0 Một số thanh ghi đặc biệt. PC (Program Counter): Thanh ghi lệnh hiện tại HI & LO: lưu kết quả của phép nhân Thanh ghi dấu phẩy động Một số thanh ghi điều khiển (kiểm soát lỗi hoặc trạng thái)

Tổ chức bộ nhớ Bộ nhớ là một mảng 1 chiều lưu trữ dữ liệu Mỗi ô nhớ có kích thước 1 byte (8 bits) Địa chỉ bộ nhớ trong mảng Địa chỉ bộ nhớ được đánh chỉ số trên mảng Máy tính 32 bits, có 2 32 ô nhớ (4GB) Máy tính 64 bit, có 2 64 ô nhớ (16EB) 64-bit x86 lên tới ~48 bits một ô nhớ (4PB).

Dữ liệu: Kiểu và kích thước Các kiểu dữ liệu trong MIPS được định nghĩa là 1 từ Một từ gồm 32 bits = 4 bytes 2 32 bytes = 2 30 words: addresses 0, 4, 8, Câu hỏi: Đâu là 2 bit cuối cùng trong một địa chỉ từ?

Truy nhập alignment (Access alignment) Địa chỉ Alignment : Tạo trên 4 byte (word) ở đường biên (e.g., 0, 4, 8, 12 ) Dữ liệu được lưu trữ ở địa chỉ byte chia hết cho kích thước Địa chỉ Unalignment thì không (e.g., 1, 3, 7, 63) Một số kỹ thuật hỗ trợ truy cập Unaligment (not MIPS) Phần cứng có thể chuyển đổi thành đa truy cập định tuyến (complex) Phần cứng có thể dò được và có phần mềm cố định truy cập không định tuyến (slow) Một số nhược điểm 2 truy cập bộ nhớ cộng gộp tạo ra dữ liệu unaligned Intel cung cấp hỗ trợ thực thi mức cao trên vào năm 2010 (Nehalem)

Processor execution model Bộ xử lý thực thi lệnh theo 2 chế độ sequential và atomic Sequential: Thực thi các lệnh tuần tự Atomic: Thực thi lệnh cùng một lúc Sequential Chương trình : R2 = R1 + R2 then R3 = R1 + R2 Processor may not do: R3 = R1 + R2 then R2 = R1 + R2 wrong result Atomic Chương trình : R2 = R1 + R2 then R3 = R1 + R2 Bộ xử lý phải thực hiện xong tính toán: R2= R1 + R2 trước khi bắt đầu tính R3 = R1 + R2 Processors don t do either of these things (too slow) But it s important that they make it look like they do We ll talk a lot about this when we get to pipelines Question: Why do we care about in order and atomic execution? Answer: Without it we could not understand the program.

Máy tính lưu trữ chương trình Chương trình và dữ liệu được lưu trữ trong bộ nhớ Các lệnh phải được nạp từ bộ nhớ để thực thi Dữ liệu phải được nạp từ bộ nhớ để tính toán

Ví dụ: Các chỉ thị lệnh Phép toán (Data operations) Số học (add, multiply, subtract, divide, ) Logic (and, or, not, xor, ) Dịch chuyển dữ liệu (Data transfer) Move (register to register) Load (memory to register) Store (register to memory) Rẽ nhánh (Sequencing) Branch (conditional, e.g., <, >, ==) 1. Data operations: add/sub 2. Data transfers: load word/store word 3. Sequencing: Jump (unconditional, e.g., goto) Branch/jump

Chi tiết về các chỉ thị lệnh 1. Program Counter (PC) lưu trữ địa chỉ lệnh. 2. Các lệnh được nạp từ bộ nhớ vào thanh ghi lệnh. 3. Bộ điều khiển giải mã lệnh và báo cho ALU và tệp thanh ghi phải làm gì. 4. ALU thực thi lệnh và kết quả được chuyển lại tệp thanh ghi. 5. Bộ điều khiển cập nhật lại giá trị của PC cho lệnh tiếp theo.

Add/sub example (1 of 2)

Add/sub example (2 of 2) Bộ đếm chương trình (PC) nạp lệnh từ thanh ghi lệnh Control báo cho ALU và thanh ghi dữ liệu (Register File) phải làm gì. ALU ghi kết quả vào Register File.

Thực hành: add/sub f=(g+h) (i+j) R3=f R4=g R5=h R6=i R7=j

Các lệnh dịch chuyển dữ liệu

Chi tiết về dịch chuyển dữ liệu 1. ALU tạo ra địa chỉ 2. Địa chỉ gửi tới thanh ghi địa chỉ bộ nhớ (Memory Address Register) 3. Kết quả xác định hướng dịch chuyến đi/ đến được lưu trữ trên thanh ghi dữ liệu bộ nhớ (Memory Data Register) 4. Dữ liệu từ bộ nhớ có thể được ghi lại trên tệp thanh ghi (Register File) hoặc ghi vào bộ nhớ.

Load word example (1 of 2)

Load word example (2 of 2) Sử dụng địa chỉ từ thanh ghi tệp để tải dữ liệu từ bộ nhớ

Load word with offset (độ lệch) Độ lệch được thêm vào địa chỉ như là một phần của các câu lệnh lw/sw

Store word example Để thực hiện lưu trữ cần thông tin: Địa chỉ (từ ALU), dữ liệu (từ thanh ghi)

Bài tập Biến A = 3 Địa chỉ của A = 24 Program: Ghi giá trị 512 vào A Lấy địa chỉ của A trong R5 Lấy giá trị mới của A trong R6 Lưu giá trị R6 vào ô nhớ 5: Mem[R5] R6

Các chỉ thị điều khiển, rẽ nhánh

Các lệnh điều khiển rẽ nhánh Lệnh điều khiển rẽ nhánh Câu lệnh nào được thực thi tiếp theo? Thay đổi luồng điều khiển chương trình control flow Câu lệnh điều kiện trong MIPS bne R0, R1, Label branch if not equal to label beq R3, R4, Label branch if equal to label Example:

Lệnh nhảy không điều kiện Lệnh nhảy không điều kiện: jump j Label jump to label Example:

Chỉ thị rẽ nhánh Change the flow of the program change the Program Counter j jump goto label no matter what bne branch not equal goto label only if registers are not equal Example: if (a==b) c=1; else c=2;

Vòng lặp