Kỹ thuật vi xử lý

251 23 0
Kỹ thuật vi xử lý

Đ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

VIỆN ĐẠI HỌC MỞ HÀ NỘI TS Nguyễn Hoàng Dũng (Chủ biên) TS Nguyễn Hoài Giang KỸ THUẬT VI XỬ LÝ NHÀ XUẤT BẢN GIÁO DỤC VIỆT NAM LỜI GIỚI THIỆU Cuốn "Kỹ thuật Vi xử lý" bao gồm kiến thức vi xử lý, hệ thống vi xử lý dùng làm giáo trình tài liệu tham khảo cho đối tượng lĩnh vực kỹ thuật điện, điện tử viễn thông Để nắm bắt nhanh hiệu nội dung sách người đọc cần có kiến thức tảng lĩnh vực điện tử số điện tử tương tự Nội dung sách bao gồm phần chủ yếu: giới thiệu chung hệ vi xử lý; giới thiệu hệ vi xử lý 8088/8086 hãng Intel; vấn đề ngắt xử lý ngắt vi xử lý Nội dung phân bố 05 chương với tập ôn tập cuối chương nhóm tác giả có kinh nghiệm giảng dạy lâu năm lĩnh vực biên soạn đảm bảo tính chất khoa học, thực tiễn phù hợp với đối tượng sử dụng:  Chương 1: Giới thiệu chung vi xử lý, hệ thống vi xử lý  Chương 2: Giới thiệu vi xử lý 8088/8086 hãng Intel  Chương chương 4: Giới thiệu lập trình ASEMBLY tổ chức vào liệu cho vi xử lý 8088/8086  Chương 5: Trình bày ngắt vấn đề ngắt vi xử lý Giáo trình hỗ trợ sinh viên học tập rèn luyện kỹ để nắm bắt giải vấn đề kỹ thuật có liên quan tới chuyên ngành qua xây dựng tác phong phương pháp học tập độc lập, có hiệu quả, gắn liền với thực tế thực hành Tuy nhiên, trình biên soạn khơng tránh khỏi thiếu sót tác giả mong muốn nhận ý kiến xây dựng từ bạn đọc gần xa, ý kiến đóng góp xin gửi địa chỉ: Khoa Cơng nghệ Điện tử Thông tin - Viện Đại học Mở Hà Nội Xin chân thành cảm ơn! CÁC TÁC GIẢ i DANH MỤC CÁC TỪ VIẾT TẮT MP Micro Processor Vi xử lý MC Micro Controller Vi điều khiển ALU Arithmetic and Logic Unit Bộ xử lý số học logic CU Control Unit Đơn vị điều khiển EU Excution Unit Đơn vị thực BIU Bus Interface Unit Đơn vị giao tiếp Bus ROM Read Only Memory Bộ nhớ đọc RAM Random Access Memory Bộ nhớ truy nhập ngẫu nhiên CPU Central Processing Unit Đơn vị xử lý trung tâm BIOS Basic Input Output System Hệ thống vào sở OS Operation System Hệ điều hành INT Interrupt Ngắt STI Set the Interrupt Flag Thiết lập cờ ngắt CLC Clear the Carry Flag Thiết lập cờ nhớ CLD Clear the Direction Flag Thiết lập cờ hướng CLI Clear the Interrupt Flag Xóa cờ ngắt RCL Rotate through Carry Flag to the Left Quay trái qua cờ nhớ RCL Rotate through Carry Flag to the Right Quay phải qua cờ nhớ SAL Shift Arithmetically Left Dịch trái số học SHL Shift left Dịch trái logic SAR Shift Arithmetically Right Dịch phải số học SHR Shift Right Dịch phải logic IRET Interrupt Return Trờ chương trình JA Jump if Above Nhảy lớn JNA Jump if Not Above Nhảy không lớn JE Jump if Equal Nhảy JNE Jump if Not Equal Nhảy không ii JB Jump if Below Nhảy nhỏ JNB Jump if Not Below Nhảy không nhỏ JG Jump if Greater Nhảy lớn (số có dấu) JNG Jump if Not Greater Nhảy không lớn JL Jump if Less Nhảy nhỏ (số có dấu) JNL Jump if Not Less Nhảy không nhỏ JC Jump if Carry Nhảy cờ C JNC Jump if Not Carry Nhảy cờ C JO Jump if Overflow Nhảy cờ O JNO Jump if Not Overflow Nhảy cờ O JP Jump if Parity Nhảy cờ P JNP Jump if Not Parity Nhảy cờ P JZ Jump if Zero Nhảy cờ Z JNZ Jump if Not Zero Nhảy cờ Z iii MỤC LỤC LỜI GIỚI THIỆU i DANH MỤC CÁC TỪ VIẾT TẮT ii MỤC LỤC iv CHƯƠNG GIỚI THIỆU CHUNG VỀ HỆ VI XỬ LÝ I CÁC HỆ THỐNG ĐẾM VÀ MÃ HĨA THƠNG TIN 1.1 Các hệ thống đếm 1.2 Các phép toán hệ số 1.3 Khoảng biểu diễn mã bù hai 1.4 Mã hóa thơng tin máy tính 1.5 Biểu diễn số thực dạng dấu phẩy động II LỊCH SỬ PHÁT TRIỂN CỦA CÁC BỘ VI XỬ LÝ 12 2.1 Thế hệ (1971 - 1973) 12 2.2 Thế hệ (1974 - 1977) 12 2.3 Thế hệ (1978 - 1982) 12 2.4 Thế hệ (1982 - 1995) 12 2.5 Thế hệ (1995 - nay) 13 III GIỚI THIỆU CHUNG VỀ BỘ VI XỬ LÝ VÀ HỆ VI XỬ LÝ 14 3.1 Bộ vi xử lý 14 3.2 Hệ vi xử lý 15 BÀI TẬP ÔN TẬP 19 CHƯƠNG BỘ VI XỬ LÍ INTEL 8088/8086 24 I CẤU TRÚC BÊN TRONG VI XỬ LÝ 8088/8086 25 1.1 Khối BIU, EU 25 1.2 Các ghi vi xử lý 8088/8086 27 II CÁC CHẾ ĐỘ ĐỊA CHỈ CỦA BỘ VI XỬ LÍ 8088 32 2.1 Các chế độ địa 32 2.2 Phương pháp ngầm định ghi đoạn 35 iv III CÁCH MÃ HĨA LỆNH CỦA BỘ VI XỬ LÍ 8088 36 IV TẬP LỆNH CỦA BỘ VI XỬ LÍ 8088 39 4.1 Nhóm lệnh chuyển liệu 40 4.2 Nhóm lệnh thực phép tính logic số học 47 4.3 Nhóm lệnh điều khiển chương trình 57 BÀI TẬP ÔN TẬP 63 CHƯƠNG LẬP TRÌNH HỢP NGỮ CHO VI XỬ LÝ 8088/8086 71 I GIỚI THIỆU CHUNG CỦA CHƯƠNG TRÌNH HỢP NGỮ 72 1.1 Cú pháp chương trình hợp ngữ 72 1.2 Dữ liệu cho chương trình 73 1.3 Biến 73 1.4 Khung chương trình hợp ngữ 76 II CÁCH TẠO VÀ CHẠY MỘT CHƯƠNG TRÌNH HỢP NGỮ TRÊN MÁY IBM PC 80 III CÁC CẤU TRÚC LẬP TRÌNH CƠ BẢN THỰC HIỆN BẰNG HỢP NGỮ 81 3.1 Cấu trúc điều kiện 81 3.2 Cấu trúc lựa chọn 82 3.3 Cấu trúc lặp 83 IV GIỚI THIỆU CHƯƠNG TRÌNH EMU 8086 85 4.1 Giới thiệu chương trình EMU8086 85 4.2 Một số lệnh 86 Lệnh NEG 87 4.3 Các lệnh số học 87 4.4 Các lệnh logic, lệnh nhảy 88 4.4.1 Các lệnh logic 88 4.4.2 Các lệnh JUMP 90 4.5 Các lệnh dịch lệnh quay 91 4.6 Lệnh LOOP (lặp) ngôn ngữ assembly 93 4.7 Ngăn xếp, chương trình con, mảng liệu 93 BÀI TẬP ÔN TẬP 99 v CHƯƠNG 4.TỔ CHỨC VÀO RA DỮ LIỆU CHO VI XỬ LÝ 8088/8086 115 I SƠ ĐỒ CHÂN TÍN HIỆU 8088 116 II GIỚI THIỆU CÁC MẠCH PHỤ TRỢ CHO VI XỬ LÝ 8088 120 2.1 Mạch tạo xung nhịp 8284 120 2.2 Mạch tạo tín hiệu điều khiển bus 8288 121 III Cấu trúc nhớ bán dẫn 123 3.1 Bộ nhớ bán dẫn 123 3.2 Cấu trúc nhớ bán dẫn 124 IV GHÉP NỐI VI XỬ LÝ 8088/80886 VÀ GIẢI MÃ ĐỊA CHỈ BỘ NHỚ 128 4.1 Ghép nối vi xử lý 8088 với nhớ 128 4.2.Ghép nối vi xử lí 8086 với nhớ 134 V GHÉP NỐI 8088 VỚI THIẾT BỊ NGOẠI VI 139 5.1 Các phương pháp điều khiển vào liệu 139 5.2 Giải mã địa cho thiết bị vào 140 5.3 Các mạch cổng đơn giản 141 5.4 Mạch ghép nối vào song song lập trình 8255A 141 BÀI TẬP ÔN TẬP 152 CHƯƠNG NGẮT VÀ XỬ LÝ NGẮT CHO VI XỬ LÝ 8088 162 I GIỚI THIỆU CHUNG VỀ NGẮT 163 1.1 Giới thiệu 163 1.2 Các loại ngắt hệ 8088 163 1.3 Đáp ứng cpu có yêu cầu ngắt 164 1.4 Xử lý ưu tiên ngắt 165 II MẠCH ĐIỀU KHIỂN NGẮT 8259A 166 2.1 Chức 8259A 166 2.2 Ghép nối với 8088 168 2.3 Lập trình cho 8259 169 2.4 Một số ví dụ lập trình với 8259A 176 BÀI TẬP ÔN TẬP 178 vi TÀI LIỆU THAM KHẢO 183 PHỤ LỤC ĐÁP ÁN BÀI TẬP ÔN TẬP 184 I Đáp án chương I 184 II Đáp án chương II 186 III Đáp án chương III 186 IV Đáp án chương IV 193 V Đáp án chương V 199 PHỤ LỤC CÁC BÀI TẬP ỨNG DỤNG TRÊN EMU8086 200 PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN 203 vii CHƯƠNG GIỚI THIỆU CHUNG VỀ HỆ VI XỬ LÝ Chương xây dựng giúp cho người đọc nắm kiến thức chung Kỹ thuật Vi xử lý, bao gồm kiến thức hệ thống đếm, cách thức chuyển đổi hệ thống đếm, cách mã hóa, lịch sử phát triển vi xử lý kiến thức khái quát đặc điểm, cấu trúc, hoạt động hệ vi xử lý MỤC TIÊU CHƯƠNG NỘI DUNG CHƯƠNG Mang lại kiến thức hệ thống đếm thông dụng cách mã hóa Giới thiệu lịch sử phát triển vi xử lý theo giai đoạn Giúp người đọc hiểu đặc điểm, cấu trúc, hoạt động vi xử lý, hệ vi xử lý I Các hệ thống đếm phương pháp mã hóa thơng tin máy tính II Lịch sử phát triển vi xử lý III Giới thiệu chung vi xử lý hệ vi xử lý Bài tập ôn tập THUẬT NGỮ QUAN TRỌNG TÀI LIỆU THAM KHẢO micro processor, MP, vi xử lý, micro controller, MC, vi điều khiển, control unit, CU, xử lý trung tâm, arithmetic and logic unit, ALU, xử lý số học,american standard code for information interchange (ASCII), first in first out, FIFO, read only memory, ROM, random access memory, RAM 1) Barry B Brey, The Intel MicroProcessors 32 bit Prentice-Hall 1995 (Chapter 1, 2) 2) Văn Thế Minh, Kỹ thuật vi xử lý Nhà xuất Giáo dục 1997 (Chương 1, 2) 3) Nguyễn Duy Bảo, Lê Xuân Bằng, Kỹ thuật vi xử lý (phần sở) Hà Nội 2002 (Chương 1, 2) CHƯƠNG GIỚI THIỆU CHUNG VỀ HỆ VI XỬ LÝ I CÁC HỆ THỐNG ĐẾM VÀ MÃ HĨA THƠNG TIN 1.1 Các hệ thống đếm Hệ thống đếm tổ hợp quy tắc gọi biểu diễn số chữ số có giá trị số lượng xác định Tùy theo chữ số dùng để biểu diễn hệ thống đếm chia thành loại:  Hệ thống đếm khơng có thứ tự: Hệ thống đếm La mã: I, II, III, IV, …, XXIX, v v  Hệ thống đếm có thứ tự: Hệ thống đếm Ả rập: 0, 1, 2, 3, 4, v v.Tùy theo hệ đếm khác màbiểu diễn khác Ví dụ hệ thập phân (Decimal), hệ nhị phân (Binary), hệ bát phân (Octal), hệ thập lục phân (Hexa) Lưu ý: Trong hai loại hệ thống đếm tính tốn thường dùng hệ đếm có thứ tự 1.1.1 Hệ thập phân (hệ số 10) Hệ thập phân (hay gọi hệ số 10) thường sử dụng đời sống hàng ngày người Hệ thập phân dùng 10 số từ đến để biểu diễn giá trị Dạng tổng quát biểu diễn số D hệ thập phân sau: d: digit (chữ số) ≤ d ≤ 𝑚−1 𝐷 = ∑𝑖=−𝑛 10𝑖 𝑑𝑖 m: Số chữ số trước dấu phẩy n: số chữ số sau dấu phẩy Ví dụ: 1956,201310 = 1.103 + 9.102 +5.101 + 6.100 + 2.10-1 + 0.10-2+ 1.10-3 + 3.10-4 1.1.2 Hệ nhị phân (hệ số 2) Máy tính xây dựng từ hệ thống mạch điện tử nên tồn hai trạng thái ON (đóng mạch) OFF (hở mạch) Chính nhờ đặc điểm nên hệ nhị phân (hay gọi hệ số 2) sinh sử dụng để mã hóa thơng tin máy tính Hệ nhị phân dùng số để biểu diễn giá trị Dạng tổng quát biểu diễn số B hệ nhị phân sau: d: digit (chữ số) ≤ d ≤ 𝑚−1 𝐵 = ∑ 2𝑖 𝑑 𝑖 𝑖=−𝑛 m: Số chữ số trước dấu phẩy n: số chữ số sau dấu phẩy PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN POPA/POPADPop all registers from stack 01100001 Examples POPA POPAD POPF/POPFD 10010000 Examples POPF POPFD OUTS 011011w Format OUTSB OUTSW OUTSD POP 01011rrr Format POP reg 229 Clocks 19 24 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 12 5 or Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 14 10 13-27 Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks 12 1 Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks 17 + ea 25 + ea 5 Pop flags from stack output string to port Examples OUTSB OUTSW OUTSD OUTS DATA2 REP OUTSB Pop data from stack Examples POP CX POP AX POP EDI 10001111oo000mmmdisp Format Examples POP mem POP DATA1 POP LISTS POP NUMBS 00sss111 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN Format POP seg 0000111110sss001 Format POP seg POPA/POPAD 01100001 Examples POPA POPAD Examples POP DS POP ES POP SS Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks 12 3 Examples POP FS POP GS Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks 3 Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks 19 24 Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks 12 5 or Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks 11 15 1 Microprocessors 8086 Clocks 16 + ea Pop all register from stack POPF/POPFD Pop flags from stack 10010000 Examples POPF POPFD PUSH 01010rrr Format PUSH reg Push data onto stack Examples PUSH CX PUSH AX PUSH EDI 11111111oo110mmmdisp Format Examples PUSH mem PUSH DATA1 230 PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN 00ss110 Format PUSH seg 00001111 10sss000 Format PUSH seg 011010s0 data Format PUSH imm PUSH LISTS PUSH NUMBS 8088 80286 80386 80483 Pentium Pentium Pro 24 + ea 5 or Examples PUSH ES PUSH CS PUSH DS Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks 10 14 3 Examples PUSH FS PUSH GS Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks Examples PUSH 2000H PUSH 53220 PUSHW 10H PUSHD 100000H Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks 1 Microprocessors 8086 8088 80286 80386 80483 Pentium Pentium Pro Clocks 17 18 11 Microprocessors 8086 8088 80286 80386 Clocks 10 14 PUSHA/PUSHAD Push all register onto stack 01100000 Format PUSHA PUSHAD PUSHF/PUSHFD Push flag onto stack 01100000 Format PUSHF PUSHFD 231 PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN PUSHF/PUSHFD 10011100 Format PUSHF PUSHFD 80483 Pentium Pentium Pro 3 or Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 10 14 3 or Put flags onto stack RCL/RCR/ROL/ROR Rotate 1101000w ooTTTmmm disp TTT = 000 = ROL, TTT = 001 = ROR, TTT = 010 = RCL, and TTT = 011 = RCR Format Examples Microprocessors Clocks ROL reg, ROL CL, 8086 ROR reg, ROL DX, 8088 ROR CH, 80286 ROR SI, 80386 80486 Pentium or Pentium Pro RCL reg, RCL CL, 8086 RCR reg, RCL SI, 8088 RCR AH, 80286 RCR EBX, 80386 80486 Pentium or Pentium Pro ROL mem, ROL DATAY, 8086 15 + ea ROR mem, ROL LIST, 8088 23 + ea ROR DATA2[DI], 80286 ROR BYTE PTR [EAX], 80386 80486 Pentium or Pentium Pro RCL mem, RCL DATA1, 8086 15 + ea RCR mem, RCL LIST, 8088 23 + ea RCR DATA2[SI], 80286 RCR WORD PTR [ESI], 80386 10 80486 Pentium or Pentium Pro 1101001w ooTTmmm disp Format Examples Microprocessors Clocks ROL reg, CL ROL CH, CL 8086 + 4n ROR reg, CL ROL DX, CL 8088 + 4n ROR AL, CL 80286 5+n 232 PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN ROR ESI, CL RCL reg, CL RCR reg, CL RCL CH, CL RCL SI, CL RCR AH, CL RCR EBX, CL ROL mem, CL ROR mem, CL ROL DATAY, CL ROL LIST, CL ROR DATA2[DI], CL ROR BYTE PTR [EAX], CL RCL mem, CL RCR mem, CL RCL DATA1, CL RCL LIST, CL RCR DATA2[SI], CL RCR WORD PTR [ESI], CL 1101001w ooTTmmm disp data Format Examples ROL reg, imm ROL CH, ROR reg, imm ROL DX, ROR AL, ROR ESI, 14 RCL reg, imm RCR reg, imm RCL CL, RCL SI, 12 RCR AH, RCR EBX, 18 ROL mem, imm ROL DATAY, ROR mem, imm ROL LIST, ROR DATA2[DI], ROR BYTE PTR [EAX], 11 RCL mem, imm RCR mem, imm 233 RCL DATA1, RCL LIST, 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro 3 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 Clocks 5+n or + 4n + 4n 5+n 4 20 + 4n 28 + 4n 8+n 10 9 – 26 20 + 4n 28 + 4n 8+n 10 9 - 26 5+n 8 – 27 8+n or - PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN RCR DATA2[SI], RCR WORD PTR [ESI], RDMSR Read model specific registers 00001111 00110010 Format RDMSR REP Repeat prefix 11110011 1010010w Format Examples REP MOVS REP MOVSB REP MOVSW REP MOVSD REP MOVS DATA1, DATA2 11110011 1010101w Format Examples REP STOS REP STOSB REP STOSW REP STOSD REP STOS ARRAY 11110011 0110110w Format Examples REP INS REP INSB REP INSW REP INSD REP INS ARRAY 11110011 0110111w Format Examples REP OUTS REP OUTSB REP OUTSW REP OUTSD REP OUTS ARRAY 234 80286 80386 80486 Pentium Pentium Pro 8+n 10 - 27 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks -20 - 24 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks + 17n + 25n + 4n + 4n 12 + 3n 13 + n Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks + 10n + 14n + 3n + 5n + 4n 9+n Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks + 4n 12 + 5n 17 + 5n 25 + 3n Microprocessors 8086 8088 80286 80386 80486 Clocks + 4n 12 + 5n 17 + 5n PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN RET Return from procedure 11000011 Format RET (near) 11000010 data Format RET imm (near) Examples RET RET 100H 11001011 Format RET (far) 11001010 data Format RET imm (far) Examples RET RET 100H Pentium Pentium Pro 25 + 4n Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 16 20 11 10 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 20 24 11 10 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 26 34 15 18 13 - 23 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 25 33 11 10 - 23 RSM Resume for system management mode 00001111 10101010 Format Microprocessors RSM 8086 8088 80286 80386 80486 Pentium Pentium Pro SAHF Store AH into flags 235 Clocks -83 PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN 10011110 Format SAHF SAL/SAR/SHL/SHRShift Format Examples SAL reg, SAL CL, SHL reg, SHL DX, SHR reg, SAR CH, SAR reg, SHR SI, SAL mem, SHL mem, SHR mem, SAR mem, SAL DATA1, SHL BYTE PTR[DI], SAR NUMB, SHR WORD PTR[ED], 1101001w ooTTTmmm disp Format Examples SAL reg,CL SAL CH, CL SHL reg,CL SHL DX, CL SAR reg,CL SAR AL, CL SHR reg,CL SHR ESI, CL SAL reg,CL SHL reg,CL SAR reg,CL SHR reg,CL SAL DATAU, CL SHL BYTE PTR[ESI],CL SAR NUMB, CL SHR TEMP,CL 1100000w ooTTTmmm disp data Format Examples SAL reg,imm SAL CH,4 SHL reg,imm SHL DX,10 SAR reg,imm SAR AL,2 SHR reg,imm SHR ESI,23 236 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 4 2 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 2 3 or Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks + 4n + 4n 5+n 3 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 5+n or 15 + ea 23 + ea 7 or 20 + 4n 28 + 4n 8+n 4 PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN SAL mem,imm SHL mem,imm SAR mem,imm SHR mem,imm SAL DATAU,3 SHL BYTE PTR[ESI],15 SAR NUMB,3 SHR TEMP,5 SBBSubtract with borrow 000110dw oorrrmmm disp Format Examples SBB reg,reg SBB CL,DL SBB AX,DX SBB CH,CL SBB EAX,EBX SBB ESI,EDI SBB mem,reg SBB DATAJ,CL SBB BYTES,CX SBB NUMBS,ECX SBB [EAX],CX SBB reg,mem SBB CL,DATAL SBB CX,BYTES SBB ECX,NUMBS SBB DX,[EBX+EDI] 100000sw oo011mmm disp data Format Examples SBB reg,imm SBB CX,3 SBB DI,1AH SBB DL,34H SBB EDX,1345H SBB CX,1834H SBB mem,imm 0001110w data Format SBB acc,imm 237 SBB, DATAS,3 SBB BYTEPTR[EDI],1AH SBB DADDY,34H SBB LIST,’A’ SBB TOAD,1834H Examples SBB AX,3 8086 8088 80286 80386 80486 Pentium Pentium Pro 8+n or Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 3 2 1 or Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 4 1 or Microprocessors 8086 Clocks 16 + ea 24 + ea or + ea 13 + ea 7 or 17 + ea 25 + ea 7 or PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN SBB AL,1AH SBB AH,34H SBB EAX,1345H SBB AL,’Y’ SCAS Scan string 1010111w Format Examples SCASB SCASB SCASW SCASW SCASD SCASD SACS DATAF REP SACSB SETconditionConditional set 00001111 1001cccc oo000mmm Format Examples SETcnd reg8 SETA BL SETB CH SETG DL SETE BH SETZ AL SETcnd mem8 SETE DATAK SETAE LESS_OR_SO Condition Code Mnemonic 0000 SET0 0001 DETNO 0010 SETB/SETAE 0011 SETAE/SETNB 0100 SETE/SETZ 0101 SETNE/SETNZ 0110 SETBE/SETNA 0111 SETA/SETNBE 1000 SETS 1001 SETNS 1010 SETP/SETPE 1011 SETNP/SETPO 1100 SETL/SETNGE 1101 SETGE/SETNL 1110 SETLE/SETNG 238 Flag O=1 O=0 C=1 C=0 Z=1 Z=0 C=1+Z=1 C=0*Z=0 S=1 S=0 P=1 P=0 S*O S=0 Z=1+S*O 8088 80286 80386 80486 Pentium Pentium Pro 1 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 15 19 7 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks or or Description Set if overflow Set if no overflow Set if below Set if above or equal Set if equal/zero Set if not equal/zero Set if below or equal Set if above Set if sign Set if no sign Set if parity Set if no parity Set if less than Set if greater than or equal Set if less than or equal PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN 1111 SETG/SETNLE Z=0+S=O STD 11111101 Format STD Set direction flag STI 11111011 Format STI Set interrupt flag SUB Subtract 000101dw oorrrmmm disp Format Examples SUB reg,reg SUB CL,DL SUB AX,DX SUB CH,CL SUB EAX,EBX SUB ESI,EDI SUB mem,reg SUB DATAJ,CL SUB BYTES,CX SUB NUMBS,ECX SUB [EAX],CX SUB reg,mem SUB CL,DATAL SUB CX,BYTES SUB ECX,NUMBS SUB DX,[EBX+EDI] 100000sw oo101mmm disp data Format Examples SUB reg,imm SUB CX,3 SUB DI,1AH 239 Set if greater than Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 2 2 2 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 2 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 3 2 1 or Microprocessors 8086 8088 Clocks 4 16 + ea 24 + ea or + ea 13 + ea 7 or PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN SUB DL,34H SUB EDX,1345H SUB CX,1834H SUB mem,imm 0010110w data Format SUB acc,imm SUB DATAS,3 SUB BYTE PTR[EDI],1AH SUB DADDY,34H SUB LIST,’A’ SUB TOAD,1834H Examples SUB AL,3 SUB AX,1AH SUB EAX,34H TEST Test operands (logical compare) 1000001w oorrrmmm disp Format Examples TESTreg,reg TEST CL,DL TEST BX,DX TEST DH,CL TEST EBP,EBX TEST EAX,EDI TEST mem,reg reg,mem TEST DATAJ,CL TEST BYTES,CX TEST NUMBS,ECX TEST [EAX],CX TEST CL,POPS 1111011 sw oo000mmm disp data Format Examples TESTreg,imm TEST BX,3 TEST DI,1AH TEST DH,44H TEST EDX,1AB345H TEST SI,1834H TEST mem,imm 240 TEST DATAS,3 TEST BYTE PTR[EDI],1AH 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro 1 or Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 4 1 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 5 2 1 or Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 Clocks 4 1 or 17 + ea 25 + ea 7 or 9+ ea 13+ea or 11+ea 11+ea PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN 1010100w data TEST acc,imm WAIT 10011011 Format WAIT FWAIT TEST DADDY,34H TEST LIST,’A’ TEST TOAD,1834H 80286 80386 80486 Pentium Pentium Pro or TEST AL,3 TEST AX,1AH TEST EAX,34H 8086 8088 80286 80386 80486 Pentium Pentium Pro 4 1 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 4 6 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 4 3 3 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 3 3 Wait for coprocessor XCHG Exchange 1000011w oorrrmmm Format Examples XCHGreg,reg XCHG CL,DL XCHG BX,DX XCHG DH,CL XCHG EBP,EBX XCHG EAX,EDI XCHGmem,reg reg,mem 10010reg Format XCHGacc,reg reg,acc 241 XCHG DATAJ,CL XCHG BYTES,CX XCHG NUMBS,ECX XCHG [EAX],CX XCHG CL,POPS Examples XCHG BX,AX XCHG AX,DI XCHG DH,AL XCHG EDX,EAX XCHG SI,AX 17+ ea 25+ ea 5 PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN XLAT Translate 11010111 Format XOR Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 11 11 4 Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 3 2 1 or Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro 8086 8088 80286 Clocks 4 1 or Exclusive-OR 000110dw oorrrmmm disp Format XOR reg,ref Example XOR CL,DL XOR AX,DX XOR CH,CL XOR EAX,EBX XOR ESI, EDI XOR mem,reg XOR DATAJ,CL XOR BYTES,CX XOR NUMBS,ECX XOR [EAX],CX XOR reg,mem XOR CL,DATAL XOR CX,BYTES XOR ECX,NUMBS XOR DX,[EBX+EDI] 16 + ea 24 + ea or + ea 13 + ea 7 or 100000sw oo110mmm disp data Format XOR reg,imm Example XOR CX,3 XOR DI,1AH XOR DL,34H XOR EDX,1345H XOR CX,1834H XOR mem,imm XOR DATAS,3 XOR BYTE PTR[ED],1AH XOR DADDY, 34H 242 17 + ea 25 + ea PHỤ LỤC CÁC LỆNH HỢP NGỮ CƠ BẢN 0010101w data Format XOR acc,imm 243 XOR LIST,’A’ XOR TOAD,1834H 80386 80486 Pentium Pentium Pro or Example XOR AL,3 XOR AX,1AH XOR EAX,34H Microprocessors 8086 8088 80286 80386 80486 Pentium Pentium Pro Clocks 4 1 ... bit c Vi xử lý 16 bit d Vi xử lý 32 bit Công nghệ chế tạo vi xử lý hệ (1971 – 1973) là: a PMOS b NMOS, CMOS c HMOS d HCMOS 10 Đặc trưng vi xử lý hệ (1974 – 1977) là: a Vi xử lý bit b Vi xử lý bit... 1982) là: a Vi xử lý bit b Vi xử lý bit c Vi xử lý 16 bit d Vi xử lý 32 bit 13 Công nghệ chế tạo vi xử lý hệ (1978 – 1982) là: a PMOS b NMOS, CMOS c HMOS d HCMOS 14 Đặc trưng vi xử lý hệ (1982... 1985) là: a Vi xử lý bit b Vi xử lý bit c Vi xử lý 16 bit d Vi xử lý 32 bit 15 Công nghệ chế tạo vi xử lý hệ (1982 – 1985) là: a PMOS b NMOS, CMOS c HMOS d HCMOS 16 Đặc trưng vi xử lý hệ (1985

Ngày đăng: 07/06/2020, 23:09

Từ khóa liên quan

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

Tài liệu liên quan