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
Phạm Hoàng Sơn 1
CÁC KIẾN TRÚC XỬ LÍ TỐC ĐỘ CỦA BỘ VI XỬ LÍ
TẬP LỆNH KIỂU ĐỊNH VỊ
I. MÔ TẢ II. DIỄN TIẾN THI HÀNH LỆNH MÃ MÁY III. NGẮT QUÃNG (INTERRUPT) IV. V. CÁC KIỂU THI HÀNH MỘT LỆNH VI. VII. VIII. NGÔN NGỮ CẤP CAO VÀ NGÔN NGỮ MÁY
Phạm Hoàng Sơn 2
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.
Phạm Hoàng Sơn 3
MÔ TẢ
Phạm Hoàng Sơn 4
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)
Phạm Hoàng Sơn 5
MÔ TẢ
• Cấu trúc CPU
Phạm Hoàng Sơn 6
Bộ điều khiển (CU-Control Unit)
Phạm Hoàng Sơn 7
Bộ điều khiển (CU-Control Unit)
• Các thành phần
Phạm Hoàng Sơn 8
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. Phạm Hoàng Sơn
9
Bộ số học-logic (ALU-Arithmetic Logic Unit)
10 Phạm Hoàng Sơn Mô hình kết nối ALU
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í.
Phạm Hoàng Sơn 11
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.
Phạm Hoàng Sơn 12
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
Phạm Hoàng Sơn 13
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.
Phạm Hoàng Sơn 14
Phạm Hoàng Sơn 15
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
Phạm Hoàng Sơn 16
Phạm Hoàng Sơn 17
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
Phạm Hoàng Sơn 18
Phạm Hoàng Sơn 19
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ố
Phạm Hoàng Sơn 20
Phạm Hoàng Sơn 21
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
Phạm Hoàng Sơn 22
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
Phạm Hoàng Sơn 23
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
Phạm Hoàng Sơn 24
DIỄN TIẾN THI HÀNH LỆNH MÃ MÁY
• Nhận lệnh
Phạm Hoàng Sơn 25
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]
Phạm Hoàng Sơn 26
DIỄN TIẾN THI HÀNH LỆNH MÃ MÁY
• Giải mã lệnh
Phạm Hoàng Sơn 27
DIỄN TIẾN THI HÀNH LỆNH MÃ MÁY
• Nhận toán hạng
Phạm Hoàng Sơn 28
DIỄN TIẾN THI HÀNH LỆNH MÃ MÁY
• Thực hiện lệnh
Phạm Hoàng Sơn 29
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. Phạm Hoàng Sơn
30
DIỄN TIẾN THI HÀNH LỆNH MÃ MÁY
• Cất (ghi) toán hạng
Phạm Hoàng Sơn 31
DIỄN TIẾN THI HÀNH LỆNH MÃ MÁY
Sơ đồ cất toán hạng
Phạm Hoàng Sơn 32
DIỄN TIẾN THI HÀNH LỆNH MÃ MÁY
PC: thanh g
Phạm Hoàng Sơn 33
• 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.
Phạm Hoàng Sơn 34
• Mã lệnh đƣợc cho nhƣ sau: – 0010: Load AC from memory – 0101: Store AC to memory – 0011: Sub to AC from memory
Phạm Hoàng Sơn 35
Memory
CPU
Memory
CPU
2 4 2 0
300
3 0 0
PC
2 4 2 0
300
3 0 0
PC
3 4 2 1
301
AC
3 4 2 1
301
0 B F 8
AC
5 4 2 2
302
2 4 2 0
IR
5 4 2 2
302
2 4 2 0
IR
:
:
0 B F 8
420
0 B F 8
420
0 4 C E
421
Bước 2
0 4 C E
421
Bước 1
422
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.
Phạm Hoàng Sơn 36
Memory
CPU
Memory
CPU
2 4 2 0
300
3 0 1
PC
2 4 2 0
300
PC
3 0 1
3 4 2 1
301
0 7 2 A
AC
3 4 2 1
301
AC
0 B F 8
5 4 2 2
302
3 4 2 1
IR
5 4 2 2
302
IR
3 4 2 1
:
0BF8-04CE
:
0 B F 8
420
0 4 C E
421
Bước 4
0 B F 8
420
0 4 C E
421
Bước 3
422
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.
Phạm Hoàng Sơn 37
Memory
CPU
Memory
CPU
2 4 2 0
300
PC
3 0 2
2 4 2 0
300
PC
3 0 2
3 4 2 1
301
AC
0 7 2 A
3 4 2 1
301
AC
0 7 2 A
5 4 2 2
302
IR
5 4 2 2
5 4 2 2
302
IR
5 4 2 2
:
:
0 B F 8
420
0 B F 8
420
0 4 C E
421
Bước 6
0 4 C E
421
Bước 5
0 7 2 A
422
422
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.
Phạm Hoàng Sơn 38
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.
Phạm Hoàng Sơn 39
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.
Phạm Hoàng Sơn 40
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.
Phạm Hoàng Sơn 41
NGẮT QUÃNG (INTERRUPT)
Chu trình lệnh với ngắt
Phạm Hoàng Sơn 42
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í.
Phạm Hoàng Sơn 43
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
Phạm Hoàng Sơn 44
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.
Phạm Hoàng Sơn 45
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 46
Phạm Hoàng Sơn
CÁC KIỂU THI HÀNH MỘT LỆNH
Chuỗi lệnh dùng thực hiện phép tính C := A + B
Kiến trúc ngăn xếp Kiến trúc thanh
ghi tích luỹ Load A ADD B Store C
Kiến trúc thanh ghi đa dụng Load R1, A ADD B,R1 Store R1,C
Push A Push B ADD Pop C
Phạm Hoàng Sơn 47
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ữ
Phạm Hoàng Sơn 48
TẬP LỆNH
• Các thành phần của lệnh máy
Mã thao tác
Địa chỉ của các toán hạng
– 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
Phạm Hoàng Sơn 49
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
Phạm Hoàng Sơn 50
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ị)
Phạm Hoàng Sơn 51
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ị
Phạm Hoàng Sơn 52
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
Phạm Hoàng Sơn 53
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.
Phạm Hoàng Sơn 54
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=???
Phạm Hoàng Sơn 55
• Ví dụ: A=5
• MOV AX,5 • SUB AX,A • MOV A,AX
• Kết quả A=???
Phạm Hoàng Sơn 56
• Ví dụ: A=5, B=6 • MOV AX,B • SUB AX,A • SUB AX,A • MOV A,AX
• Kết quả??? A=???, B=???
Phạm Hoàng Sơn 57
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
Phạm Hoàng Sơn 58
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ế
Phạm Hoàng Sơn 59
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
Phạm Hoàng Sơn 60
CÁC KIỂU ĐỊNH VỊ
• Sơ đồ định vị trực tiếp
Phạm Hoàng Sơn 61
CÁC KIỂU ĐỊNH VỊ
• Định vị gián tiếp
Phạm Hoàng Sơn 62
CÁC KIỂU ĐỊNH VỊ
Phạm Hoàng Sơn 63
CÁC KIỂU ĐỊNH VỊ
Phạm Hoàng Sơn 64
Phạm Hoàng Sơn 65
Phạm Hoàng Sơn 66
Phạm Hoàng Sơn 67
Phạm Hoàng Sơn 68
Phạm Hoàng Sơn 69
Phạm Hoàng Sơn 70
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]]
Add R4, 100(R1)
R4 ← R4 + M[R1 + 100]
Gián tiếp (thanh ghi + Độ dời)
Add R3, (R1 + R2)
R3 ← R3 + M[R1 + R2]
Gián tiếp (thanh ghi + thanh ghi)
Add R1, 100(R2)[R3]
*
Gián tiếp ( t/g nền + t/g chỉ số + độ dời )
R1R1+M[100+R2+ d R3]
Phạm Hoàng Sơn 71
Ngăn xếp
Add R1, (SP)
R1 ← R1+ M (SP)

