Chương 3: Tập lệnh của vi xử lý
lượt xem 169
download
Khái niệm lệnh: - Là chuỗi bit 0, 1 cung cấp để vi xử lý thực hiện một chức năng cơ bản. - Bao gồm 2 phần: + OP CODE: chọn chức năng thực hiện + Operand: Chọn dữ liệu cho lệnh.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Chương 3: Tập lệnh của vi xử lý
- Chương 3: Tâp lênh cua ̣ ̣ ̉ Vi Xử Lý Pham Thế Duy ̣ ptduy@yahoo.com
- ́ ̣ ̣ Khai niêm lênh Là chuôi bit 0, 1 cung câp để vi xử lý thực ̃ ́ hiên môt chức năng cơ ban. ̣ ̣ ̉ ̀ Bao gôm hai phân: ̀ OP CODE: chon chức năng thực hiên. ̣ ̣ Operand: Chon dữ liêu cho lênh. ̣ ̣ ̣
- ̣ ̣ ̣ Đinh dang lênh - Instruction Format 7 0 low addr opcode d w mod reg r/m optional Low Displacement or Immediate optional High Displacement or Immediate optional Low Immediate high addr optional High Immediate opcode 6-bit chỉ thị loai lênh sẽ thực hiên ̣ ̣ ̣ d (destination): d=1 chỉ thị toan hang thanh ghi Reg là toan hang đich ́ ̣ ́ ̣ ́ d=0 chỉ thị toan hang thanh ghi Reg là toan hang nguôn ́ ̣ ́ ̣ ̀ ́ ̣ ̣ ̀ w (word): w=1 toan hang trong lênh bao gôm hai byte ́ ̣ ̣ ̀ w=0 toan hang trong lênh bao gôm 01 byte
- ̣ ̣ ̣ Đinh dang lênh - Instruction Format 7 0 low addr opcode d w mod reg r/m optional Low Displacement or Immediate optional High Displacement or Immediate optional Low Immediate high addr optional High Immediate reg w=1 w=0 000 ax al mod is 2-bit chỉ thị chế độ đia chỉ (tuỳ theo giá trị cua r/m) ̣ ̉ 001 cx cl 010 dx dl reg là 3-bit chỉ thị toan hang thanh ghi (bang kê) ́ ̣ ̉ ́ 011 bx bl 100 sp ah r/m là 3-bit chỉ thị vị trí cua toan hang là trong thanh ghi hay ̉ ́ ̣ 101 bp ch bộ nhớ. (r/m : register/memory) 110 si dh 111 di bh
- ̣ ̣ ̣ Đinh dang lênh - Instruction Format Mod 00 01 10 11 M/R W=0 W=1 000 [BX]+[SI] [BX]+[SI] + d8 [BX]+[SI] + d16 AL AX 001 [BX]+[DI] [BX]+[DI] + d8 [BX]+[DI] + d16 CL CX 010 [BP]+[SI] [BP]+[SI] + d8 [BP]+[SI] + d16 DL DX 011 [BP]+[DI] [BP]+[DI] + d8 [BP]+[DI] + d16 BL BX 100 [SI] [SI] + d8 [SI] + d16 AH SP 101 [DI] [DI] + d8 [DI] + d16 CH BP 110 [BP] [BP] + d8 [BP] + d16 DH SI 111 [BX] [Bx] + d8 [Bx] + d16 BH DI
- ̣ ̣ ̣ Đinh dang lênh - Instruction Format 7 0 low addr opcode d w mod reg r/m optional Low Displacement or Immediate optional High Displacement or Immediate optional Low Immediate high addr optional High Immediate Displacement có thể 8 hoăc 16 bit ̣ - Là giá trị Hex được mã hoá trong lênh. ̣ - Sử dung để tinh toan giá trị đia chỉ cua toan hang ̣ ́ ́ ̣ ̉ ́ ̣ Immediate có thể 8, 16 hoăc 32 bit ̣ - là số hex - Sử dung lam toan hang trong lênh ̣ ̀ ́ ̣ ̣
- ̣ ̣ ̣ Đinh dang lênh - Instruction Format 7 0 low addr opcode d w mod reg r/m optional Low Displacement or Immediate optional High Displacement or Immediate optional Low Immediate high addr optional High Immediate Ví dụ xet lênh: ́ ̣ mov ax, bx Mã lênh sẽ la: ̣ ̀ 8B C3 = 1000101111000011 opcode la: ̀ 100010 mov ̀ d la: 1 thanh ghi là toan hang đich ́ ̣ ́ w la: ̀ 1 toan hang đich là 1 word ́ ̣ ́ mod la: ̀ 11 chỉ thị giá trị r/m trỏ tới a thanh ghi reg la: ̀ 000 thanh ghi toan hang đich là ax ́ ̣ ́ r/m la: ̀ 011 thanh ghi toan hang nguôn là bx ́ ̣ ̀
- ́ ̣ ́ ̣ Cac loai toan hang -Operand types 1) Register - Được mã hoá trong lênh. ̣ • Lênh thực hiên nhanh. ̣ ̣ • Không có truy câp Bus (in instr. queue) ̣ ̀ ̀ ̣ • Chiêu dai lênh ngăn. ́ 2) Immediate - Hăng số mã hoá trong lênh ̀ ̣ ̣ • 8 hoăc 16 bit ̣ • Không truy câp BUS (in instr. queue) • Chỉ có thể là toan hang nguôn ́ ̣ ̀ 3) Memory – Năm trong bộ nhớ, yêu câu truy câp BUS ̀ ̀ ̣ • Có thể cân tinh toan đia chi. ̀ ́ ́ ̣ ̉ • Đia chỉ cua toan hang trong lênh là đia chỉ Offset ̣ ̉ ́ ̣ ̣ ̣ hay: EFFECTIVE ADDRESS
- Effective Address • Tinh toan bởi EU ́ ́ • Thông thường, Effective address = displacement + [base register]+ [index register] (if any) (if any) (if any) • Có thể tinh toan từ 03 giá trị ́ ́ – Có trong môt số chế độ đia chỉ khac nhau: ̣ ̣ ́ • Displacement – 8 hoăc 16 bit là hăng số trong lênh ̣ ̀ ̣ – Thanh ghi cơ sở “base register” cân là BX hoăcBP ̀ ̣ – Thanh ghi chỉ số “index register” cân là SI hoăc DI ̀ ̣
- Cac chế độ đia chi- addressing mode ́ ̣ ̉ Tức thời (Immediate) Thanh ghi (Register) Trực tiêp (Direct) ́ ́ ́ Gian tiêp thanh ghi (Indirect register) Tương đôi Cơ sở (Based relative) ́ Tương đôi Chỉ số (Indexed Relative) ́ Cơ sở chỉ số (Based Index)
- Chế độ đia chỉ tức thời – Immediate ̣ Addressing Mov ax,1000H Mov bp,3000H Dữ liêu là môt số mã hoa trong lênh ̣ ̣ ́ ̣
- Chế độ đia chỉ thanh ghi - Register ̣ Mov ax,bx Mov al,ah Dữ liêu năm trong thanh ghi. ̣ ̀
- Chế độ đia chỉ trực tiêp ̣ ́ Direct Addressing mov [7000h], ax ds:7000h ax A3 00 70 mov es:[7000h], ax 26 A3 00 70 es:7000h ax prefix byte - longer instruction - more fetch time opcode mod r/m displacement effective address
- Chế độ đia chỉ trực tiêp Direct ̣ ́ Addressing Dữ liêu năm trong bộ nhớ, lênh chỉ thị đia chỉ ̣ ̀ ̣ ̣ offset cua ô nhớ. ̉
- Chế độ đia chỉ gian tiêp thanh ghi ̣ ́ ́ Register Indirect Addressing mov al, [bp] ;al gets 8 bits at SS:BP mov ah, [bx] ;ah gets 8 bits at DS:BX mov ax, [di] ;ax gets 16 bits at DS:SI mov eax, [si] ;eax gets 32 bits at DS:SI opcode mod r/m BX BP effective address SI DI
- Chế độ đia chỉ tương đôi cơ sở ̣ ́ Based Relative Addressing mov al, [bp+2] ;al gets 8 bits at SS:BP+2 mov ah, [bx-4] ;ah gets 8 bits at DS:BX-4 opcode mod r/m displacement BX + BP effective address
- Chế độ đia chỉ chỉ số tương đôi ̣ ́ Indexed Relative Addressing mov ax, [si+1000h] ;ax gets 16 bits at DS:SI+1000h mov eax, [si+300h] ;eax gets 32 bits at DS:SI+300h Mov [di+100h], al ;DS:DI+100h gets 8 bits in al opcode mod r/m displacement DI + SI effective address
- Chế độ đia chỉ cơ sở chỉ số tương ̣ ́ đôi Based Indexed Relative Addressing mov ax, [bp+di] ;ax gets 16 bits at SS:BP+DI mov ax, [di+bp] ;ax gets 16 bits at DS:BP+DI mov eax, [bx+si+10h] ;eax gets 32 bits at DS:BX+SI+10h mov cx, [bp+si-7] ;cx gets 16 bits at SS:BP+SI-7 opcode mod r/m displacement DI + SI BX + BP effective address
- Ví dụ về cac chế độ đia chỉ ́ ̣ Addressing Mode Examples mov al, bl ;8-bit register addressing mov di, bp ;16-bit register addressing Register mov eax, eax ;32-bit register addressing mov al, 12 ;8-bit immediate, al
- Ví dụ về cac chế độ đia chỉ ́ ̣ Addressing Mode Examples mov al, [si] ;al
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng kiến trúc máy tính - Phạm Tường Hải
24 p | 181 | 41
-
Bài giảng Kiến trúc máy tính và hợp ngữ: Chương 6 - ThS. Vũ Minh Trí
99 p | 144 | 18
-
Bài tập tuần lập trình C trên window
1 p | 129 | 11
-
Chương 3 “Lập trình hợp ngữ”
30 p | 55 | 11
-
Bài giảng Kiến trúc máy tính: Chương 3 - Phạm Hoàng Sơn
71 p | 83 | 6
-
Bài giảng Hệ nhúng: Chương 3 - Đỗ Công Thuần
66 p | 15 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn