LẬP TRÌNH ỨNG DỤNG VỚI BỘ ĐỂM
6.1. CÁC PHÉP TOÁN SO SÁNH
Trong phân này chúng ta cùng khảo sát và tìm hiểu về các tập lệnh so sánh được hỗ trợ trong THA Portal cho PO S7 — 1200.
Chúng ta có thể so sánh các kiểu đữ liệu: Int, Diat, Real, Word,
DWord, Time thông qua 6 tập lệnh so sánh: so sánh bằng ( = = ), so sánh khác (<>), so sánh lớn hơn (>), sơ sánh lớn hơn bang (), so sánh nhỏ hơn (<), so sánh nhỏ hơn bằng (<). Phép so sánh được thực hiện bằng cách lấy <toán hạng I> đem so sánh với <toán bạng 2> nếu thoá điều kiện thì sẽ cho ngõ ra bằng 1, còn ngược lại ngõ ra bằng 0.
ae
121
Khai |...ằ ng Vựng
` „ Kiéu đỡ liệu: ° Miêu tả
báo ahé °
Tham sé
Int, DInt, 1,Q,M, |Giá trị thứ
<toán hạng 1> | IN Real, Word, | Ð, Lhoặc | nhất đem so
DWord, Time | hing sé | sánh
Int, DInt, I, Q, M, | Gia tri thi
<todn hang 2>| IN Real, Word, | ÐD,L hoặc | hai để so
DWord, Time | hằng số | sánh
6.1.1. So sánh bằng
Lệnh so sánh bằng được sử dụng để xác định giá trị thứ nhất
<todn hang I> có bằng giá trị của số thứ hai <toán hạng 2>
kbông? Nếu điều kiện so sánh thỏa mãn, phép so sánh sẽ trả về kết quá logic RLUO bằng 1, ngược lai RLO (Result of Logic Operation — kết quả trả về của phép toán logic) bằng 0.
Xét ví dụ sau:
30.0 “ad 200.0
*Innur_#? I1 "Gut of
$4 j-= g 4
af Tint | i of
Tế
Tín hiệu ngõ vào I0.0 ở mức tích cực Gaức 1) sẽ cho thực hiện phép so sánh giữa vùng nhớ MW10 (kiểu đữ liệu là Inaterger) với giá trị 16, nếu giá trị trong vùng nhớ MW10 = 16 thì ngõ ra Q0.0 bằng 1.
Ngược lại Q0.0 bằng 0.
6.1.2. So sánh khác
Lệnh so sánh khác được sử dụng để xác định giá trị thứ nhất
<todn hạng 1> có khác giá trị của số thứ hai <toán hạng 2>
- không? Nếu điều kiện so sánh thôỏa mãn, phép so sánh sẽ trả về kết quả logic RLO bằng 1, ngược lại RLO bằng 0.
122
Ệ £
ri sp
Xét ví dụ sau:
SH ng Q
[80.8 lacie “h0.
*Input_0° net "Ou
doh J<>| f }
§
eu [tet |
46
Tín hiệu ngõ vào 10.0 ở mức tích cực (mức 1) sẽ cho thực hiện phép so sánh giữa vùng nhớ MW10 (kiểu dữ liệu là Interger) với giá trị 16, nếu giá trị trong vùng nhớ MW10 # 16 thì ngõ ra Q0.1 bằng 1.
Ngược lại Q0.1 bằng 0.
6.1.3. So sánh lớn hơn
Lệnh so sánh lớn hơn được sử dụng để xác định giá trị thứ nhất
<toán hạng 1> có lớn hơn giá trị của số thứ hai <boán hạng 3>
không? Nếu điều kiện so sánh thỏa mãn, phép so sánh sẽ trả về két qua logic RLO bằng 1, ngược lại RUO bằng 0.
Xét ví dụ sau:
30.0 Xung “qa.2
*Input @” Im 3 “gục ?"
} 1 [> | gt
ao [int | 4 é
18
Tín hiệu ngõ vào I0.0 ở mức tích cực (mức 1) sẽ cho thực hiện phép so sánh giữa vùng nhớ MW10 (kiểu đữ liệu là Interger) với giá trị 16, nếu giá trị trong vùng nhớ MW10 > 16 thì ngõ ra Q0.3 bằng 1.
Ngược lại Q0.2 bằng 0.
6.1.4. So sánh lớn hơn bằng
Lệnh so sánh lớn hơn bằng được sử dụng để xác định giá trị thứ nhất <toán hạng 1> có lớn hơn bằng giá trị của số thứ hai <toán hạng 2> không? Nếu điều kiện so sánh thỏa mãn, phép so sánh sẽ trả về kết quả logie RLO bằng 1, ngược lại RLO bằng 0.
123
3ét ví dụ sau:
110.0 _--. q03
*Input 0” Int_4 *Dụt 3°
1 4 jP= gy
tổ | int | aoe
16
Tin hiéu ngé vao 10.0 & mtic tích cực (mức 1) sẽ cho thực hiện phép so sánh giữa vùng nhớ MW10 (kiểu đữ liệu là lnterger) với giá trị
16, nếu giá trị trong vùng nhớ MW10 > 16 thì ngõ ra Q0. bằng 1.
Ngược lại Q0.3 bằng 0.
6.1.5. So sánh nhỏ hơn
Lệnh so sánh nhỏ hơn được sử dụng để xác định giá trị thứ nhất
<toán hạng 1> có nhỏ hơn giá trị của số thứ hai <toán hạng 3>
không? Nếu điều kiện so sánh thổa mãn, phép so sánh sẽ trả về kết quả logic RLO bằng 1, ngược lại RLO bằng 0.
Xét ví dụ sau:
"20.0 aang #04
*Input In 1 ®Qut 4?
\ 1 Ị j= ị a %
+ F [ant | Š #
TẾ
Tín hiệu ngõ vào 10.0 ở mức tích cực (mức 1) sẽ cho thực hiện phép so sánh giữa vùng nhớ MW10 (kiểu đữ liệu là Interger) với giá trị 16, nếu giá trị trong vùng nhớ MW10 < 16 thì ngõ ra Q0.4 bằng 1.
Ngược lại Q0.4 bằng 0.
6.1.6. So sánh nhỏ hơn bằng
Lệnh so sánh nhỏ hơn bằng được sử dụng để xác định giá trị thứ .nhất <toán hạng 1> có nhê hơn bằng giá trị của số thứ hai <toán hạng 2> không? Nếu điều kiện so sánh được thỏa mấn, phép so sánh sẽ trả về kết quả logic RLO bằng 1, ngược lại RLO bằng 0.
124
Xét ví dụ sau:
tee AMG . = "QẠn.5
®innut_@° int “Out 5”
‡ ‡ [==] xy,
re pint | uF
te
Tín hiệu ngõ vào 10.0 ở mức tích cực (mức 1) sẽ cho thực hiện phép so sánh giữa vùng nhớ MW10 (kiểu đữ liệu là Interger) với giá trị 16, nếu giá trị trong vùng nhớ MW10 < 16 thì ngõ ra Q0.5 bằng 1.
Ngược lại Q0.5 bằng 0.