วันเสาร์ที่ 3 มีนาคม พ.ศ. 2561

เครื่องหมายดำเนินการทางสัมพันธ์และทางตรรกะ Relational and Logical operators












เครื่องหมายดำเนินการทางสัมพันธ์และทางตรรกะ 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




ไม่มีความคิดเห็น: