Lệnh sao chép dữ liệu, địa chỉ:

Một phần của tài liệu Bài giảng lập trình hệ thống assembly (Trang 42)

1. MOV - Di chuyển dữ liệu

Cú pháp: MOV Đích, Nguồn

MOV SegReg, Reg16 MOV Reg16, SegReg

Nguồn (toán hạng nguồn) : Reg, Mem, Immed.

Ý nghĩa: Sao chép dữ liệu (xác định bởi toán hạng nguồn) vào vùng nhớ hoặc thanh

ghi (xác định bởi toán hạng đích). Sau khi thực hiện xong thì giá trị toán hạng nguồn và toán hạng đích bằng nhau.

Lưu ý: - Lệnh MOV không ảnh hưởng đến thanh ghi trạng thái.

- Một trong hai toán hạng phải là thanh ghi.

Ví dụ: MOV CX, BX ; Sao chép nội dung thanh ghi BX vào thanh ghi CX. Sau

khi thực hiện xong, BX=CX. MOV DX, 1234h ; DL ← 34h, DH ← 12h MOV DS, AX ; DS ← AX

MOV AH, [1234h] ; AH ← M[DS:1234h]

MOV [1235h], DX ; M[DS:1235h] ← DL, M[DS:1236h] ← DH MOV AH, CX ; SAI vì AH có 8 bit trong khi CX là 16 bit.

Bộ Nhớ DS:1237h DS:1236h DS:1235h DX DH DL DS:1234h Hình 3.1: Mô tả lệnh MOV [1235h], DX

Hình 3.1 mô tả cách sao chép dữ liệu 16 bit giữa thanh ghi và ô nhớ. Byte thấp của dữ liệu trong DX (là DL) đưa vào ô nhớ địa chỉ thấp (DS:1235h), còn byte cao trong DX (là DH) đưa vào ô nhớ có địa chỉ cao hơn (DS:1236h)

2. XCHG – Hoán chuyển dữ liệu

Cú pháp: XCHG Đích, Nguồn ; Đích ↔ Nguồn

Nguồn, đích: Reg, Mem.

Ý nghĩa: Lệnh XCHG hoán chuyển dữ liệu giữa nguồn và đích. Cả hai toán hạng

không đồng thời là Mem.

Ví dụ: XCHG AL, BH ; AL ↔ BH

XCHG AX, [1235h] ; AL ↔ M[DS:1235h], AH ↔ M[DS:1236h] XCHG bienA, bienB ; SAI vì bienA và bienB đều là vùng nhớ. 3. LEA - Lấy địa chỉ độ dời

Cú pháp: LEA Reg16, Mem16 ; Reg16 ← Địa chỉ độ dời

Ý nghĩa: Lấy địa chỉ độ dời của biến hay nhãn (mem16) đưa vào thanh ghi đích Reg16.

Ví dụ: LEA DX, bienA ; Lấy độ dời của biến bienA lưu vào DX

Theo hình 3.1, bienA được cấp phát tại vùng nhớ có địa chỉ độ dời là 1A2Bh, sau khi thực hiện lệnh thì thanh ghi DX = 1A2Bh.

Bộ Nhớ Địa Chỉ

DS:1A2C6h

bienA→ DS:1A2Bh

DX 1Ah 2Bh DS:1A2Ah

Hình 3.2: Mô tả lệnh LEA DX, bienA

Một phần của tài liệu Bài giảng lập trình hệ thống assembly (Trang 42)

Tải bản đầy đủ (PDF)

(117 trang)