Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trung tâm - Phạm Hoàng Sơn

Một số dạng lệnh:

• Liên hệ tới bộ nhớ

– MAR ← Địa chỉ do ALU tính tuỳ theo kiểu định vị (Rs2).

– MBR ← Rs1

– Địa chỉ hiệu dụng do ALU tính đƣợc đƣa vào MAR và thanh ghi nguồn

Rs1 đƣợc đƣa vào MBR (Memory Buffer Register) để đƣợc lƣu vào bộ

nhớ trong.

• Một lệnh của ALU

– Ngã ra ALU ← Kết quả của phép tính

– ALU thực hiện phép tính xác định trong mã lệnh, đƣa kết quả ra ngã ra.

• Một phép nhảy (thay đổi thứ tự thực thi của dãy lệnh)

– Ngã ra ALU ← Địa chỉ lệnh tiếp theo do ALU tính.

– ALU cộng địa chỉ của PC với độ dời để làm thành địa chỉ đích và đƣa

địa chỉ này ra ngã ra. Nếu là một phép nhảy có điều kiện thì thanh ghi

trạng thái đƣợc đọc quyết định có cộng độ dời vào PC hay không

Ví dụ:

• Một máy tính giả thiết có các đặc trƣng sau:

• Dạng lệnh 16 bit gồm 24=16 mã thao tác và 212=

4096(4KB) word nhớ định vị địa chỉ trực tiếp

• Dạng dữ liệu: 16 bit gồm 1 bit dấu và 15 bits dữ liệu.

• Các thanh ghi của CPU gồm: PC ( Program Counter) 12

bits, IR (Intruction Register) 16 bits và AC (Accumalator)

16 bits.

pdf71 trang | Chia sẻ: trungkhoi17 | Lượt xem: 559 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Kiến trúc máy tính - Chương 3: Bộ xử lý trung tâm - Phạm Hoàng Sơn, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
KIẾN TRÚC MÁY TÍNH (TH152) • Chƣơng 1: Tổng quan về kiến trúc máy tính • Chƣơng 2: Biểu diễn thông tin trong máy tính • Chương 3: Bộ xử lý trung tâm • Chƣơng 4: Bộ nhớ bán dẫn (bộ nhớ trong) • Chƣơng 5: Bộ nhớ ngoài • Chƣơng 6: Nhập xuất 1Phạm Hoàng Sơn I. MÔ TẢ II. DIỄN TIẾN THI HÀNH LỆNH Mà MÁY III. NGẮT QUÃNG (INTERRUPT) IV. CÁC KIẾN TRÚC XỬ LÍ TỐC ĐỘ CỦA BỘ VI XỬ LÍ V. CÁC KIỂU THI HÀNH MỘT LỆNH VI. TẬP LỆNH VII. KIỂU ĐỊNH VỊ VIII. NGÔN NGỮ CẤP CAO VÀ NGÔN NGỮ MÁY 2Phạm Hoàng Sơn MÔ TẢ • CPU là từ viết tắt của chữ Central Processing Unit (đơn vị xử lý trung tâm). CPU có thể đƣợc xem nhƣ não bộ của máy tính. CPU đảm nhận thực hiện chức năng cơ bản của máy tính là thực thi chƣơng trình. 3Phạm Hoàng Sơn MÔ TẢ 4Phạm Hoàng Sơn MÔ TẢ • Các thông số - Kiểu CPU - Tần số đồng hồ làm việc (tốc độ) - Bộ nhớ đệm (cache) - Socket - Tốc độ FSB (Front Side Bus) 5Phạm Hoàng Sơn MÔ TẢ • Cấu trúc CPU 6Phạm Hoàng Sơn Bộ điều khiển (CU-Control Unit) 7Phạm Hoàng Sơn Bộ điều khiển (CU-Control Unit) • Các thành phần 8Phạm Hoàng Sơn Bộ điều khiển (CU-Control Unit) • Thành phần: – Bộ đếm chương trình (Program Counter : PC) : Đây là một sổ ghi chứa địa chỉ ô nhớ. Ô nhớ này chứa lệnh cần tìm để thi hành. – Thanh ghi lệnh (Instruction Register :IR) : CPU tìm lệnh có địa chỉ nằm trong bộ đếm chƣơng trình và đặt lệnh này vào thanh ghi lệnh. – Bộ giải mã lệnh (Instruction Decoder) : Xác định các tác vụ của lệnh nằm trong thanh ghi lệnh, – Bộ tạo tín hiệu điều khiển (Squencer) : Tạo ra các tín hiệu điều khiển cần thiết để thi hành các tác vụ mà bộ giải mã vừa xác định. – Tín hiệu đồng hồ (Clock) : Là tín hiệu điện tử tuần hoàn làm đồng bộ các hoạt động của CPU. 9Phạm Hoàng Sơn Bộ số học-logic (ALU-Arithmetic Logic Unit) Mô hình kết nối ALU 10Phạm Hoàng Sơn Các thanh ghi (Registers) • Thanh ghi là phần tử nhớ nhanh tạm thời các dữ liệu và địa chỉ phục vụ cho hoạt động ở thời điểm hiện tại của bộ vi xử lí. • Số lƣợng các thanh ghi quyết định đến hiệu năng xử lí của bộ vi xử lí. 11Phạm Hoàng Sơn Các thanh ghi (Registers) • Phân loại – Thanh ghi địa chỉ: quản lý địa chỉ của ngăn nhớ hay cổng vào-ra. – „Thanh ghi dữ liệu: chứatạm thời các dữ liệu. – Thanh ghi đa năng: có thể chứa địa chỉ hoặc dữ liệu. – Thanh ghi điều khiển/trạng thái: chứa các thông tin điều khiển và trạng thái của CPU. – Thanh ghi lệnh: chứa lệnh đang đƣợc thực hiện. 12Phạm Hoàng Sơn Các thanh ghi (Registers) • Một số thanh ghi điển hình: – Bộ đếm chƣơng trình PC (Program Counter) – Con trỏ dữ liệu DP (Data Pointer) – Con trỏ ngăn xếp SP (Stack Pointer) – Thanh ghi cơ sở và thanh ghi chỉ số (Base Register & Index Register) – „Các thanh ghi dữ liệu – „Thanh ghi trạng thái 13Phạm Hoàng Sơn Các thanh ghi (Registers) • Bộ đếm chƣơng trình PC (Program Counter) – Còn đƣợc gọi là con trỏ lệnh IP (Instruction Pointer) – „Giữđịa chỉ của lệnh tiếp theo sẽ đƣợc nhận vào. – „Sau khi mộtlệnh đƣợc nhận vào, nội dung PC tự động tăng để trỏ sang lệnh kế tiếp. 14Phạm Hoàng Sơn 15Phạm Hoàng Sơn Các thanh ghi (Registers) • Con trỏ dữ liệu DP (Data Pointer) – Chứa địa chỉ của ngăn nhớ dữ liệu mà CPU muốn truy nhập – Thƣờng có một số thanh ghi con trỏ dữ liệu 16Phạm Hoàng Sơn 17Phạm Hoàng Sơn Các thanh ghi (Registers) • Con trỏ ngăn xếp SP (Stack Pointer) – Chứa địa chỉ của ngăn nhớ đỉnh ngăn xếp – „Khi cấtmột thông tin vào ngăn xếp: • Nội dung của SP tự động giảm • Thông tin đƣợc cất vào ngăn nhớ đƣợc trỏ bởi SP – Khi lấy một thông tin ra khỏi ngăn xếp: • Thông tin đƣợc đọc từ ngăn nhớ đƣợc trỏ bởi SP • N ội dung của SP tự động tăng • Khi ngăn xếp rỗng, SP trỏ vào đáy 18Phạm Hoàng Sơn 19Phạm Hoàng Sơn Các thanh ghi (Registers) • Thanh ghi cơ sở và thanh ghi chỉ số (Base Register & Index Register) – Thanh ghi cơ sở : chứa địa chỉ của ngăn nhớ cơ sở (địa chỉ cơ sở) – Thanh ghi chỉ số: chứa độ lệch địa chỉ giữa ngăn nhớ mà CPU cần truy nhập so với ngăn nhớ cơ sở (chỉ số) – Địa chỉ của ngăn nhớ cần truy nhập= địa chỉ cơ sở + chỉ số 20Phạm Hoàng Sơn 21Phạm Hoàng Sơn Các thanh ghi (Registers) • Thanh ghi dữ liệu – Chứa các dữ liệu tạm thời hoặc các kết quả trung gian – Cần có nhiều thanh ghi dữ liệu – Các thanh ghi số nguyên: 8, 16, 32, 64 bit – Các thanh ghi số dấu phẩy động 22Phạm Hoàng Sơn Các thanh ghi (Registers) • Thanh ghi trạng thái – Còn gọi là thanh ghi cờ (Flag Register) – Chứa các thông tin trạng thái của CPU • Các cờ phép toán: báo hiệu trạng thái của kết quả phép toán • Các cờ điều khiển: biểu thị trạng thái điều khiển của CPU 23Phạm Hoàng Sơn DIỄN TIẾN THI HÀNH LỆNH Mà MÁY • Chu trình lệnh – Nhận lệnh  Giải mã lệnh  Nhận toán hạng  Thực hiện lệnh  Cất toán hạng  Ngắt 24Phạm Hoàng Sơn DIỄN TIẾN THI HÀNH LỆNH Mà MÁY • Nhận lệnh 25Phạm Hoàng Sơn DIỄN TIẾN THI HÀNH LỆNH Mà MÁY • Sơ đồ mô tả quá trình nhận lệnh MAR ← PC IR ← M[MAR] 26Phạm Hoàng Sơn DIỄN TIẾN THI HÀNH LỆNH Mà MÁY • Giải mã lệnh 27Phạm Hoàng Sơn DIỄN TIẾN THI HÀNH LỆNH Mà MÁY • Nhận toán hạng 28Phạm Hoàng Sơn DIỄN TIẾN THI HÀNH LỆNH Mà MÁY • Thực hiện lệnh 29Phạm Hoàng Sơn DIỄN TIẾN THI HÀNH LỆNH Mà MÁY Một số dạng lệnh: • Liên hệ tới bộ nhớ – MAR ← Địa chỉ do ALU tính tuỳ theo kiểu định vị (Rs2). – MBR ← Rs1 – Địa chỉ hiệu dụng do ALU tính đƣợc đƣa vào MAR và thanh ghi nguồn Rs1 đƣợc đƣa vào MBR (Memory Buffer Register) để đƣợc lƣu vào bộ nhớ trong. • Một lệnh của ALU – Ngã ra ALU ← Kết quả của phép tính – ALU thực hiện phép tính xác định trong mã lệnh, đƣa kết quả ra ngã ra. • Một phép nhảy (thay đổi thứ tự thực thi của dãy lệnh) – Ngã ra ALU ← Địa chỉ lệnh tiếp theo do ALU tính. – ALU cộng địa chỉ của PC với độ dời để làm thành địa chỉ đích và đƣa địa chỉ này ra ngã ra. Nếu là một phép nhảy có điều kiện thì thanh ghi trạng thái đƣợc đọc quyết định có cộng độ dời vào PC hay không. 30Phạm Hoàng Sơn DIỄN TIẾN THI HÀNH LỆNH Mà MÁY • Cất (ghi) toán hạng 31Phạm Hoàng Sơn DIỄN TIẾN THI HÀNH LỆNH Mà MÁY Sơ đồ cất toán hạng 32Phạm Hoàng Sơn DIỄN TIẾN THI HÀNH LỆNH Mà MÁY PC: thanh g 33Phạm Hoàng Sơn • Ví dụ: • Một máy tính giả thiết có các đặc trƣng sau: • Dạng lệnh 16 bit gồm 24=16 mã thao tác và 212= 4096(4KB) word nhớ định vị địa chỉ trực tiếp • Dạng dữ liệu: 16 bit gồm 1 bit dấu và 15 bits dữ liệu. • Các thanh ghi của CPU gồm: PC ( Program Counter) 12 bits, IR (Intruction Register) 16 bits và AC (Accumalator) 16 bits. 34Phạm Hoàng Sơn • Mã lệnh đƣợc cho nhƣ sau: – 0010: Load AC from memory – 0101: Store AC to memory – 0011: Sub to AC from memory 35Phạm Hoàng Sơn Memory CPU 300 2 4 2 0 3 0 0 PC 301 3 4 2 1 AC 302 5 4 2 2 2 4 2 0 IR : 420 0 B F 8 421 0 4 C E Bước 1 422 Memory CPU 300 2 4 2 0 3 0 0 PC 301 3 4 2 1 0 B F 8 AC 302 5 4 2 2 2 4 2 0 IR : 420 0 B F 8 421 0 4 C E Bước 2 422 Bộ đếm chƣơng trình (PC) chứa 300 là địa chỉ của lệnh đầu tiên. Địa chỉ này đƣợc tải vào thanh ghi lệnh, (IR). Chú ý rằng quá trình này sẽ bao gồm luôn việc dùng thanh ghi địa chỉ bộ nhớ và thanh ghi vùng nhớ đệm bộ nhớ (MBR), để đơn giản các thanh ghi trung gian này đƣợc bỏ qua. 4 bit đầu tiên trong IR chỉ ra rằng bộ tích lũy (AC) tải vào, 12 bit còn lại đặc tả địa chỉ, ở đây là 420H. 36Phạm Hoàng Sơn Memory CPU 300 2 4 2 0 3 0 1 PC 301 3 4 2 1 0 B F 8 AC 302 5 4 2 2 3 4 2 1 IR : 420 0 B F 8 421 0 4 C E Bước 3 422 Memory CPU 300 2 4 2 0 3 0 1 PC 301 3 4 2 1 0 7 2 A AC 302 5 4 2 2 3 4 2 1 IR : 420 0 B F 8 0BF8-04CE 421 0 4 C E Bước 4 422 PC đƣợc tăng lên một đơn vị và lệnh kế tiếp đƣợc lấy ra Nội dung trƣớc đó của AC đƣợc trừ cho nội dung tại vị trí 421H, kết quả đƣợc lƣu trong AC. 37Phạm Hoàng Sơn Memory CPU 300 2 4 2 0 3 0 2 PC 301 3 4 2 1 0 7 2 A AC 302 5 4 2 2 5 4 2 2 IR : 420 0 B F 8 421 0 4 C E Bước 5 422 Memory CPU 300 2 4 2 0 3 0 2 PC 301 3 4 2 1 0 7 2 A AC 302 5 4 2 2 5 4 2 2 IR : 420 0 B F 8 421 0 4 C E Bước 6 422 0 7 2 A PC đƣợc tăng lên một đơn vị và lệnh kế tiếp đƣợc lấy ra. Nội dung AC đƣợc lƣu ở vị trí 422H. 38Phạm Hoàng Sơn NGẮT QUÃNG (INTERRUPT) • Khái niệm chung về ngắt: – Ngắt là cơ chế cho phép CPU tạm dừng chƣơng trình đang thực hiện để chuyển sang thực hiện một chƣơng trình khác, gọi là chƣơng trình con phục vụ ngắt • Các loại ngắt: – Ngắt do lỗi khi thực hiện chƣơng trình, ví dụ: tràn số, chia cho 0. – Ngắt do lỗi phần cứng, ví dụ lỗi bộ nhớ RAM. – Ngắt do mô- đun vào-ra phát tín hiệu ngắt đến CPU yêu cầu trao đổi dữ liệu. 39Phạm Hoàng Sơn NGẮT QUÃNG (INTERRUPT) • Ứng dụng của ngắt quãng: – Ngoại vi đòi hỏi nhập hoặc xuất số liệu. – Ngƣời lập trình muốn dùng dịch vụ của hệ điều hành. – Cho một chƣơng trình chạy từng lệnh. – Làm điểm dừng của một chƣơng trình. – Báo tràn số liệu trong tính toán số học. – Trang bộ nhớ thực sự không có trong bộ nhớ. – Báo dùng một lệnh không có trong tập lệnh. – Báo phần cứng máy tính bị hƣ. – Báo điện bị cắt. 40Phạm Hoàng Sơn NGẮT QUÃNG (INTERRUPT) • Sau khi hoàn thành mỗi một lệnh, bộ xử lý kiểm tra tín hiệu ngắt • Nếu không có ngắt  bộ xử lý nhận lệnh tiếp theo của chƣơng trình hiện tại • Nếu có tín hiệu ngắt: – Tạm dừng chƣơng trình đang thực hiện – Cất ngữ cảnh (các thông tin liên quan đến chƣơng trình bị ngắt) – Thiết lập PC trỏ đến chƣơng trình con phục vụ ngắt – Chuyển sang thực hiện chƣơng trình con phục vụ ngắt – Cuối chƣơng trình con phục vụ ngắt, khôi phục ngữ cảnh và tiếp tục chƣơng trình đang bị tạm dừng. 41Phạm Hoàng Sơn NGẮT QUÃNG (INTERRUPT) Chu trình lệnh với ngắt 42Phạm Hoàng Sơn CÁC KIẾN TRÚC XỬ LÍ TỐC ĐỘ CỦA BỘ VI XỬ LÍ • Kiến trúc tuần tự (Xử lí dạng đường ống) • Kiến trúc kiểu tuần tự: Đó là quá trình đọc, giải mã và thực hiện lệnh đƣợc thực hiện tuần tự, tức là lệnh này kết thúc thì mới đến lệnh khác đƣợc truyền vào bộ xử lí. 43Phạm Hoàng Sơn CÁC KIẾN TRÚC XỬ LÍ TỐC ĐỘ CỦA BỘ VI XỬ LÍ • Kiến trúc song song • Các lệnh có thể thực hiện song song với nhau dựa trên bộ xử lý song song. • Có thể chia máy tính song song thành ba loại dựa vào số lƣợng lệnh và dòng dữ liệu. – SISD (Single Instruction Single Data): đơn dòng lệnh đơn dòng dữ liệu. – SIMD (Single Instruction Multiple Data): đơn dòng lệnh đa dòng dữ liệu. – MIMD (Complex Instruction Set Computer): Máy tính nhiều dòng lệnh, nhiều dòng số liệu 44Phạm Hoàng Sơn CÁC KIẾN TRÚC XỬ LÍ TỐC ĐỘ CỦA BỘ VI XỬ LÍ • Kiến trúc CISC và RISC – CISC (Complex Intruction set computer): • Là một máy tính đƣợc thiết kế với một tập lệnh đầy đủ. • Tập lệnh phức tạp, dạng lệnh có chiều dài khác nhau và dạng thức phức tạp. • Các BXL của Intel từ 8088 đến 80486 đều dựa trên thiết kế này. – RISC (reduced Intruction Set Computer): • Là một máy tính đƣợc thiết kế với một tập lệnh rút gọn và thời gian thực hiện cố định • Kiến trúc RISC có thể thấy trong các bộ xử lý mới nhƣ IBM và Intel Pentium. 45Phạm Hoàng Sơn CÁC KIỂU THI HÀNH MỘT LỆNH • Một lệnh mã máy bao gồm một mã tác vụ và các toán hạng • Tuỳ theo tần số sử dụng các phép mà các nhà thiết kế máy tính quyết định số lƣợng các mạch chức năng cần thiết cho việc tính toán • Ví dụ: lệnh Y := A + B + C + D – Thực hiện 1 lệnh mã máy nếu có 3 mạch cộng – Thực hiện 3 lệnh mã máy nếu có 1 mạch cộng 46Phạm Hoàng Sơn CÁC KIỂU THI HÀNH MỘT LỆNH Kiến trúc ngăn xếp Kiến trúc thanh ghi tích luỹ Kiến trúc thanh ghi đa dụng Push A Push B ADD Pop C Load A ADD B Store C Load R1, A ADD B,R1 Store R1,C Chuỗi lệnh dùng thực hiện phép tính C := A + B 47Phạm Hoàng Sơn TẬP LỆNH • Giới thiệu chung về tập lệnh – Mỗi bộ xử lý có một tập lệnh xác định – Tập lệnh thƣờng có hàng chục đến hàng trăm lệnh – Mỗi lệnh là một chuỗi số nhị phân mà bộ xử lý hiểu đƣợc để thực hiện một thao tác xác định. – Các lệnh đƣợc mô tả bằng các ký hiệu gợi nhớ  chính là các lệnh của hợp ngữ 48Phạm Hoàng Sơn TẬP LỆNH • Các thành phần của lệnh máy – Mã thao tác (operation code opcode): mã hóa cho thao tác mà bộ xử lý phải thực hiện – „Địachỉ toán hạng: chỉ ra nơi chứa các toán hạng mà thao tác sẽ tác động – Toán hạng nguồn: dữ liệu vào của thao tác – Toán hạng đích: dữ liệu ra của thao tác Mã thao tác Địa chỉ của các toán hạng 49Phạm Hoàng Sơn TẬP LỆNH • Mô tả lệnh – Lệnh máy là mã nhị phân – Để dễ hiểu và dễ nhớ đối với con ngƣời, ngƣời ta mô tả lệnh bằng các ký hiệu gợi nhớ • Ví d ụ: ADD, SUB, LOAD – „ Toán hạng có thể đƣợc mô tả nhƣ sau: • ADD A,B 50Phạm Hoàng Sơn TẬP LỆNH BXL 8086 CÁC LỆNH CHUYỂN DỮ LiỆU • MOV: Chuyển nội dung từ nguồn đến đích. • LOAD: Chuyển nội dung từ bộ nhớ đến bộ xử lí. • STORE: Chuyển dữ liệu từ bộ xử lí đến bộ nhớ. • PUSH: đƣa số liệu vào ngăn xếp (làm giảm con trỏ ngăn xếp xuống 2 đơn vị) • POP: lấy số liệu ra từ ngăn xếp (làm tăng con trỏ ngăn xếp lên 2 đơn vị) 51Phạm Hoàng Sơn TẬP LỆNH BXL 8086 CÁC LỆNH SỐ HỌC • ADD: cộng hai toán hạng, • SUB: trừ hai toán hạng • MUL: nhân hai toán hạng • DIV: chia hai toán hạng • INC: tăng nội dung lên 1 đơn vị • DEC: giảm nội dung xuống 1 đơn vị 52Phạm Hoàng Sơn TẬP LỆNH BXL 8086 CÁC LỆNH LOGIC • AND: thực hiện phép toán logic ‘và’. • OR: thực hiện phép toán logic ‘hoặc’ • XOR: hoặc LOẠI • NOT: đảo ngƣợc 53Phạm Hoàng Sơn TẬP LỆNH BXL 8086 CÁC LỆNH ĐIỀU KHIỂN CHƢƠNG TRÌNH • JMP: lệnh nhảy sẽ điều khiển bộ xử lý lấy lệnh ở chỗ khác chứ không ở vị trí theo đúng trình tự. • IN: chuyển dữ liệu từ một cổng xác định đến đích. • OUT: chuyển dữ liệu từ nguồn đến một cổng xác định. 54Phạm Hoàng Sơn TẬP LỆNH BXL 8086 • Ví dụ: A=5, B=6 MOV AX,A ; đƣa A vào AX MOV B,AX ; đƣa AX vào B • Kết quả A=???, B=??? 55Phạm Hoàng Sơn • Ví dụ: A=5 • MOV AX,5 • SUB AX,A • MOV A,AX • Kết quả A=??? 56Phạm Hoàng Sơn • Ví dụ: A=5, B=6 • MOV AX,B • SUB AX,A • SUB AX,A • MOV A,AX • Kết quả??? A=???, B=??? 57Phạm Hoàng Sơn CÁC KIỂU ĐỊNH VỊ • Kiểu định vị định nghĩa cách thức thâm nhập các toán hạng. • Khái niệm về định địa chỉ (addressing) – Toán hạng của lệnh có thể là: • Một giá trị cụ thể nằm ngay trong lệnh • Nội dung của thanh ghi • Nội dung của ngăn nhớ hoặc cổng vào-ra – Phƣơng pháp định địa chỉ (addressing modes) là cách thức địa chỉ hóa trong trƣờng địa chỉ của lệnh để xác định nơi chứa toán hạng 58Phạm Hoàng Sơn CÁC KIỂU ĐỊNH VỊ • Định vị tức thì – Toán hạng nằm ngay trong trƣờng địa chỉ của lệnh – Chí có thể là toán hạng nguồn – Ví dụ: ADD R1, 5 ; R1  R1 + 5 – Không tham chiếu bộ nhớ – Truy nhập toán hạng rất nhanh – Dải giá trị của toán hạng bị hạn chế 59Phạm Hoàng Sơn CÁC KIỂU ĐỊNH VỊ • Định vị trực tiếp • Toán hạng là ngăn nhớ chứa địa chỉ đƣợc chỉ ra trực tiếp trong Trƣờng địa chỉ của lệnh • Ví dụ ADD R1,A ;R1  R1+(A) – Cộng nội dung thanh ghi R1 với nội dung của ngăn nhớ có địa chỉ là A – Tìm toán hạng trong bộ nhơ ở địa chỉ A • CPU tham chiếu bộ nhớ một lần để truy nhập dữ liệu 60Phạm Hoàng Sơn CÁC KIỂU ĐỊNH VỊ • Sơ đồ định vị trực tiếp 61Phạm Hoàng Sơn CÁC KIỂU ĐỊNH VỊ • Định vị gián tiếp 62Phạm Hoàng Sơn CÁC KIỂU ĐỊNH VỊ 63Phạm Hoàng Sơn CÁC KIỂU ĐỊNH VỊ 64Phạm Hoàng Sơn 65Phạm Hoàng Sơn 66Phạm Hoàng Sơn 67Phạm Hoàng Sơn 68Phạm Hoàng Sơn 69Phạm Hoàng Sơn 70Phạm Hoàng Sơn Kiểu định vị Ví dụ về lệnh Giải thích Tức thì Add R4, #3 ;Move R1,#5 R4 ← R4 + 3 ; R1←5 Trực tiếp(thanh ghi) Add R3, R4 ; Move R1,R2 R3 ← R3 + R4 ; R1 ← R2 Trực tiếp (bộ nhớ) Add R1, (1001) R1 ← R1 + M [1001] Gián tiếp (thanh ghi) ADD R4, (R1) R4 ← R4 + M [R1] Gián tiếp (bộ nhớ) Add R1, @ (R3) R1 ← R1 + M[ M [R3]] Gián tiếp (thanh ghi + Độ dời) Add R4, 100(R1) R4 ← R4 + M[R1 + 100] Gián tiếp (thanh ghi + thanh ghi) Add R3, (R1 + R2) R3 ← R3 + M[R1 + R2] Gián tiếp ( t/g nền + t/g chỉ số + độ dời ) Add R1, 100(R2)[R3] R1R1+M[100+R2+ d * R3] Ngăn xếp Add R1, (SP) R1 ← R1+ M (SP) 71Phạm Hoàng Sơn

Các file đính kèm theo tài liệu này:

  • pdfbai_giang_kien_truc_may_tinh_chuong_3_bo_xu_ly_trung_tam_pha.pdf
Tài liệu liên quan