ตรรกศาสตร์กับคอมพิวเตอร์ (Computer and Logical)
ตรรกศาสตร์ (Logic) ตรรกศาสตร์ (Logic) เป็นศาสตร์ที่มีความสำคัญมากในหลักการที่ว่าด้วย การหาเหตุและผล ซึ่งจะมีค่าความจริงที่เป็นจริง (Truth) หรือ ค่าความจริงที่เป็นเท็จ (False) อย่างใดอย่างหนึ่ง และตรรกศาสตร์ยังมีบทบาทมากในการใช้ชีวิตประจำวันของมนุษย์เราเป็นอย่างมาก ทั้งทางด้านการการศึกษาในเรื่องของคอมพิวเตอร์ เป็นหลักการคิดอย่างหนึ่งซึ่งเป็นเหตุเป็นผลของมนุษย์ ในการนำหลักการคิดนี้มาใช้ในระบบคอมพิวเตอร์ รวมถึงการแก้ปัญหา และการปฏิบัติงานร่วมกับคอมพิวเตอร์ เนื่องจากทั้งระบบซอฟต์แวร์และฮาร์ดแวร์จะทำงานสัมพันธ์กับความรู้ทางด้านตรรกศาสตร์ ดังนั้น ผู้ที่จะทำการเขียนโปรแกรมหรือทำงานร่วมกับระบบคอมพิวเตอร์จึงต้องทำความเข้าใจกับความรู้ทางด้านตรรกศาสตร์ดังนี้
1. ตรรกศาสตร์เบื้องต้นกับระบบคอมพิวเตอร์ ตัวดำเนินการ (Operator) ตัวดำเนินการ (Operator) คือ เครื่องหมายการกระทำที่ใช้สำหรับบอกการกระทำระหว่างตัวถูกดำเนินการ ตัวดำเนินการ Operator อาจเป็นการกระทำระหว่างตัวถูกดำเนินการ 2 ตัว หรือ 1 ตัว ขึ้นอยู่กับตัวดำเนินการ ตัวดำเนินการในระบบคอมพิวเตอร์คือ ตัวดำเนินการทางคณิตศาสตร์ ตัวดำเนินการหรือเครื่องหมายการกระทำทางคณิตศาสตร์ในระบบคอมพิวเตอร์ มีตัวดำเนินการหรือเครื่องหมายการกระทำดังต่อไปนี้
+ การบวก
– การลบ
* การคูณ
/ การหาร
DIV การหารโดยคิดเฉพาะจำนวนเต็มที่ได้จากการหาร
MOD การหารโดยคิดเฉพาะเศษที่ได้จากการหาร
2. พื้นฐานตรรกศาสตร์กับคอมพิวเตอร์ ตรรกศาสตร์ ถือว่าเป็นวิชาพื้นฐานสำหรับการเรียนวิชาที่เกี่ยวกับคอมพิวเตอร์ทั้งทางด้านฮาร์ดแวร์ และการเขียนโปรแกรม วิชานี้เป็นวิชาที่ว่าด้วยกฎเกณฑ์และเหตุผล การได้มาของผลลัพธ์ภายใต้กฎเกณฑ์ที่กำหนด ข้อความหรือการใช้เหตุผลในชีวิตประจำวันสามารถสร้างเป็นรูปแบบและกฎเกณฑ์ที่ชัดเจนได้ ในการเขียนโปรแกรมคอมพิวเตอร์สามารถใช้กฎเกณฑ์ต่าง ๆ ที่เขียนขึ้นมาพัฒนาเป็นโปรแกรมคอมพิวเตอร์ได้
2.1 ประพจน์ (Statement) ประพจน์ คือ ประโยคบอกเล่าหรือประโยคปฏิเสธที่เป็นจริงหรือเท็จเพียงอย่างใดอย่างหนึ่งประโยคที่เป็นประพจน์ เช่น
1. 5 + 6 = 11
2. 3 < – 6 3. 10 เป็นคำตอบของสมการ x – 1 = 7 4. พ.ศ. 2550 เกิดน้ำท่วมโลก 5. มีจำนวนจริงบางจำนวน x – 5 = 8 6. 0 ไม่เป็นจำนวนคู่ ประโยคที่ไม่เป็นประพจน์ ได้แก่ ประโยคคำถาม ประโยคคำสั่ง ห้าม ขอร้อง อ้อนวอน ประโยคอุทาน ประโยคแสดงความรารถนา และสุภาษิต คำพังเพย เช่น 1. ขอให้โชคดี 2. กรุณาอย่าส่งเสียงดัง 3. 5 + 6 มีค่าเท่าใด 4. น้ำขึ้นให้รีบตัก 5. X < 5 6. ทรงพระเจริญ 7. เขาเป็นนักฟุตบอลทีมชาติไทย 8. อย่าเดินลัดสนาม 9. คุณพระช่วย 2.2 การเชื่อมประพจน์ ตัวเชื่อมในทางตรรกศาสตร์สามารถนำมาใช้เชื่อมประพจน์ได้ ข้อความที่ใช้ในชีวิตประจำวัน จะมีประโยคบางประโยคซึ่งเปลี่ยนแปลงไปจากเดิมเมื่อประโยคนั้น ๆ ถูกเชื่อมด้วยตัวเชื่อม การใช้ตัวเชื่อมนี้จะช่วยในการสร้างประโยคใหม่ ๆ ให้มีความหมายกว้างขวางขึ้นกว่าเดิมได้ เช่น ถ้าเรามีประโยค 2 ประโยคคือ P แทน วันนี้อากาศร้อน Q แทน วันนี้ฝนตก การเชื่อมประพจน์ด้วยตัวเชื่อม “และ”
การเชื่อมประพจน์ด้วยตัวเชื่อม “หรือ”
การเชื่อมประพจน์ด้วยตัวเชื่อม “ถ้า…แล้ว”
การเชื่อมประพจน์ด้วยตัวเชื่อม “ก็ต่อเมื่อ”
นิเสธของประพจน์
2.3 ค่าความจริงของประพจน์ การหาค่าความจริงของประพจน์ที่ประกอบด้วยตัวเชื่อมหลายตัว สามารถทำได้โดยใช้ตารางความจริง การสร้างตารางค่าความจริงทำได้โดยเขียนค่าความจริงที่เป็นไปได้ในทุกกรณีของตัวแปรทุกตัวลงไป ถ้าหากประพจน์ใดมีวงเล็บประพจน์นั้นจะทำงานก่อน ถ้ามีนิเสธจะต้องทำประพจน์ที่มีนิเสธเป็นอันดับแรก
2.4 ประโยคเปิด ประโยคเปิดเป็นประโยคหรือข้อความที่อยู่ในรูปแบบประโยคบอกเล่าหรือปฏิเสธ ที่มีตัวแปรและสื่อแทนค่าของตัวแปรนั้นอยู่ในประโยค และยังไม่ทราบค่าความจริง ถ้าหากทำการแทนค่าตัวแปรนั้นจะทำให้ได้ค่าความจริงแน่นอน สัญลักษณ์ นิยมใช้ P(x), P(x, y), Q(x, y) แทนประโยคเปิดที่มีตัวแปรระบุในวงเล็บ
วลีบอกปริมาณ คือ คำบอกกล่าวกำหนดขีดจำกัดของปริมาณ หรือขอบเขตของตัวแปรในประโยคเปิด วลีบอกปริมาณ มี 2 แบบ คือ
1) บอกปริมาณที่หมายถึงทั้งหมดของปริมาณหรือสมาชิก
2) บอกปริมาณบางส่วน
3. การคำนวณของคอมพิวเตอร์
ระบบตัวเลขในคอมพิวเตอร์
เนื่องจากคอมพิวเตอร์ประมวลผลด้วยระบบดิจิตอล ระบบตัวเลขที่ใช้ในระบบดิจิตอลเราใช้ระบบตัวเลขฐานสองมาเปรียบเทียบการทำงานพื้นฐานของระบบดิจิตอล เนื่องจากมีการทำงานเพียงสองสภาวะคือ สภาวะลอจิก 0กับสภาวะลอจิก 1
3.1 ระบบเลขฐานสอง (Binary)
ระบบเลขฐานสอง (Binary) จะเป็นระบบเลขที่ง่ายกว่าเลขฐานสิบ เนื่องจากระบบเลขฐานสอง จะใช้อักขระแทนสองตัว ระบบเลขฐานสองนี้ใช้ในระบบดิจิตอลอิเล็กทรอนิกส์ด้วย เพราะว่าวงจรดิจิตอลจะมีเพียงสองสถานะ(two states)หรือระดับสัญญาณสองระดับ (two signal levels)โดยมีตัวเลขที่ไม่ซ้ำกันอยู่ทั้งหมด 2 ตัว คือ 0 และ 1 หรืออาจใช้คำอื่นแทน ดังนั้นข้อมูลที่คอมพิวเตอร์จะประมวลผลจะถูกเก็บในรูปแบบของเลขฐานสอง โดยหน่วยที่เล็กที่สุดของการเก็บข้อมูลคอมพิวเตอร์จะเรียกว่า บิต ระบบเลขฐานสองนี้จะมีค่าเป็นไปได้ 2 ค่า คือ 0 และ 1 ถ้าหากนำข้อมูล 0 และข้อมูล 1 หลาย ๆ บิตมาต่อเรียงกันจะทำให้สามารถนำมาแทนค่าข้อมูลได้ ดังนั้นเมื่อมีการเขียนโปรแกรมจะต้องพิจารณาด้วยว่าจะประกาศตัวแปรให้เป็นข้อมูลขนาดกี่บิตโดยควรทราบล่วงหน้าว่าข้อมูลที่จะเก็บอยู่ในช่วงใด
ระบบเลขฐานสองมีสัญลักษณ์ที่ใช้สองเลขคือ 0 กับ 1 โดยจะมีค่าประจำหลักดังนี้
แต่ละหลักของเลขฐานสองจะเรียกว่า “บิต” (Bit มาจากคำว่า Binary Digit) จะเห็นว่า
บิตทางด้านซ้ายมือจะมีค่ามากกว่าบิตทางด้านขวามือ โดยบิตทางด้านซ้ายมือที่มีค่ามากสุดเรียกว่า
“เอ็มเอสบี” (MSB ย่อมาจาก Most Significant Bit) ส่วนบิตขวามือที่มีค่าน้อยสุดเรียกว่า
“แอลเอสบี” (LSB ย่อมาจาก Least Significant Bit) รูปแบบของเลขฐานสอง เช่น 1101.112
11011.11012 เป็นต้น
3.2 การแปลงเลขฐาน เลขฐานทุกฐานสามารถเปลี่ยนและเชื่อมโยงเข้าหากันได้ แต่ในระบบดิจิตอลใช้ระบบเลขฐานสองเป็นพื้นฐาน แต่ถ้าจะให้เกิดความสะดวกในการศึกษาและพัฒนาระบบดิจิตอล เราจึงนำเลขฐานต่างๆเข้ามาใช้และเชื่อมโยงกัน
การแปลงเลขฐานสิบ เป็นเลขฐานสอง
มีวิธีการคือ ถ้าเป็นเลขจำนวนเต็มให้เอาเลขฐาน มาหารเลขฐานสิบที่ต้องการแปลง โดยหารจนกว่าจะหารต่อไปอีกไม่ได้ และเศษที่ได้จากการหารแต่ละครั้งคือค่าที่แปลงเป็นเลขฐานนั้น ค่าของเศษที่ได้จากการหารครั้งแรกให้เป็นบิตหรือหลักต่ำสุด (LSB) ส่วนเศษที่ได้จากการหารครั้งสุดท้ายให้เป็นบิตหรือหลักสูงสุด (MSB) และกรณีค่าของเลขฐานสิบเป็นทศนิยมมีวิธีการคือ ให้เอาเลขฐานมาคูณเลขฐานสิบที่ต้องการแปลง ผลลัพธ์ของการคูณที่เป็นจำนวนเต็มครั้งแรกให้เป็นคำตอบของบิตหรือหลักสูงสุด (MSB) และผลลัพธ์ของการคูณที่เป็นจำนวนเต็มครั้งสุดท้ายคือค่าบิตหรือหลักต่ำสุด (LSB)
ตัวอย่างที่ การวิเคราะห์ชนิดของค่ารากสมการกำลังสองด้วย discriminant
พิจารณาสมการกำลังสองในรูปของ ax2 + bx + c = 0
ax2 + bx + c = a [ x2 + (b/a)x + (c/a) ]
=a[ {x – (b/2a) }2 – (b/2a)2+(c/a) ]
=a[ {x – (b/2a) }2 – (b/2a)2+(c/a) ]
=a[ {x – (b/2a) }2 – { (b2-4ac) / (2a) } ]
แยกพิจารณาค่า b2-4ac เรียกว่า discriminant ได้ดังนี้
ภาษาธรรมชาติ
กรณีที่ 1 ถ้า b2-4ac < 0 จะได้สมการไม่มีรากเป็นจำนวนจริง
กรณีที่ 2 ถ้า b2-4ac = 0 จะได้สมการมีรากซ้ำ
กรณีที่ 3 ถ้า b2-4ac > 0 จะได้ว่าสมการมีรากเป็นจำนวนจริงที่แตกต่างกัน
ขอบคุณข้อมูล https://www.scimath.org/