Chuyển giá trị hằng số FFFFH vào thanh ghi AX; số 0 ở đầu được dùng để phân

Một phần của tài liệu Tài liệu GIỚI THIỆU CHUNG VỀ KIẾN TRÚC MÁY TÍNH pptx (Trang 25 - 27)

- Chuyển giá trị hằng số FFFFH vào thanhghi AX; số 0 ở đầu được dùng để phân ghi AX; số 0 ở đầu được dùng để phân biệt và chỉ rõ FFFFH là một giá trị hằng chứ không phải là một nhãn.

XCHG -exchange two operands (hoán đổi nội dung 2 toán hạng).

Trong đó toán hạng đích và nguồn có thể tìm được theo các chế độ địa chỉ khác nhau, nhưng phải 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.

Ví dụ:

XCHG AH, AL ; tráo nội dung AH và AL.

XCHG AL, [BX] ; tráo nội dung AL với ô nhớ có địa chỉ DS:BX.

IN- Input data from a port (Đọc dữ liệu từ cổng vào thanh Acc)

Viết lệnh: IN Acc, Port

Port là địa chỉ 8 bit của cổng, nó có thể có giá trị trong khoảng 00H..FFH. Nếu Acc là AL thì dữ liệu 8 bit được đưa vào từ cổng Port.

Nếu Acc là AX thì dữ liệu 16 bit được đưa vào từ cổng Port và Port+1.

Có thể biểu diễn địa chỉ cổng thông qua thanh ghi DX và như vậy địa chỉ cổng được địa chỉ hoá linh hoạt hơn. Lúc này địa chỉ cổng nằm trong dải 0000H..FFFFH và lệnh được viết như sau:

IN Acc, DX

Trong đó DX phải được gán từ trước giá trị ứng với cổng.

OUT- Output a byte or word to a port ( Đưa dữ liệu ra cổng từ Acc).

Viết lệnh: OUT Port, Acc

Nếu Acc là AL thì dữ liệu 8 bit được đưa ra cổng Por

Nếu Acc là AH thì dữ liệu 16 bit được đưa ra cổng Port và cổng Port+1. Tương tự với lệnh IN, ở đây cũng có thể dùng thanh ghi DX để chứa địa chỉ cổng. Khi đó lệnh được viết như sau:

OUT DX, Acc.

Thanh ghi DX phải được nạp địa chỉ cổng từ trước.

LEA (load effective address). Lệnh nạp địa chỉ hiệu dụng vào thanh ghi, nó không di chuyển nội dung chứa trong địa chỉ đó. Đây là lệnh để tính địa chỉ lệch hoặc địa chỉ của ô nhớ chọn làm gốc rồi nạp vào thanh ghi đã chọn.

Viết lệnh: LEA Đích, nguồn.

trong đó :

- Nguồn là tên biến trong đoạn DS được chỉ rõ trong lệnh hoặc ô nhớ cụ thể. Ví dụ:

LEA DX, MSG ; Nạp địa chỉ lệch của bản tin MSG vào DX.

LEA CX, [BX] [DI] ; Nạp vào CX địa chỉ hiệu dụng do ; BX và DI chỉ ra: EA=BX+DI.

PUSH/POP Thanh ghi ngăn xếp là nơi rất thuận tiện để cất giữ tạm dữ liệu và các toán hạng cần nhớ của chương trình. Ví dụ, một chương trình có thể muốn cất lại các nội dung trong thanh ghi AX để dùng trong một số thao tác sau này. Để thực hiện nhiệm vụ đó có thể dùng các lệnh PUSH POP.

Một phần của tài liệu Tài liệu GIỚI THIỆU CHUNG VỀ KIẾN TRÚC MÁY TÍNH pptx (Trang 25 - 27)