Thứ Hai, 20 tháng 1, 2014

Toán tử trong lập trình

5
5
09/19/12
09/19/12
Chuong 7 Cac phep dinh vi dia chi
Chuong 7 Cac phep dinh vi dia chi
Toán Tử Quan Hệ
Toán Tử Quan Hệ
So sánh 2 biểu thức và cho trò là true (-1) nếu điều
So sánh 2 biểu thức và cho trò là true (-1) nếu điều
kiện của toán tử thỏa, ngược lại là false.
kiện của toán tử thỏa, ngược lại là false.
EQ Exp1 EQ exp2 True nếu Exp1 = exp2
NE Exp1 NE exp2 True nếu Exp1 <> exp2
LT Exp1 LT exp2 True nếu Exp1 < exp2
LE Exp1 LE exp2 True nếu Exp1 <= exp2
GT Exp1 GT exp2 True nếu Exp1 > exp2
GE Exp1 GE exp2 True nếu Exp1 >= exp2
6
6
09/19/12
09/19/12
Chuong 7 Cac phep dinh vi dia chi
Chuong 7 Cac phep dinh vi dia chi
ĐỘ ƯU TIÊN
ĐỘ ƯU TIÊN
TOÁN
TOÁN
TỬ
TỬ
TOÁN TỬ MÔ TẢ
( ) Dấu ngoặc
+ , - Dấu dương , âm
* / MOD Nhân , chia, Modulus
+ , - Cộng, trừ
Độ ưu tiên
giảm dần
7
7
09/19/12
09/19/12
Chuong 7 Cac phep dinh vi dia chi
Chuong 7 Cac phep dinh vi dia chi
Toán tử SEG
Toán tử SEG
Cú pháp :
Cú pháp :


SEG expression
SEG expression


Cho đòa chỉ đoạn của biểu thức expression.
Cho đòa chỉ đoạn của biểu thức expression.
Expression có thể là biến | nhãn | tên segment
Expression có thể là biến | nhãn | tên segment
hay toán hạng bộ nhớ khác.
hay toán hạng bộ nhớ khác.
8
8
09/19/12
09/19/12
Chuong 7 Cac phep dinh vi dia chi
Chuong 7 Cac phep dinh vi dia chi
Toán tử OFFSET
Toán tử OFFSET
Cú pháp :
Cú pháp :
OFFSET
OFFSET
expression
expression


Cho đòa chỉ OFFSET của biểu thức expression.
Cho đòa chỉ OFFSET của biểu thức expression.
Expression có thể là biến | nhãn | tên segment
Expression có thể là biến | nhãn | tên segment
hay toán hạng trực tiếp bộ nhớ khác.
hay toán hạng trực tiếp bộ nhớ khác.
Ex : nạp đòa chỉ segment và offset của biến table vào DS :AX
TABLE DB ?
MOV AX, SEG TABLE
MOV DS, AX
MOV DX, OFFSET Table
9
9
09/19/12
09/19/12
Chuong 7 Cac phep dinh vi dia chi
Chuong 7 Cac phep dinh vi dia chi
TOÁN TỬ $
TOÁN TỬ $
Cho đòa chỉ của OFFSET của phát biểu
Cho đòa chỉ của OFFSET của phát biểu
chứa toán tử $.
chứa toán tử $.
Thường được dùng để tính chiều dài
Thường được dùng để tính chiều dài
chuổi.
chuổi.
10
10
09/19/12
09/19/12
Chuong 7 Cac phep dinh vi dia chi
Chuong 7 Cac phep dinh vi dia chi
TOÁN TỬ PTR
TOÁN TỬ PTR
Cú pháp :
Cú pháp :
type PTR expression
type PTR expression
Cho phép thay đổi dạng của expression
Cho phép thay đổi dạng của expression
nếu expr là 1
nếu expr là 1
biến
biến
|
|
toán hạng bộ nhớ
toán hạng bộ nhớ
thì type có
thì type có
thể là byte , word hay dword.
thể là byte , word hay dword.
Nếu expr là 1 nhãn thì type có thể là near hay far.
Nếu expr là 1 nhãn thì type có thể là near hay far.
Ex : mov ax, word ptr var1 ; var1 là toán hạng kiểu Word
mov bl , byte ptr var2 ; var2 là toán hạng kiểu byte
11
11
09/19/12
09/19/12
Chuong 7 Cac phep dinh vi dia chi
Chuong 7 Cac phep dinh vi dia chi
Toán hạng (Operand)
Toán hạng (Operand)
Các toán hạng chỉ ra nơi chứa dữ liệu cho 1 lệnh , chỉ thò.
Hầu hết các lệnh Assembly đều có đối số là 1 hoặc 2 toán hạng
Có 1 số lệnh chỉ có 1 toán hạng như RET, CLC.
Với các lệnh 2 toán hạng thì toán hạng thứ 2 là toán hạng
nguồn (source) – chứa dữ liệu hoặc đòa chỉ của dữ liệu.
12
12
09/19/12
09/19/12
Chuong 7 Cac phep dinh vi dia chi
Chuong 7 Cac phep dinh vi dia chi
Toán hạng (Operand)
Toán hạng (Operand)
Toán hạng đích giữ kết quả (nếu có yêu cầu) sau khi
thi hành lệnh.
Toán hạng đích có thể là thanh ghi hay Bộ nhớ.
Toán hạng nguồn có thể là thanh ghi, bộ nhớ hay 1 giá trò
tức thời .
Toán hạng số tức thời có thể là số trong các hệ đếm khác nhau
và được viết theo qui đònh sau :
Số hệ 2 : xxxxxxxxB (x là bit nhò phân)
Số hệ 10 : xxxxxD hay xxxxx (x là 1 số hệ 10)
Số hệ 16 : xxxxH và bắt đầu bằng số (x là 1 số hệ 16)
13
13
09/19/12
09/19/12
Chuong 7 Cac phep dinh vi dia chi
Chuong 7 Cac phep dinh vi dia chi
Cách xác đònh dữ liệu trong lệnh được gọi là cơ
Cách xác đònh dữ liệu trong lệnh được gọi là cơ
chế đònh vò đòa chỉ (addressing mode)
chế đònh vò đòa chỉ (addressing mode)


chỉ ra
chỉ ra
nơi cất dữ liệu
nơi cất dữ liệu
Cơ chế đònh vò đòa chỉ
Cơ chế đònh vò đòa chỉ
Cơ chế này chia làm 3 loại : đònh vò bằng thanh
ghi, bằng giá trò tức thời và bằng bộ nhớ.
MOV AL, BL ; đònh vò bằng thanh ghi
INC BX ; đònh vò bằng thanh ghi
Toán hạng là Reg
Lệnh sẽ được thực hiện
nhanh hơn
14
14
09/19/12
09/19/12
Chuong 7 Cac phep dinh vi dia chi
Chuong 7 Cac phep dinh vi dia chi
Toán hạng tức thời là dữ liệu 8 bit hay 16 bit nằm
Toán hạng tức thời là dữ liệu 8 bit hay 16 bit nằm
ngay trong câu lệnh.
ngay trong câu lệnh.


Dữ liệu xử lý được lưu ngay trong lệnh
Dữ liệu xử lý được lưu ngay trong lệnh


Ex : MOV CL, 61h ;
Ex : MOV CL, 61h ;


toán hạng tức
toán hạng tức
thời
thời


Mã máy của lệnh trên là
Mã máy của lệnh trên là
B161h
B161h
ỊNH VỊ T C TH IĐ Ứ Ờ
ỊNH VỊ T C TH IĐ Ứ Ờ
Lệnh sẽ được thực hiện
nhanh vì dữ liệu được lấy cùng
với lệnh.

Không có nhận xét nào:

Đăng nhận xét