Nhĩm lệnh xử lý chuỗ

Một phần của tài liệu vi xu ly thay tung (Trang 62)

CX LOOP, LOOPE, LOOPNE

7.4.Nhĩm lệnh xử lý chuỗ

7. Tập lệnh hợp ngữ

7.4.Nhĩm lệnh xử lý chuỗ

Bao gồm các lệnh sau:

- Lệnh MOVS: chuyển dữ liệu từ vùng nhớ này sang vùng nhớ khác.

+ MOVSB: chuyển 1 byte từ vị trí chỉđến bởi SI đến vị trí chỉ bởi DI. Nếu DF = 0 thì SI ← SI + 1, DI ← DI + 1 cịn nếu DF = 1 thì SI ← SI - 1, DI ← DI - 1.

+ MOVSW: chuyển 1 word từ vị trí chỉ đến bởi SI đến vị trí chỉ bởi DI. Nếu DF = 0 thì SI ← SI + 2, DI ← DI + 2 cịn nếu DF ← 1 thì SI ← SI - 2, DI ← DI - 2. - Lệnh CMPS: so sánh nội dung 2 vùng nhớ + CMPSB: so sánh 1 byte tại vị trí chỉ đến bởi SI và tại vị trí chỉ bởi DI. Nếu DF = 0 thì SI ← SI + 1, DI ← DI + 1 cịn nếu DF ← 1 thì SI ← SI - 1, DI ← DI - 1. + CMPSW: so sánh 1 word tại vị trí chỉđến bởi SI và tại vị trí chỉ bởi DI. Nếu DF = 0 thì SI ← SI + 2, DI ← DI + 2 cịn nếu DF = 1 thì SI ← SI - 2, DI ← DI - 2. - Lệnh SCAS: tìm một phần tử trong vùng nhớ, địa chỉ vùng nhớ xác định bằng cặp thanh ghi ES:DI, giá trị cần tìm đặt trong thanh ghi AL, nếu tìm thấy thì ZF = 1. Giá trị của DI và SI thay đổi giống như trên.

- Lệnh LODS: đưa một byte hay word cĩ địa chỉ xác định bởi cặp thanh ghi DS:SI vào thanh ghi AL hay AX. Giá trị của DI và SI thay đổi giống như trên.

- Lệnh STOS: chuyển nội dung của AL hay AX vào vùng nhớ xác định bởi cặp thanh ghi ES:DI. Giá trị của DI và SI thay đổi giống như trên.

Một phần của tài liệu vi xu ly thay tung (Trang 62)