เครื่องหมายดำเนินการทางสัมพันธ์และทางตรรกะ Relational
and Logical operators
3/3/2561 SONGCHAI PRAPATRUNGSEE
เครื่องหมายดำเนินการทางสัมพันธ์และทางตรรกะ
Relational and Logical operators
หรือ เครื่องหมายเปรียบเทียบ
ว่าเป็นจริง(TRUE) หรือ เท็จ(FALSE)
ถ้าเป็นจริง ทำงาน
ถ้าเป็นเท็จ
ไม่ทำงาน
ตัวอย่าง สมมุติให้
a=10 และ b=5
<
|
น้อยกว่า
|
a <
b
แบบนี้เป็นเท็จไม่ทำงาน
|
<=
|
น้อยกว่าหรือเท่ากับ
|
a <=
b
แบบนี้เป็นเท็จไม่ทำงาน
ถ้าอย่างใดอย่างหนึ่ง
เป็นจริงก็จะเป็นจริง
|
>
|
มากกว่า
|
a >
b
แบบนี้เป็นจริงทำงาน
|
>=
|
มากกว่าหรือเท่ากับ
|
a >=
b
แบบนี้เป็นจริงทำงาน
ถ้าอย่างใดอย่างหนึ่ง
เป็นจริงก็จะเป็นจริง
|
==
|
เท่ากับ
|
a ==
b
แบบนี้เป็นเท็จไม่ทำงาน
|
!=
|
ไม่เท่ากับ
|
a !=
b
แบบนี้เป็นจริงทำงาน
|
&&
|
และ(AND AND)
|
a ==
10 && b == 5
แบบนี้เป็นจริงทำงาน
ถ้าอย่างใดอย่างหนึ่ง
เป็นเท็จก็จะเป็นเท็จ
|
||
|
หรือ(OR OR)
|
a ==10
|| b == 0
แบบนี้เป็นจริงทำงาน
ถ้าอย่างใดอย่างหนึ่ง
เป็นจริงก็จะเป็นจริง
|
!
|
ไม่
(not)
= กลับค่าตัวแปร
|
กลับค่าตัวแปร
จากมีค่าเป็น0 จาก0เป็น1
ค่าเดียวที่เป็นเท็จคือค่า0
นอกนั้นถือว่ามีค่า=เป็นจริง
เช่น
if (
! a )
หมายความว่า
ถ้าaมีค่า ก็กลับค่าเป็น0
และถ้าaเป็น0
ก็กลับค่าเป็น1
|
/* 3/3/2561
Relational and
Logical operators
*/
#include <REGX51.H> //REGISTER 51 Header file
void main(void)
{
char
a=15,b,x;
while(1)
{
if ( !a
)
{
b++;
}
x++;
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////
4/7/2557 SONGCHAI PRAPATRUNGSEE
#include <REGX51.H>
unsigned char a=10,b=5;
void main(){
P1=0;
while(1){
if(a!=b){
P1=~P1;
}
}
}
//////////////////////////////////////////
อธิบายโปรแกรม
#include <REGX51.H>
คือการนำเอารีจิสเตอร์ของAT89S51เข้ามาร่วม
unsigned char a=10,b=5;
เป็นการประกาศตัวแปรแบบโกลบอล
กำหนดตัวแปรa=10และb=5
void main(){ }
คือฟังชันหลัก
P1=0;
กำหนดPORT1=0 หมายถึงPORT1เป็นกราวด์ทั้งหมด
while(1){ }
เป็นคำสั่งวนลูปไม่รู้จบ
if(a!=b){ }
เป็นคำสั่งตรวจสอบเงื่อนไข
ถ้า aไม่เท่ากับb
ก็แสดงว่าเป็นจริง(TRUE)
เข้าไปทำงานในลูป
ถ้า aเท่ากับb
ก็แสดงว่าเป็นเท็จ(FALSE)
ก็จะไม่ทำงานและโดดข้ามลูปนี้ไป
P1=~P1;
~ หมายถึง NOTหรือCOMPLEMENT
หรือกลับด้านแบบสมบูรณ์
PORT1กลับด้านจากกราวด์เป็นไฟทั้งPORT
และเมื่อกลับมาอีกครั้งก็จะกลับไฟเป็นกราวด์ทั้งPORT
ไม่มีความคิดเห็น:
แสดงความคิดเห็น