TES T And Operands to Update Flag ( và 2 tốn hạng để tạo cờ)

Một phần của tài liệu Vi xử lý máy vi tính - Chương 3 pps (Trang 52 - 55)

Viết lệnh : TEST Đích,Gốc.

Mơ tả : Đích ∧ Gốc

Trong đĩ tốn hạng đích và gốc cĩ thể tìm được theo các chế độ địa chỉ khác nhau, nhưng phải chứa dữ liệu cĩ cùng độ dài và khơng được phép đồng thời là 2 ơ nhớ và cũng khơng được là thanh ghi đoạn. Sau lệnh này các tốn hạng khơng bị thay đổi và kết quả khơng được lưu giữ. Các cờ được tạo ra sẽ được dùng làm điều kiện cho các lệnh nhảy cĩ điều kiện. Lệnh này cũng cĩ tác dụng che như một mặt nạ.

Xố : CF, OF.

Cập nhật : PF, SF, ZP (PF chỉ liên quan đến 8 bit thấp). Khơng xác định : AF.

Ví dụ :

TEXT AH,01H ; bit 0 của AH bằng 0 TEXT BP, [BX] [DI] ; và BP với ơ nhớ do

; BX + DI chỉ ra trong ; vùng dữ liệu DS

WAIT - Wait for TEST or INTR Signal (chờ tín hiệu từ chân TEXT hoặc INTR)

Mơ tả :

Lệnh này đưa bộ xử lý 8088 vào trạng thái nghĩ và nĩ sẽ mang lại trạng thái này cho tới khi cĩ tín hiệu ở mức thấp tác động vào chân TEXT hoặc khi cĩ tín hiệu cao tác động vào chân INTR. Nếu cĩ yêu cầu ngắt và yêu cầu này được phép tác động trong khi 8088 đang ở trạng thái nghĩ thì sau khi thực hiện CTPVN nĩ lại quay lại trạng thái nghĩ. Lệnh này dùng để đồng bộ hoạt động của 8088 và các bộ phận bên ngồi như bộ xử lý tốn học 8087.

Lệnh này khơng tác động đến các cờ.

XCHG - Exchange 2 Operands ( tháo nội dung hai tốn hạng)

Viết lệnh : XCHG Đích,Gốc

Mơ tả : Đích ↔ Gốc

Trong đĩ tốn hạng đích và gốc cĩ thể tìm được theo các chế độ địa chỉ khác nhau, nhưng phải chứa dữ liệu cĩ cùng độ dài và khơng được phép đồng thời là 2 ơ nhớ và cũng khơng được là thanh ghi đoạn. Lệnh XCHG tốn hạng này chứa nội dung cũ của tốn hạng kia và ngược lại.

Lệnh này khơng tác động đến các cờ. Ví dụ :

XCHG AH,AL ; tráo nội dung AH và AL XCHG AX,BX ; tráo nội dung của AX và BX XCHG AL, Table[BX] ; tráo nội dung AL với ơ nhớ cĩ

; địa chỉ Table [BX] trong vùng ; dữ liệu DS

XLAT - Translate a byte in AL ( Đổi nội dung AL theo bảng cho trước)

Viết lệnh : XLAT

Mơ tả : AL ← {AL + BX}

Lệnh này dùng để 8 bit hoặt ít hơn từ mã này ( gốc) sang mã khác (đích) theo một bảng tra cho sẵn trước khi thực hiện lệnh đổi, bảng tra phải chứa các

mã đích và BX phải chứa địa chỉ lệnh của bảng này trong đoạn dữ liệu. Cịn mã gốc (cần đổi) phải được chứa trong AL. khi chạy lệnh XLAT thì phép cộng AL + BX phải được thực hiện để tạo ra địa chỉ ơ nhớ trong bảng so mà nội dung của nĩ sẽ được cách trở lại vào thanh ghi AL.

Lệnh này khơng tác động đến các cờ. AL 0000H AL 0000H ⊕ 0123H 0123H 0124H 0124H BX BX

XOR - Exclusive Or Corresponding Bits of two Operands ( hoặc loại trừ hai tốn hạng)

Viết lệnh : XOR Đích,Gốc

Mơ tả : Đích ← Đích ⊕ Gốc

Trong đĩ tốn hạng đích và gốc cĩ thể tìm được theo các chế độ địa chỉ khác nhau, nhưng phải chứa dữ liệu cĩ cùng độ dài và khơng được phép đồng thời là 2 ơ nhớ và cũng khơng được là thanh ghi đoạn. Từ tính chất của phép hoặc loại trừ ta thấy nếu tốn hạng đích trùng với tốn hạng gốc thì kết quả bằng 0, do đĩ lệnh này cịn được dùng để xố về 0 một thanh ghi nào đĩ và kèm theo các cờ CF và OF cũng bị xố.

Cập nhật : PF, SF, ZP, PF chỉ cĩ nghĩa khi tốn hạng là 8 biit. Khơng xác định : AF.

Ví dụ :

XOR AL,BL ; AL ← AL ⊕ BL theo từng bit một XOR BH,BH ; xố BH, xố CF và OF.

Trên đây ta đã giới thiệu qua tấc cả các lệnh cĩ trong tập lệnh của bộ vi xử lý 8086/88. Mặc dù trong thực tế lập trình nhiều khi ta khơng sử dụng hết được

23H0100H 0100H FF FFH 0100H FF

tất cả các lệnh trong tập lệnh này. Tập lệnh này của bộ vi xử lý cao cấp hơn trong họ 80x86 ngồi những lệnh này cịn bao gồm những lệnh khác nữa.

Ta cĩ thể coi đây là một ví dụ về một tập lệnh của một bộ vi xử lý dùng để chế tạo ra máy tính với tập lệnh đầy đủ (Complex instruction set computer CISC) với đặc trưng là : cĩ rất nhiều lệnh với các chế độ địa chỉ rất đa dạng, các lệnh cĩ độ dài khác nhau và thời gian thực hiện cũng khác nhau. Bộ vi xử lý vì thế thường cĩ cấu trúc rất phức tạp. Thế mà trên thực tế, trong các chương trình hợp ngữ để giải quyết các cơng việc cụ thể, thường cĩ nhiều lệnh được dùng với tần suất lớn nhưng cũng cĩ những lệnh rất ít khi hoặc thậm chí khơng hề được sử dụng. Đây cũng chính là lý do để các nhà sản xuất cho ra đời các bộ vi xử lý cĩ cấu trúc cãi tiến theo hướng đơn giản hố với tập lệnh lệnh rất hữu dụng ( cĩ số lệnh ít hơn với chế độ địa chỉ đơn giản, các lệnh cĩ độ dài thống nhất và cĩ thời gian thực hiện như nhau) nhưng laijcos khả năng thực hiện lệnh nhanh hơn gấp bội so với loại CISC. Đĩ là các bộ vi xử lý dùng làm CPU cho các máy tính với tập lệnh rút gọn (Redduced instruction set computer, RISC).

Một phần của tài liệu Vi xử lý máy vi tính - Chương 3 pps (Trang 52 - 55)