Nhắc lại Assembly

Một phần của tài liệu bảo mật máy tính và mạng (Trang 67 - 71)

Cấu trúc chung một chương trình Assembly: (xem [17]) Segment_Name SEGMENT

Segment_Name ENDS END

Một số lệnh cơ bản:

1. Lệnh truyền (di chuyển) dữ liệu MOVđích, nguồn

Ví dụ: MOV AX, BX MOV AX, [100]

1. Lệnh lôgic và số học

ADDtoán hạng đích, toán hạng nguồn

ADCtoán hạng đích, toán hạng nguồn (Cờ nhớ CF)

DEC AX ; giảm AX đi 1 đơn vị

CMPtoán hạng 1, toán hạng 2 (cờ nhớ ZF, CF) T1<T2 ? ZF=0 CF=0 T1=T2 ? ZF=1 CF=0 T1>T2 ? ZF=0 CF=1 Ví dụ: ADD AX, BX ADC CX, DX ADD BX, 100 ADD 2000, 10 CMP AX, BX CMP SI, 120 ; so sánh SI với hằng số 1. Lênh dùng cho chuỗi kí tự

MOVSB, REP

1. Lệnh để quản lý đơn vị trung tâm STD, CLD, NOP

1. Lệnh xuất/nhập hay lệnh vào/ra

IN AX, DX ; Dữ liệu ở cổng lưu trong thanh ghi DX sẽ được đọc vào AX IN AL, 1A ; Cổng được chỉ định là các hằng số

OUT DX, AL ; Lệnh xuất dữ liệu ra cổng lưu trong DX OUT 1A, AL ; Cổng được chỉ định là hằng số

1. Lệnh nhảy

JMP đích ; lệnh nhảy không điều kiện JC 802 A ; nhảy khi CF=1

JNC 2308 ; CF=0 JZ 5508 ; ZF=1 JNZ 149B ; ZF=0

CALLđích; gọi chương trình con 1. Lệnh ngắt

INT <số hiệu ngắt>

1. Lệnh xử lý ngăn xếp PUSH <thanh ghi, từ> ; 16 bit POP <thanh ghi, từ> ; 16 bit

Ví dụ: PUSH BX ; cất dữ liệu của BX vào ngăn xếp POP DI ; tạo lại một thanh ghi chỉ số

Biên dịch chương trình assembly: • Chương trình MASM • Chương trình TASM

Bài tập: Viết chương trình Assembly đọc vào ký tự từ bàn phím và hiển thị lên màn hình, sau đó quay trở về DOS.

Một phần của tài liệu bảo mật máy tính và mạng (Trang 67 - 71)

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

(99 trang)