วันเสาร์ที่ 9 ตุลาคม พ.ศ. 2553

ประวัติควายไทย

ควายไทย โดย นายจรัญ จันทลักขณา
ควายไทยจัดเป็นควายที่มีขนาดใหญ่ที่สุด ในบรรดาควายเลี้ยงแถบเอเชีย ควายเลี้ยงมีสองประเภทใหญ่ ๆ คือ ควายแม่น้ำ ซึ่งส่วนใหญ่เป็นควายพันธุ์อินเดีย จัดเป็นควายพันธุ์นม และควายปลัก ซึ่งรวมควายไทยและควายงานในประเทศอื่น ๆ ในเอเชีย เช่น ฟิลิปปินส์ มาเลเซีย พม่า เขมร ควายไทยมีเลี้ยงกันในทุกภาคของประเทศไทย แต่ส่วนใหญ่อยู่ในภาคตะวันออกเฉียงเหนือ ดังรายละเอียดจำนวนควายในภาคต่าง ๆ ของประเทศไทยในตารางที่ ๙

ตารางที่ ๙ จำนวนควายในภาคต่าง ๆ ของประเทศไทย พ.ศ. ๒๕๒๑

สำนักงานสถิติแห่งชาติ สำนักนายกรัฐมนตรี

บางคนเรียกควายว่า กระบือ เข้าใจว่ากระบือ เป็นคำต่างประเทศ ภาษาเขมรเรียกควายว่า กระบือหรือกระบาย ชาวฟิลิปปินส์เรียกกระบือว่า คาราบาว และชาวมาเลเซียและอินโดนิเซียเรียกว่า เคอรเบา
ควายไทยมีขนาดใหญ่กว่าวัวประมาณสองเท่า ควายตัวผู้โตเต็มที่มีน้ำหนักเฉลี่ย ๖๐๐ - ๖๕๐ กิโลกรัม ควายตัวเมียโตเต็มที่มีน้ำหนักเฉลี่ย ๔๐๐-๕๐๐ กิโลกรัม ควายมีลำตัวใหญ่ กว้างและลึก มีท้องกางโต แสดงให้เห็นความจุ ท้องย้อย บั้นท้ายลาด ขายาว มีกระดูกใหญ่ หัวมีขนาดเล็กเมื่อเทียบกับขนาดตัว ทั้งตัวผู้และตัวเมียมีเขายาวโค้งงองุ้มเข้าหากันไปด้านหลัง เขาควายมีรูปร่างแบน ปลายเขาเรียวแหลม มองดูน่ากลัว ควาย ไทยมีสองสี คือ ควายสีเทาหรือดำ และควายเผือกซึ่งมีสีขาว
ควายมีต่อมเหงื่อน้อยกว่าวัว จึงถ่ายเทความร้อนออกจากร่างกายได้ไม่ดีเท่าวัว เวลาอากาศร้อน ควายชอบนอนแช่ปลักโคลน เพื่อเป็นการผ่อนคลายความร้อนของร่างกาย ถ้าควายโดนอากาศร้อนนาน ๆ จะแสดงอารมณ์หงุดหงิด เปลี่ยวและดุร้าย จนอาจทำร้ายผู้เข้าใกล้ได้หากไม่ระมัดระวัง ควายมักใช้เขาอันยาวโง้งเหวี่ยงแทงเสยไปด้านหลังด้วยความแรง แต่โดยทั่วไป ควายเป็นสัตว์เลี้ยงที่เชื่องและเชื่อฟังผู้เลี้ยง จึงฝึกใช้งานได้ง่าย
ลูกควายแรกเกิดมีน้ำหนักประมาณ ๒๕-๓๕ กิโลกรัม ตัวผู้โตกว่าตัวเมีย แม่ควายให้นมพอเลี้ยงลูก นมควายมีไขมันสูง ๗-๙ เปอร์เซ็นต์ สูงกว่านมวัวซึ่งมีไขมันเพียง ๓-๔ เปอร์เซ็นต์ แม่ควายเลี้ยงลูกเก่ง ลูกควายจะดูดนมไปจนกว่าแม่จะหยุดให้นม จึงเริ่มรู้จักเล็มหญ้ากินเอง ควายสาวมีอายุผสมพันธุ์ได้ตั้งแต่ ๒-๓ ปีขึ้นไป มักพบบ่อย ๆ ว่า ควายตัวเมียให้ลูกควาย ตัวแรกเมื่ออายุ ๔-๕ ปี แม่ควายอาจให้ลูกได้ถึง ๑๐ ตัวตลอดชีวิต แต่จะให้ลูกที่แข็งแรงที่สุดเมื่อแม่ควายมีอายุระหว่าง ๘-๙ ปี ซึ่งควรให้ลูกเป็นตัวที่ ๔ หรือ ๕ แม่ควายที่ได้รับอาหารและการเลี้ยงดูดี อาจให้ลูกปีละตัว แต่โดยทั่วไปจะให้ลูกสองตัวในสามปี ควายตัวผู้เริ่มใช้ผสมพันธุ์ตั้งแต่อายุ ๓ ปีขึ้นไป
แม่ควายจะตกไข่ และแสดงอาการเป็นสัดครั้งหนึ่งในรอบ ๒๒ วัน เมื่อทำการผสมพันธุ์ระยะนี้ แม่ควายจะตั้งท้อง เวลาอุ้มท้องของแม่ควายนานประมาณ ๓๑๐ วัน แต่ช่วงการตกลูกหนึ่งตัว อาจกินระยะหนึ่งปีครึ่งขึ้นไป ควายตัวผู้หนึ่งตัว ควรคุมฝูงตัวเมียเพื่อผสมพันธุ์ประมาณ ๓๐-๔๐ ตัว ต่อหนึ่งฤดูผสมพันธุ์
ควายที่ถูกฆ่าและชำแหละแต่งซากเรียบร้อยแล้ว น้ำหนักซากประมาณ ๔๕-๕๐ เปอร์เซ็นต์ของน้ำหนักก่อนฆ่า เนื้อควายมีมัดกล้ามเนื้อค่อนข้างใหญ่ จึงดูหยาบกว่าเนื้อวัว เนื้อควายมีสีคล้ำกว่าเนื้อวัว ซึ่งคุณภาพของเนื้อจะไม่แตกต่างกัน หากวัวและควายได้รับอาหารและการเลี้ยงดูเหมือน ๆ กัน

ตารางที่ ๑๐ น้ำหนักอวัยวะภายในของควายไทยตัวเมีย

ควายงานจะเริ่มถูกใช้งานเมื่ออายุ ๓ ปีขึ้นไป ควายงานเป็นควายตอนแล้ว ส่วนใหญ่จะถูกตอนเมื่ออายุประมาณ ๓ ปี การตอนใช้วิธีทุบอัณฑะจนแหลก ควายจะหมดสมรรถภาพทางเพศและเชื่องกว่าควายที่ยังไม่ตอน ควายงานมีช่วงอายุการทำงานนาน ๑๒-๑๔ ปี ควายหนึ่งตัวไถนาได้วันละประมาณครึ่งไร่หรือสองงาน แต่ถ้าใช้เทียมไถคู่กัน จะไถนาได้วันละประมาณหนึ่งไร่กับหนึ่งงาน ซึ่งดีกว่าเทียมไถเดี่ยว ตารางที่ ๑๑ แสดงรายละเอียดการใช้ควายทำงานในบางท้องถิ่นของเมืองไทย โดยสรุปอาจกล่าวได้ว่า ควายทำงานปีละประมาณ ๔ เดือน ทำงานวันละ ๕ ชั่วโมง ควายหนึ่งตัวใช้ไถนาเฉลี่ยปีละ ๑๐ ไร่ ชาวนาเลี้ยงควายไว้ใช้งานรายละ ๒ ตัว ฤดูการทำงานของควาย คือ ฤดูทำนา เริ่มตั้งแต่เดือนมิถุนายน-สิงหาคม ในระยะนี้งานชุกควายต้องทำงานหนักมาก
1. บัฟฟาโร่(ควายไทย) ฟายเป็นสัตว์ชนิดหนึ่ง ที่ทำนาเอาข้าวให้เรากิน (ถึงตอนนี้มันจะมีรถแล้วอะน่ะ)
ควาย เป็น อาชีพหนึ่ง ที่ชอบใช้พลัง(ถึก ฟาย ทุย) ฟันไม่ยั้ง ต่อยไม่ตาย อ้าวเห้ย
ประวัติตัวละคร นักสู้/ สาย พาวเว่อร์ ( I Love ควายไทย )
ภาพลักษณ์ เป็นตัวละครที่แข็งแรง ดุดัน ลักษณะเด่นก็คือ มีเขาไว้บนหัว ชอบใส่ชุดแดง(จะไปประท้วงใครว่ะ)
และปอกแขน ใช้ ปืน คมแฝก(ควายไรว่ะ) ดาบซามูไร RPG M4a1 เอ้ยๆๆ นอกเรื่องละ อันนี้จะไปรบกะพม่า
เหตุผล ที่มาเกาะคาบันร่า ง่ายๆคือ คนเขียนเกมมันไห้มา 555+ เข้าเรื่อง เขาเป็นนักสู้มืออาชีพ
ไม่เคยเกรงกลัวใครและพร้อมประลองฝีมือจากทุกแห่ง(รวมถึง กัลป์ เกรียงไกรด้วยปะ 555+)
เขาได้ร่วมการแข่งขัน ที่ หรึโหด(หา ร.รึไม่เจอโทดที) รายกราหนึ่ง ครั้งนั้นคู่ต่อสู้บาดเจ็บเข้าขั้นโคม่า
(ควายโหดว่ะ) เขาได้ทราบอาการบาดเจ็บของคู่ต่อสู้ในเวลาถัดมา(นี่มันยังไม่รู้หรอว่ะเป็นคนทำเอง)
ต่อมาเขาถูกผู้จัดการโกงเงินรางวัลทั้งหมดหนีไป ด้วยเหตุนี้เขาจิงมาที่เกาะคาบัลล่าเพื่อหาเงินมาดูแลผู้บาดเจ็บ
รวมถึงดูแลครอบครัว และเก็บเงินไปหา กิ๊ก ไปเที่ยวสยาม ซื้อคมแฝก ไปเรียนกังฟู และอื่นๆ 555+

ระบบเลขฐาน

ระบบเลขฐาน
เลขฐาน หมายถึงกลุ่มข้อมูลที่มีจำนวนหลัก (Digit) ตามชื่อของฐาน
นั้นๆเช่น เลขฐานสอง ฐานแปด และฐานสิบ ประกอบด้วยข้อมูลตัวเลขจำนวนสองหลัก (0-1) แปดหลัก (0-7) และสิบหลัก (0-9) ตามลำดับ ดังรูปในตารางที่ 1
ในระบบคอมพิวเตอร์มีการใช้ระบบเลขฐาน 4 แบบ ประกอบด้วย
1).เลขฐานสอง (Binary Number)
2).เลขฐานแปด (Octal Number)
3).เลขฐานสิบ (Decimal Number)
4).เลขฐานสิบหก (Hexadecimal Number)

ตารางที่ 1 แสดงจำนวนตัวเลข ของเลขฐานต่างๆ

1).เลขฐานสอง

คือตัวเลขที่มีค่าไม่ซ้ำกันสองหลัก ( 0 และ 1) เป็นเลขฐานเดียวที่เข้ากันได้กับ Hardware ของเครื่องคอมพิวเตอร์ได้โดยตรง เพราะการใช้เลขฐานอื่น จะสร้างความยุ่งยากให้กับเครื่องคอมพิวเตอร์อย่างมาก เช่น เลขฐานสิบมีตัวเลขที่เป็นสถานะที่ต่างกันถึง 10 ตัว ในขณะที่ระบบไฟฟ้ามีเพียง 2 สถานะ ซึ่งในช่วงเวลาหนึ่งๆมีเพียงสถานะเดียวเท่านั้น แต่ละหลักของเลขฐานสอง เรียกว่า Binary Digit (BIT)

2).เลขฐานแปด

เลขฐานแปด มีความสัมพันธ์กับเลขฐานสอง คือ เลขฐานสองจำนวน 3 หลัก แทนด้วยเลข
ฐานแปด 1 หลัก ดังนั้นเราจึงสามารถเขียนเลขฐานสอง 6 บิท แทนด้วยเลขฐานแปด 2 บิท การใช้เลขฐานแปดแทนเลขฐานสองทำให้จำนวนบิทสั้นลง

3).เลขฐานสิบ

คือตัวเลขที่มีค่าไม่ซ้ำกันสิบหลัก (0,1,2,…,9) เป็นเลขฐานที่มนุษย์คุ้นเคยและใช้ในชีวิตประจำวันมากที่สุด ตัวเลขที่มีจำนวนมากกว่า 9 ให้ใช้ 10 ซึ่งเป็นการกลับไปใช้เลข 1 และ 0 อีก เพียงแต่ค่าของ 1 เปลี่ยนไปเป็น 10 เท่าของตัวมันเอง เช่น 333 (สามร้อยสามสิบสาม) แม้จะใช้ตัวเลข 3 ทั้งหมด แต่ตำแหน่งของตัวเลขย่อมมีความหมายตามตำแหน่งของแต่ละหลักนั้น กล่าวคือ หลักหน่วยน้อยกว่าหลักสิบ 10 เท่า หลักสิบน้อยกว่าหลักร้อย 10 เท่า ตามลำดับ

4).เลขฐานสิบหก

เลขฐานสิบหก มีความสัมพันธ์กับเลขฐานสอง คือ เลขฐานสองจำนวน 4 หลัก แทนด้วย
เลขฐานสิบหก 1 หลัก ดังนั้นเราจึงสามารถเขียนเลขฐานสอง 8 บิทแทนด้วยเลขฐานสิบหก 2 บิท การใช้เลขฐานสิบหกแทนเลขฐานสองทำให้จำนวนบิทสั้นลง

ระบบเลขฐาน
เลขฐาน หมายถึงกลุ่มข้อมูลที่มีจำนวนหลัก (Digit) ตามชื่อของฐาน
นั้นๆเช่น เลขฐานสอง ฐานแปด และฐานสิบ ประกอบด้วยข้อมูลตัวเลขจำนวนสองหลัก (0-1) แปดหลัก (0-7) และสิบหลัก (0-9) ตามลำดับ ดังรูปในตารางที่ 1
ในระบบคอมพิวเตอร์มีการใช้ระบบเลขฐาน 4 แบบ ประกอบด้วย
1).เลขฐานสอง (Binary Number)
2).เลขฐานแปด (Octal Number)
3).เลขฐานสิบ (Decimal Number)
4).เลขฐานสิบหก (Hexadecimal Number)

ตารางที่ 1 แสดงจำนวนตัวเลข ของเลขฐานต่างๆ

1).เลขฐานสอง

คือตัวเลขที่มีค่าไม่ซ้ำกันสองหลัก ( 0 และ 1) เป็นเลขฐานเดียวที่เข้ากันได้กับ Hardware ของเครื่องคอมพิวเตอร์ได้โดยตรง เพราะการใช้เลขฐานอื่น จะสร้างความยุ่งยากให้กับเครื่องคอมพิวเตอร์อย่างมาก เช่น เลขฐานสิบมีตัวเลขที่เป็นสถานะที่ต่างกันถึง 10 ตัว ในขณะที่ระบบไฟฟ้ามีเพียง 2 สถานะ ซึ่งในช่วงเวลาหนึ่งๆมีเพียงสถานะเดียวเท่านั้น แต่ละหลักของเลขฐานสอง เรียกว่า Binary Digit (BIT)

2).เลขฐานแปด

เลขฐานแปด มีความสัมพันธ์กับเลขฐานสอง คือ เลขฐานสองจำนวน 3 หลัก แทนด้วยเลข
ฐานแปด 1 หลัก ดังนั้นเราจึงสามารถเขียนเลขฐานสอง 6 บิท แทนด้วยเลขฐานแปด 2 บิท การใช้เลขฐานแปดแทนเลขฐานสองทำให้จำนวนบิทสั้นลง

3).เลขฐานสิบ

คือตัวเลขที่มีค่าไม่ซ้ำกันสิบหลัก (0,1,2,…,9) เป็นเลขฐานที่มนุษย์คุ้นเคยและใช้ในชีวิตประจำวันมากที่สุด ตัวเลขที่มีจำนวนมากกว่า 9 ให้ใช้ 10 ซึ่งเป็นการกลับไปใช้เลข 1 และ 0 อีก เพียงแต่ค่าของ 1 เปลี่ยนไปเป็น 10 เท่าของตัวมันเอง เช่น 333 (สามร้อยสามสิบสาม) แม้จะใช้ตัวเลข 3 ทั้งหมด แต่ตำแหน่งของตัวเลขย่อมมีความหมายตามตำแหน่งของแต่ละหลักนั้น กล่าวคือ หลักหน่วยน้อยกว่าหลักสิบ 10 เท่า หลักสิบน้อยกว่าหลักร้อย 10 เท่า ตามลำดับ

4).เลขฐานสิบหก

เลขฐานสิบหก มีความสัมพันธ์กับเลขฐานสอง คือ เลขฐานสองจำนวน 4 หลัก แทนด้วย
เลขฐานสิบหก 1 หลัก ดังนั้นเราจึงสามารถเขียนเลขฐานสอง 8 บิทแทนด้วยเลขฐานสิบหก 2 บิท การใช้เลขฐานสิบหกแทนเลขฐานสองทำให้จำนวนบิทสั้นลง

ระบบเลขฐาน
เลขฐาน หมายถึงกลุ่มข้อมูลที่มีจำนวนหลัก (Digit) ตามชื่อของฐาน
นั้นๆเช่น เลขฐานสอง ฐานแปด และฐานสิบ ประกอบด้วยข้อมูลตัวเลขจำนวนสองหลัก (0-1) แปดหลัก (0-7) และสิบหลัก (0-9) ตามลำดับ ดังรูปในตารางที่ 1
ในระบบคอมพิวเตอร์มีการใช้ระบบเลขฐาน 4 แบบ ประกอบด้วย
1).เลขฐานสอง (Binary Number)
2).เลขฐานแปด (Octal Number)
3).เลขฐานสิบ (Decimal Number)
4).เลขฐานสิบหก (Hexadecimal Number)

ตารางที่ 1 แสดงจำนวนตัวเลข ของเลขฐานต่างๆ

1).เลขฐานสอง

คือตัวเลขที่มีค่าไม่ซ้ำกันสองหลัก ( 0 และ 1) เป็นเลขฐานเดียวที่เข้ากันได้กับ Hardware ของเครื่องคอมพิวเตอร์ได้โดยตรง เพราะการใช้เลขฐานอื่น จะสร้างความยุ่งยากให้กับเครื่องคอมพิวเตอร์อย่างมาก เช่น เลขฐานสิบมีตัวเลขที่เป็นสถานะที่ต่างกันถึง 10 ตัว ในขณะที่ระบบไฟฟ้ามีเพียง 2 สถานะ ซึ่งในช่วงเวลาหนึ่งๆมีเพียงสถานะเดียวเท่านั้น แต่ละหลักของเลขฐานสอง เรียกว่า Binary Digit (BIT)

2).เลขฐานแปด

เลขฐานแปด มีความสัมพันธ์กับเลขฐานสอง คือ เลขฐานสองจำนวน 3 หลัก แทนด้วยเลข
ฐานแปด 1 หลัก ดังนั้นเราจึงสามารถเขียนเลขฐานสอง 6 บิท แทนด้วยเลขฐานแปด 2 บิท การใช้เลขฐานแปดแทนเลขฐานสองทำให้จำนวนบิทสั้นลง

3).เลขฐานสิบ

คือตัวเลขที่มีค่าไม่ซ้ำกันสิบหลัก (0,1,2,…,9) เป็นเลขฐานที่มนุษย์คุ้นเคยและใช้ในชีวิตประจำวันมากที่สุด ตัวเลขที่มีจำนวนมากกว่า 9 ให้ใช้ 10 ซึ่งเป็นการกลับไปใช้เลข 1 และ 0 อีก เพียงแต่ค่าของ 1 เปลี่ยนไปเป็น 10 เท่าของตัวมันเอง เช่น 333 (สามร้อยสามสิบสาม) แม้จะใช้ตัวเลข 3 ทั้งหมด แต่ตำแหน่งของตัวเลขย่อมมีความหมายตามตำแหน่งของแต่ละหลักนั้น กล่าวคือ หลักหน่วยน้อยกว่าหลักสิบ 10 เท่า หลักสิบน้อยกว่าหลักร้อย 10 เท่า ตามลำดับ

4).เลขฐานสิบหก

เลขฐานสิบหก มีความสัมพันธ์กับเลขฐานสอง คือ เลขฐานสองจำนวน 4 หลัก แทนด้วย
เลขฐานสิบหก 1 หลัก ดังนั้นเราจึงสามารถเขียนเลขฐานสอง 8 บิทแทนด้วยเลขฐานสิบหก 2 บิท การใช้เลขฐานสิบหกแทนเลขฐานสองทำให้จำนวนบิทสั้นลง

การเปลี่ยนฐานเลข (Base Number Conversion)

เนื่องจากตัวเลขในแต่ละฐานมี ค่าคงที่เฉพาะ ในแต่ละหลักของตัวเอง เช่นตัวเลข 100 มีค่าเท่ากับหนึ่งร้อยในระบบเลขฐานสิบ แต่ตัวเลข 100 ในระบบ
เลขฐานสอง (อ่านว่า หนึ่ง-ศูนย์-หนึ่ง) ซึ่งมีค่าเท่ากับ 4 เป็นต้น ดังนั้น จึงไม่สามารถนำค่าของเลขฐานใดๆ ไปคำนวณเปรียบเทียบ กับเลขฐานอื่นได้โดยตรง
เมื่อต้องการคำนวณหรือเปรียบเทียบตัวเลข (ประมวลผล) จำเป็นต้องเปลี่ยนฐานเลขเหล่านั้นให้เป็นฐานเดียวกันก่อน การเปลี่ยนฐานเลขสามารถกระทำได้
หลายวิธี ในหน่วยเรียนนี้จะใช้วิธีที่สะดวกที่สุดวิธีหนึ่ง ดังนี้
ก่อนเปลี่ยนฐานเลขใดๆ จำเป็นต้องทราบค่าคง ที่เฉพาะในแต่ละหลักของเลขฐานสองดังนี้

ตาราง แสดงค่าคงที่เฉพาะในแต่ละหลักของเลขฐานสอง



จากตาราง พบว่าค่าคงที่เฉพาะ จะมีค่าเป็น 2 เท่า จากขวาไปซ้าย
การเปลี่ยนเลขฐานสอง เป็นเลขฐานสิบ
ให้นำค่าคงที่เฉพาะที่ตรงกับเลข 1 ของฐานสองมารวมกัน เช่นจำนวน (11010)2ประกอบด้วยเลข “1” จำนวน 3 ตัว
เมื่อนำค่าคงที่เฉพาะที่ตรงกับเลข 1 มารวมกัน ทำให้ได้จำนวนในฐานสิบเป็น 16+8+2 = 26 ดังนี้

นอกจากนี้การเปลี่ยนเลขฐานสองให้เป็นเลขฐานสิบยังสามารถทำได้โดย นำตัวเลขในแต่ละตำแหน่งคูณด้วยค่าประจำตำแหน่งแล้วนำมารวมกัน

ค่าประจำตำแหน่งของเลขฐานสองเริ่มตั้งแต่ 20,21,22,…
ตัวอย่างเช่น
(1011)2 = (1x23)+(0x22)+(1x21)+(1x20)
= (1x8)+(0x4)+(1x2)+(1x1)
= 8+0+2+1
= 11

การเปลี่ยนเลขฐานสิบ เป็นเลขฐานสอง

ให้พิจารณานำค่าคงที่เฉพาะหลักใดๆมารวมกัน เพื่อให้ได้ค่าเท่ากับเลขฐานสิบที่กำหนด จากนั้นเติมเลข “1“ ณ ตำแหน่งที่นำตัวเลขมารวมนั้น เช่น (26)10จะต้องใช้ค่าคงที่เฉพาะรวมกัน 3 หลัก (16+8+2) ดังนั้นจึงเติม “1” ณ ตำแหน่ง

16,8 และ 2 ตามลำดับ ส่วนตำแหน่งที่เหลือให้เติม “0”




นอกจากนี้ยังสามารถเปลี่ยนค่าจากเลขฐานสิบให้เป็นฐานสอง โดยการหารเลขฐานสิบด้วยสองไปเรื่อยๆจะได้เศษจากการหาร คือ เลขฐานสอง ที่ต้องการ ตำแหน่งของเศษที่เกิดจากการหารก็คือกำลังของเลขฐานสอง นั่นคือเศษที่ได้จากการหารครั้งแรกจะคูณด้วย 20 เศษที่ได้จากการหารด้วย 2 ครั้งที่ 2 จะคูณด้วย 2 1เป็นต้น
ตัวอย่างเช่น
การเปลี่ยนฐานเลข (Base Number Conversion)

เนื่องจากตัวเลขในแต่ละฐานมี ค่าคงที่เฉพาะ ในแต่ละหลักของตัวเอง เช่นตัวเลข 100 มีค่าเท่ากับหนึ่งร้อยในระบบเลขฐานสิบ แต่ตัวเลข 100 ในระบบ
เลขฐานสอง (อ่านว่า หนึ่ง-ศูนย์-หนึ่ง) ซึ่งมีค่าเท่ากับ 4 เป็นต้น ดังนั้น จึงไม่สามารถนำค่าของเลขฐานใดๆ ไปคำนวณเปรียบเทียบ กับเลขฐานอื่นได้โดยตรง
เมื่อต้องการคำนวณหรือเปรียบเทียบตัวเลข (ประมวลผล) จำเป็นต้องเปลี่ยนฐานเลขเหล่านั้นให้เป็นฐานเดียวกันก่อน การเปลี่ยนฐานเลขสามารถกระทำได้
หลายวิธี ในหน่วยเรียนนี้จะใช้วิธีที่สะดวกที่สุดวิธีหนึ่ง ดังนี้
ก่อนเปลี่ยนฐานเลขใดๆ จำเป็นต้องทราบค่าคง ที่เฉพาะในแต่ละหลักของเลขฐานสองดังนี้

ตาราง แสดงค่าคงที่เฉพาะในแต่ละหลักของเลขฐานสอง



จากตาราง พบว่าค่าคงที่เฉพาะ จะมีค่าเป็น 2 เท่า จากขวาไปซ้าย
การเปลี่ยนเลขฐานสอง เป็นเลขฐานสิบ
ให้นำค่าคงที่เฉพาะที่ตรงกับเลข 1 ของฐานสองมารวมกัน เช่นจำนวน (11010)2ประกอบด้วยเลข “1” จำนวน 3 ตัว
เมื่อนำค่าคงที่เฉพาะที่ตรงกับเลข 1 มารวมกัน ทำให้ได้จำนวนในฐานสิบเป็น 16+8+2 = 26 ดังนี้

นอกจากนี้การเปลี่ยนเลขฐานสองให้เป็นเลขฐานสิบยังสามารถทำได้โดย นำตัวเลขในแต่ละตำแหน่งคูณด้วยค่าประจำตำแหน่งแล้วนำมารวมกัน

ค่าประจำตำแหน่งของเลขฐานสองเริ่มตั้งแต่ 20,21,22,…
ตัวอย่างเช่น
(1011)2 = (1x23)+(0x22)+(1x21)+(1x20)
= (1x8)+(0x4)+(1x2)+(1x1)
= 8+0+2+1
= 11

การเปลี่ยนเลขฐานสิบ เป็นเลขฐานสอง

ให้พิจารณานำค่าคงที่เฉพาะหลักใดๆมารวมกัน เพื่อให้ได้ค่าเท่ากับเลขฐานสิบที่กำหนด จากนั้นเติมเลข “1“ ณ ตำแหน่งที่นำตัวเลขมารวมนั้น เช่น (26)10จะต้องใช้ค่าคงที่เฉพาะรวมกัน 3 หลัก (16+8+2) ดังนั้นจึงเติม “1” ณ ตำแหน่ง

16,8 และ 2 ตามลำดับ ส่วนตำแหน่งที่เหลือให้เติม “0”




นอกจากนี้ยังสามารถเปลี่ยนค่าจากเลขฐานสิบให้เป็นฐานสอง โดยการหารเลขฐานสิบด้วยสองไปเรื่อยๆจะได้เศษจากการหาร คือ เลขฐานสอง ที่ต้องการ ตำแหน่งของเศษที่เกิดจากการหารก็คือกำลังของเลขฐานสอง นั่นคือเศษที่ได้จากการหารครั้งแรกจะคูณด้วย 20 เศษที่ได้จากการหารด้วย 2 ครั้งที่ 2 จะคูณด้วย 2 1เป็นต้น
ตัวอย่างเช่น

 

 

หัวข้อสำคัญ

1. ระบบตัวเลข

2. ระบบตัวเลขฐานสิบ

3. ระบบเลขฐานสอง

4. ระบบเลขฐานแปด

5. ระบบเลขฐานสิบหก

6. แบบฝึกหัด

 

1.1ระบบตัวเลข (Number Systems)

ระบบตัวเลขทางพีชคณิตที่นิยมใช้ในระบบดิจิตอลมีอยู่

4

ระบบ คือ

ระบบเลขฐานสิบ (Decimal Number System)

จะมีเลขฐานเป็น 10 นั่นคือ จะใช้สัญลักษณ์หรือหลักที่แตกต่างกันเท่ากับ 10

ในการแสดงค่าของตัวเลข

ระบบเลขฐานสอง (Binary Number System )

จะมีเลขฐานเป็น 2 นั่นคือ จะใช้สัญลักษณ์หรือหลักที่แตกต่างกันเท่ากับ 2

ในการแสดงค่าของตัวเลข

ระบบเลขฐานแปด (Octal Number System

) จะมีเลขฐานเป็น 8 นั่นคือ จะใช้สัญลักษณ์หรือหลักที่แตกต่างกันเท่ากับ 8

ในการแสดงค่าของตัวเลข

ระบบเลขฐานสิบหก (Hexadecimal Number System)

จะมีเลขฐานเป็น 16 นั่นคือ จะใช้สัญลักษณ์หรือหลักที่แตกต่างกันเท่ากับ 16

ในการแสดงค่าของตัวเลข

1.2 ระบบตัวเลขฐานสิบ

ก่อนที่จะเรียนรู้ระบบเลขฐานอื่นๆ จำเป็นที่จะต้องเรียนรู้คุณลักษณะของระบบเลขฐานสิบก่อนระบบเลขฐานสิบนี้จะมีเลขฐานเป็นสิบและคือระบบที่มีค่าตามตำแหน่งซึ่ง หมายความว่า ค่าของมันในแต่ละหลักจะขึ้นอยู่กับตำแหน่งของมัน ซึ่งมีคุณลักษณะดังต่อไปนี้คือ

1) ฐาน (Base)

ฐานของระบบตัวเลขจะถูกกำหนดเป็นค่าของตัวเลขในแต่ละหลัก ซึ่งสามารถเกิดขึ้นในแต่ละตำแหน่งในระบบตัวเลข

ดิจิตอลประยุกต์

31041003 ระบบเลขฐาน พงษ์ พร
2

สัทธา

 

ระบบเลขฐานสิบจะมีฐานเป็นเลข

10 ซึ่งหมายความว่าแต่ละหลักของมันจะประกอบด้วยเลข 10 ตัว เลขเหล่านี้ คือ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 โดยที่ตัวเลขเหล่านี้อาจจะถูกใช้อยู่ในแต่ละตำแหน่งของตัวเลขในระบบนี้ได้ ตัวอย่างการเขียนเลขฐาน เช่น 456 จะเขียนเป็นเลขฐาน 10 คือ (456)10 หรือ 456 ตามปกติจะเป็นที่รู้กันว่าถ้าตัวเลขที่ไม่มีเลขฐานเขียนอยู่คือตัวเลขฐาน

10

2) ค่าของตำแหน่ง (Position Value)

ค่าของตัวเลขในแต่ละหลักจะมีค่าคงที่และขึ้นอยู่กับตำแหน่งของมัน

(หรือน้ำหนักของมัน) ตัวอย่างเช่นค่าของ 2 ในตัวเลข 200 จะไม่เท่ากับค่าของ 2 ในตัวเลข 20 เป็นต้น ในลักษณะ เช่นเดียวกันค่าของ 3 ในแต่ละหลักจะมีค่าแตกต่างกันดังรูปที่

1.1

 

รูปที่ 1.1 แสดงค่าของ 3 ในแต่ละหลักในระบบเลขฐาน 10

ในลักษณะคล้าย ๆ กัน เช่น เลข (4,831)10 สามารถแตกค่าในแต่ละหลักออกมาได้ดังนี้ คือ (4,831)10 =

4 x 103

+

8 x 102

+

3 x 101

+

1 x 100

หลักที่ 4

หลักที่ 3

หลักที่ 2

หลักที่ 1

ดิจิตอลประยุกต์ 31041003 ระบบเลขฐาน พงษ์ พร

2

สัทธา

ระบบเลขฐานสิบจะมีฐานเป็นเลข

10 ซึ่งหมายความว่าแต่ละหลักของมันจะประกอบด้วยเลข 10 ตัว เลขเหล่านี้ คือ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 โดยที่ตัวเลขเหล่านี้อาจจะถูกใช้อยู่ในแต่ละตำแหน่งของตัวเลขในระบบนี้ได้ ตัวอย่างการเขียนเลขฐาน เช่น 456 จะเขียนเป็นเลขฐาน 10 คือ (456)10 หรือ 456 ตามปกติจะเป็นที่รู้กันว่าถ้าตัวเลขที่ไม่มีเลขฐานเขียนอยู่คือตัวเลขฐาน

10

2) ค่าของตำแหน่ง (Position Value)

ค่าของตัวเลขในแต่ละหลักจะมีค่าคงที่และขึ้นอยู่กับตำแหน่งของมัน

(หรือน้ำหนักของมัน) ตัวอย่างเช่นค่าของ 2 ในตัวเลข 200 จะไม่เท่ากับค่าของ 2 ในตัวเลข 20 เป็นต้น ในลักษณะ เช่นเดียวกันค่าของ 3 ในแต่ละหลักจะมีค่าแตกต่างกันดังรูปที่

1.1

 

รูปที่ 1.1 แสดงค่าของ 3 ในแต่ละหลักในระบบเลขฐาน 10

ในลักษณะคล้าย ๆ กัน เช่น เลข (4,831)10 สามารถแตกค่าในแต่ละหลักออกมาได้ดังนี้ คือ (4,831)10 =

4 x 103

+

8 x 102

+

3 x 101

+

1 x 100

หลักที่ 4

หลักที่ 3

หลักที่ 2

หลักที่ 1

ดิจิตอลประยุกต์ 31041003 ระบบเลขฐาน พงษ์ พร

3 สัทธา ซึ่งจะเห็นได้ชัดเจนว่าเลขยกกำลัง 10 ทางด้านซ้ายของจุดทศนิยมจะมีค่าเริ่มตั้งแต่ 0 เป็นต้นไป ส่วนเลขยกกำลัง 10 ทางด้านขวาของจุดทศนิยมจะมีค่าเริ่มตั้งแต่ -1

เป็นต้นไป

1.3 ระบบเลขฐานสอง

ระบบเลขฐานสองจะเหมือนกับระบบเลขฐานสิบ คือ ประกอบด้วยฐานและค่าของตำแหน่งในแต่ละหลัก

1) ฐาน (Base)

ดิจิตอลประยุกต์ 31041003 ระบบเลขฐาน พงษ์ พร 4 สัทธา จะเห็นได้ว่าค่าของบิทที่ 4 ทางด้านซ้ายของจุดทศนิยมจะมีค่าสูงสุด และ ถูกเรียกว่า หลักที่มีค่ามากที่สุด ในลักษณะคล้าย ๆ กัน บิทที่ 3 ทางด้านขวาของจุดทศนิยมจะมีค่า ต่ำสุด และถูกเรียกว่าหลักที่มีค่าน้อยที่สุด หรือ LSD ( Least Significant Digit) ตัวอย่างของค่าเสมือนทางเลขฐานสิบของเลขฐานสองของ 1010.1012 สามารถแสดงได้ดังนี้คือ

1010.1012 = (1x23)+(0x22)+(1x21)+(0x20)+(1x2-1)+(0x2-2)+(1x2-3)

ค่าทางเลขฐานสิบของ 1010.1012 = 8 + 0 + 2 + 0 + 21 + 0 + 81

= 10.62510

ตามที่กล่าวมาแล้วข้างต้นว่าค่าของตำแหน่งของเลขฐานสองจะมีลักษณะคือ ค่าของเลขทางด้านซ้ายของจุดทศนิยมจะมีค่าเพิ่มขึ้นตามเลขยกกำลังของ 2 โดยเริ่มจากเลขยกกำลัง 0 เป็นต้นไป ส่วนค่าของเลขทางด้านขวาของจุดทศนิยมจะมีค่าลดลงตามเลขยกกำลังของ 2 โดย เริ่มจากเลขยกกำลัง-1 เป็นต้นไป ดังรูปที่ 1.3 ค่าของตำแหน่งในเลขฐานสอง

24 23 22 21 20 . 2-1 2-2 2-3 2-4

ค่าของตำแหน่งเสมือนทางฐาน

สิบของเลขฐานสอง

16 8 4 2 1 . 21 41 81 161

ฐานของระบบเลขฐานสองคือ

2 เพราะว่าใช้เลข 2 หลักคือ 0 และ 1 ในทางดิจิตอล จะเรียกหลักของเลขฐานสองว่าบิท (bit) ตัวเลขในระบบเลขฐานสองทุกจำนวนจะประกอบด้วยตัวเลข 0 และ 1 เท่านั้น ตัวอย่างเช่น 10, 100 และ 1001 ซึ่งอ่านว่า หนึ่ง-ศูนย์, หนึ่ง-ศูนย์-

ศูนย์

และหนึ่ง

-ศูนย์-ศูนย์-หนึ่ง ตามลำดับ เพื่อหลีกเลี่ยงการสับสนในการอ่านค่าตัวเลขในระบบเลขฐานสิบอีกวิธีหนึ่งที่สามารถป้องกันความสับสนในการอ่านค่าในระบบเลขฐานสอง และระบบเลขฐานสิบ คือ เขียนเลขฐานห้อยไว้ ตัวอย่าง เช่น 1010, 10010, 3,62510 เป็นเลขฐานสิบ 102 , 1002, 10012

เป็นเลขฐานสอง เป็นต้น

2) ค่าของตำแหน่ง (Position Value)

ค่าของตำแหน่งในระบบเลขฐานสองจะมีลักษณะเหมือนกับเลขฐานสิบ คือ ค่าในแต่ละหลักจะมีน้ำหนักต่างกัน อย่างไรก็ตามค่าของตำแหน่งในแต่ละบิทจะสอดคล้องกับเลขยกกำลัง

2 ค่าของตำแหน่งทางด้านซ้ายของจุดทศนิยมจะเพิ่มขึ้นจากเลขยกกำลัง 0 ของ 2 ไปตามลำดับ ส่วนค่าของตำแหน่งทางด้านขวาของจุดทศนิยมจะลดลงจากเลขยกกำลัง -1 ของ 2 ไปตามลำดับ ตัวอย่างเช่น การกระจายค่าของ 1010.1012 ดังรูปที่

1.2

MSB

LSB

1

0

1

0

i

1

0

1

23

22

21

20

2-1

2-2

2-3

การพัฒนาระบบสารสนเทศ

การพัฒนาระบบสารสนเทศ

ความจำเป็นในการพัฒนาระบบสารสนเทศ

1. การเปลี่ยนแปลงกระบวนการบริหารและการปฏิบัติงาน ระบบเดิมไม่สามารถให้ข้อมูลหรือทำงานได้ตามต้องการ มีการดำเนินงานหลายขึ้นตอน ยุ่งยากในการรวบรวมข้อมูลเพื่อนำมาจัดทำข้อมูลสรุปสำหรับการติดตามการปฏิบัติงานโดยรวมขององค์การ จึงจำเป็นต้องพัฒนาหรือปรับปรุงระบบสารสนเทศที่สามารถช่วยให้ขั้นตอนการปฏิบัติงานภายในและกระบวนการบริหารมีประสิทธิภาพมากขึ้น

2. การเปลี่ยนแปลงด้านเทคโนโลยี เทคโนโลยีที่ใช้อยู่ในระบบสารสนเทศปัจจุบันล้าสมัย ค่าช้จ่ายในการบำรุงรักษาระบบมีราคาสูง จึงต้องรับเอาเทคโนโลยีใหม่ๆ มาประยุกต์ใช้ซึ่งทำให้มีการเปลี่ยนแปลงระบบการทำงานที่มีอยู่เดิม

3. การปรับองค์การและสร้างความได้เปรียบในการแข่งขัน

- ระบบที่ใช้งานอยู่ปัจจุบันมีขั้นตอนการทำงานที่ยุ่งยากซับซ้อน ขนาดเอกสารอ้างอิงหรือเอกสารที่มีอยู่ไม่ได้มารตรฐาน ทำให้การปรับปรุงหรือแก้ไขทำได้ยาก

- ความต้องการปรับองค์การให้เหมาะสมเพื่อสามารตอบสนองต่อการเปลี่ยนแปลงสภาพแวดล้อมทางธุรกิจ

- ระบบปัจจุบันไม่สามารถรองรับการเปลี่ยนแปลงในอนาคตได้

การพัฒนาระบบประกอบด้วย

1) กระบวนการทางธุรกิจ (Business Process) เกี่ยวข้องกับวัตถุประสงค์ เป้าหมาย และขั้นตอนการดำเนินธุรกิจขององค์การ

- การปรับปรุงคุณภาพ

- การติดตามความล้มเหลวจากการดำเนินงาน

- การปรับค่าตอบแทนของพนักงานโดยใช้การปรับปรุงคุณภาพเป็นดัชนี

- การค้นหาและแก้ไขสาเหตุที่แท้จริงของความล้มเหลว

2) บุคลากร (People)

3) วิธีการและเทคนิค (Methodology and Technique) การเลือกใช้วิธีการและเทคนิคที่เหมาะสมกับลักษณะของระบบเป็นสิ่งสำคัญ

4) เทคโนโลยี (Technology) เทคโนโลยีมีการเปลี่ยนแปลงอย่างรวดเร็วจึงต้องมีการพิจารณาอย่างรอบคอบในการเลือกใช้เทคโนโลยีสารสนเทศให้มีความเหมาะสมกับลักษณะขอบเขตของระบบสารสนเทศแล ะงบประมาณที่กำหนด

5) งบประมาณ (Budget)

6) ข้อมูลและโครงสร้างพื้นฐานภายในองค์การ (Infrastructure)

7) การบริหารโครงการ (Project Management)

ทีมงานพัฒนาระบบ

การพัฒนา IT เกี่ยวข้องกับบุคคลที่มีหน้าที่รับผิดชอบกระบวนการพัฒนาระบบหลายกลุ่ม โดยทั่วไปจะมีการทำงานเป็นทีมที่ต้องอาศัยความรู้ ประสบการณ์ และทักษะจากกลุ่มบุคคล

1) คณะกรรมการ (Steering Committee)

2) ผู้บริหารโครงการ (Project Manager)

3) ผู้บริหารหน่วยงานด้านสารสนเทศ (MIS Manager)

4) นักวิเคราะห์ระบบ (System Analyst) ควรมีทักษะในด้านต่างๆ คือ

- ทักษะด้านเทคนิค

- ทักษะด้านการวิเคราะห์

- ทักษะดานการบริหารจัดการ

- ทักษะด้านการติดต่อสื่อสาร

5) ผู้ชำนาญการทางด้านเทคนิค

- ผู้บริหารฐานข้อมูล (Database Administrator : DBA)

- โปรแกรมเมอร์ (Programmer)

6) ผู้ใช้และผู้จัดการทั่วไป (User and Manager)

หลักในการพัฒนาระบบสารสนเทศให้มีประสิทธิภาพ

1) คำนึงถึงเจ้าของและผู้ใช้ระบบ

2) เข้าถึงปัญหาให้ตรงจุด ซึ่งมีแนวทางการแก้ปัญหาที่เป็นระบบมีขั้นตอนดังนี้
- ศึกษาทำความเข้าใจในปัญหาที่เกิดขึ้น

- รวบรวมและกำหนดความต้องการ

- หาวิธีการแก้ปัญหาหลายๆ วิธีและเลือกวิธีที่ดีที่สุด

- ออกแบบและทำการแก้ปัญหาตามวิธีที่เลือก

- สังเกตและประเมินผลกระทบจากวิธีแก้ปัญหาที่นำมาใช้ และปรับปรุงวิธีการให้มีประสิทธิภาพมากที่สุด

3) กำหนดขั้นตอนหรือกิจกรรมในการพัฒนาระบบ

4) กำหนดมาตรฐานในการพัฒนาระบบ

5) ตระหนักว่าการพัฒนาระบบเป็นการลงทุนประเภทหนึ่ง

6) เตรียมความพร้อมหากจะต้องยกเลิกหรือทบทวนระบบสารสนเทศที่กำลังพัฒนา

7) แตกระบบสารสนเทศที่จะพัฒนาออกเป็นระบบย่อย

8) ออกแบบระบบให้สามารถรองรับต่อการขยายหรือการปรับเปลี่ยนในอนาคต

ขั้นตอนในการพัฒนาระบบสารสนเทศ

- การกำหนดและเลือกโครงการ (System Identification and Selection)

- การเริ่มต้นและวางแผนโครงการ (System Initiation and Planning)

- การวิเคราะห์ระบบ (System Analysis)

- การออกแบบระบบ (System Design)

- การพัฒนาและติดตั้งระบบ (System Implementation)

- การบำรุงรักษาระบบ (System Maintenance)

การพัฒนาระบบมีรูปแบบต่างๆ

1. การพัฒนาระบบแบบน้ำตก (Waterfall Model) แต่ละขั้นตอนของการพัฒนาระบบจะเริ่มได้ก็ต่อเมื่อได้ทำขั้นตอนก่อนหน้านี้เสร็จเรียบร้อยและจะไม่ย้อนกลับไปทำขั้นตอนก่อนหน้านี้อีก

2. การพัฒนาระบบแบบน้ำตกที่ย้อนกลับขั้นตอนได้ (Adapted Waterfall ) เป็นรูปแบบการพัฒนาที่หากดำเนินการในขั้นตอนใดอยู่สามารถย้อนกลับไปขั้นตอนก่อนหน้านี้ได้เพื่อแก้ไขข้อผิดพลาดหรือ
เพื่อต้องการความชัดเจน

3. การพัฒนาระบบอย่างรวดเร็ว (Rapid Application Development) เป็นรูปแบบการพัฒนาที่มีการทำซ้ำบางขั้นตอนจนกว่าขั้นตอนต่างๆ ของระบบที่สร้างจะได้รับการยอมรับ

4. การพัฒนาระบบในรูปแบบขดลวด (Evolutionary Model SDLC) เป็นการพัฒนาระบบแบบวนรอบเพื่อให้การพัฒนาระบบมีความรวดเร็วโดยการพัฒนาระบบจะเริ่มจากแกนกลาง ในรอบแรกของการพัฒนาจะได้ ระบบรุ่น(Version) แรกออกมาและจะปรับปรุงให้ดีขึ้นในรุ่นที่สอง และดำเนินการแบบนี้ไปเรื่อยๆจนกว่าจะได้รุ่นที่สมบูรณ์

วงจรการพัฒนาระบบ

Phase 1 การกำหนดและเลือกสรรโครงการ (System Identification and Selection) ผลของการพิจารณาของคณะกรรมการอาจเป็นไปได้ดังนี้

- อนุมัติโครงการ

- ชะลอโครงการ

- ทบทวนโครงการ

- ไม่อนุมัติโครงการ

Phase 2 การเริ่มต้นและวางแผนโครงการ (System Initiation and Planning) จะเริ่มจัดทำโครงการ โดยจัดตั้งทีมงานพร้อมทั้งกำหนดหน้าที่และความรับผิดชอบ

- การศึกษาความเป็นไปได้

- การพิจารณาผลประโยชน์หรือผลตอบแทนที่จะได้รับจากโครงการ

- การพิจารณาค่าใช้จ่ายหรือต้นทุนของโครงการ

- การวิเคราะห์ความคุ้มค่าของการพัฒนาระบบสารสนเทศ

Phase 3 การวิเคราะห์ระบบ (System Analysis) ในขั้นตอนนี้จะเกี่ยวกับการเก็บข้อมูล

- Fact-Finding Technique

- Joint Application Design (JAD)

- การสร้างต้นแบบ

Phase 4 การออกแบบระบบ (System Design) การออกแบบแบ่งเป็น 2 ส่วน

- การออกแบบเชิงตรรกะ (Logical Design)

- การออกแบบเชิงกายภาพ (Physical Design)

Phase 5 การดำเนินการระบบ (System Implementation) ซึ่งจะครอบคลุมกิจกรรมดังต่อไปนี้

- จัดซื้อหรือจัดหาฮาร์ดแวร์ (Hardware) และซอฟต์แวร์ (Solfware)

- เขียนโปรแกรมโดยโปรแกรมเมอร์ (Coding)

- ทำการทดสอบ (Testing)

- การจัดทำเอกสารระบบ (Documentation)

- การถ่ายโอนระบบงาน (System Conversion)

- ฝึกอบรมผู้ใช้ระบบ (Training)


Phase 6 การบำรุงรักษาระบบ (System Maintenance)

เป็นขั้นตอนการดูและระบบเพื่อให้ระบบมีประสิทธิภาพในการทำงานโดยบุคลากรทางด้านเทคโนโลยีสารสนเทศมีหน้าที่ในส่วนนี้

การบำรุงรักษาระบบแบ่งได้ 4 ประเภท

- Corrective Maintenance เพื่อแก้ไขข้อผิดพลาดของระบบ

- Adaptive Maintenance เพื่อให้ระบบสามารถรองรับความต้องการที่เพิ่มขึ้น

- Perfective Maintenance เพื่อบำรุงรักษาระบบให้ทำงานได้อย่างมีประสิทธิภาพ

- Preventive Maintenance เพื่อบำรุงรักษาระบบป้องกันข้อผิดพลาดที่จะเกิด

การพัฒนาโปรแกรม

nattakorn View my profile

Recommend

    Favourites

    Categories

      วงจรการพัฒนาโปรแกรม

      posted on 20 Mar 2009 15:36 by itm0069

      คอมพิวเตอร์เป็นอุปกรณ์อิเล็กทรอนิกส์อย่างหนึ่ง ซึ่งสามารถทำงานได้ด้วยตัวเอง แต่สามารถทำงาน ได้ตามชุดคำสั่ง ในโปรแกรมที่ป้อนเข้าสู่เครื่อง ซึ่งจะทำงานตามคำสั่งที่ละคำสั่ง โดยคำสั่งที่ เครื่องคอมพิวเตอร์สามารถเข้าใจได้ จะต้องอยู่ในรูปแบบของภาษาเครื่อง ถ้าเขียนโปรแกรมด้วยภาษาอื่น ที่ไม่ใช่ภาษาเครื่องก็ต้องมีตัวแปลมาช่วยแปลคำสั่งเหล่านั้นให้เป็นภาษาเครื่อง ซึ่งตัวที่มาช่วยแปลนี้เรียกว่า ตัวแปลภาษา เช่น Compiler หรือ Interpreter

      ในการเขียนโปรแกรมหรือพัฒนาโปรแกรมนั้น โปรแกรมเมอร์ หรือ ผู้เขียนโปรแกรม ต้องมี การเตรียมงาน เกี่ยวกับ การเขียนโปรแกรมอย่างเป็นขั้นตอน เรียกขั้นตอนเหล่านี้ว่า วงจรการพัฒนาโปรแกรม (Program Devenlopment Life Cycle:PDLC) ประกอบด้วย 6 ขั้นตอนตามลำดับดังนี้

      1. ขั้นวิเคราะห์ความต้องการ (Requirement Analysis and Feasibility Study)
      2. ขั้นวางแผนแก้ไขปัญหา (Algorythm Design)
      3. ขั้นดำเนินการเขียนโปรแกรม (Program Coding)
      4. ขั้นทดสอบและแก้ไขโปรแกรม (Program Testing and Debugging)
      5. ขั้นการเขียนเอกสารประกอบ (Documentation)
      6. ขั้นบำรุงรักษาโปรแกรม (Program maintenance)

      ภาพที่ 2.1 วงจรการพัฒนาโปรแกรม (Program Devenlopment Life Cycle:PDLC)

      วิธีการทางคอมพิวเตอร์ เป็นขั้นตอนในการจัดทำโปรแกรม ที่ช่วยให้การเขียนโปรแกรม ดำเนินการอย่างมีประสิทธิภาพและได้ผลลัพธ์ตามความมุ่งหมาย เพราะแต่ละขั้นตอนจะช่วยให้เกิดความเป็นระเบียบ การเรียบเรียงแนวคิดมีความชัดเจน ไม่สับสน และเกิดความง่ายต่อการเขียนและพัฒนาโปรแกรม แม้ว่าปัจจุบันจะมีวิธีการสมัยใหม่เกิดขึ้น เช่นแนวคิดการเขียนโปรแกรมเชิงวัตถุ แต่วิธีการทางคอมพิวเตอร์ ยังเป็นสิ่งที่จำเป็น และน่ากระทำ โดยเฉพาะอย่างยิ่ง ผู้ที่เริ่มต้นใหม่กับงานเขียนโปรแกรม เพราะช่วยให้แนวคิดของการพัฒนาโปรแกรม เป็นระเบียบไม่สับสน

      ภาษาโปรแกรมคอมพิวเตอร์

      ภาษาโปรแกรมคอมพิวเตอร์

      บทที่ 1 ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรม

      ประวัติการพัฒนาภาษาปาสคาล

      ประมาณปี พ.ศ. 2514 ดร.นิคลอล เวียร์ต (Professor Doctor Nicklaus Wirth) ชาวเมืองซูริค ประเทศสวิตเซอร์แลนด์ ได้พัฒนาภาษาสำหรับเขียนโปรแกรมคอมพิวเตอร์ขึ้นมาภาษาหนึ่ง ซึ่งจุดมุ่งหมายหลักในการพัฒนาภาษานี้ คือ ให้เป็นภาษาสำหรับฝึกเขียนโปแกรมสั่งงานคอมพิวเตอร์อย่างมีระบบและมีระเบียบ และได้กำหนดให้ภาษาใหม่นี้มีชื่อว่า ภาษาปาสคาล (Pascal Language) เพื่อเป็นเกียรติแก่ Blaise Pascal นักคณิตศาสตร์และปรัชญาแมธีชาวฝรั่งเศสผู้สร้างเครื่องคิดเลขเครื่องแรกของโลก

      ภาษาปาสคาลมีต้นแบบมาจากภาษา ALGOL (Algorithmic Language) และตัวภาษาปาสคาลเองก็ได้ถูกพัฒนาต่อไปเป็นภาษาที่รู้จักกันในชื่อต่าง ๆ เช่น ภาษา MODULA2 ภาษา Ada ซึ่งเป็นภาษาที่ได้รับการคาดหมายว่าจะได้รับความนิยมในอนาคต แต่เป็นภาษาใหม่ที่มีโครงสร้างซับซ้อน

      การเขียนโปรแกรมด้วยภาษาปาสคาลต้องเขียนโปรแกรมแบบมีโครงสร้างและมีระเบียบ แบบแผน เป็นภาษาที่ไม่มีหมายเลขบรรทัดแต่ทำงานตามลำดับโครงสร้างของโปรแกรม ดังนั้นภาษาปาสคาลเหมาะกับการศึกษาภาษาที่ใช้งานกับเครื่องคอมพิวเตอร์โดย ตรงและวิธีการเขียนโปรแกรมที่ถูกต้องเพื่อนำไปใช้ในการเขียนโปรแกรมภาษาชั้น สูงอื่น ๆ และ ภาษาเครื่อง รวมทั้งซอฟต์แวร์กึ่งสำเร็จรูป ต่อไปได้

      สัญลักษณ์เบื้องต้น (Basic Symbol)

      สัญลักษณ์ที่ใช้ในภาษาปาสคาลแบ่งออกได้เป็น 3 พวก ได้แก่

      1. letter ได้แก่ A-Z , a-z และ มีขีดล่าง (_ อ่านว่า Underscore)

      2. digit ได้แก่ 0-9 3 . Special symbol สัญลักษณ์พิเศษได้แก่ + - * / = ^ () [] {}. , : ; ' # $

      หมายเหตุ ไม่มีความแตกต่างระหว่างอักษรพิมพ์ใหญ่และอักษรพิมพ์เล็ก

      คำอธิบาย

      โดยหลักการเขียนโปรแกรมด้วยภาษาปาสคาลแล้วจะต้องเขียนโปรแกรมให้ถูกต้องตามรูปแบบของคำสั่งภาษาซึ่งจะมีความหมายในตัวเองแล้ว แต่บางครั้งถ้าต้องการคำอธิบายเพิ่มเติมเพื่อสร้างความเข้าใจสามารถเขียนคำอธิบายเพิ่มเติมไว้ได้ในเครื่องหมาย { } ซึ่งสิ่งที่อยู่ในเครื่องหมาย { } ภาษาปาสคาลจะไม่ทำการคอมไพ

      การเขียนคำอธิบายอาจจะเขียนอยู่ในโปรแกรม คือ ตั่งแต่คำว่า PROGRAM จนถึงคำว่า END. หรือจะอยู่นอกโปรแกรมก็ได้ เช่น

      ตัวอย่าง 1.3.1 การเขียนคำอธิบายในโปรแกรม

      Program Show Name;

      Uses Crt;

      Ch : Char;

      Begin

      {โปรแกรมแนะนำตนเอง}

      Clrscr;

      Writeln(‘อรทัย ชัยรัตนศักดิ์’);

      Writeln(‘โปรแกรมวิทยาการคอมพิวเตอร์ ’);

      Writeln(‘สถาบันราชภัฎพิบูลสงคราม’);

      Ch := read key;

      End.

      ตัวอย่าง 1.3.2 การเขียนคำอธิบายนอกโปรแกรม

      {โปรแกรมแนะนำตนเอง}

      Program Show Name;

      Uses Crt;

      Ch : Char;

      Begin

      Closure;

      Written(‘อรทัย ชัยรัตนศักดิ์’);

      Written(‘โปรแกรมวิทยาการคอมพิวเตอร์ ’);

      Written(‘สถาบันราชภัฎพิบูลสงคราม’);

      Ch := read key;

      End.

      ชื่อ (Identifier)

      ชื่อ ได้แก่ ชื่อที่ใช้ในโปรแกรม เช่น ใช้เป็นชื่อโปรแกรม ชื่อตัวแปร ชื่อตัวคงที่ ชื่อ procedure ชื่อ Function ชื่อประกอบขึ้นจาก letter หรือ digit แต่จะต้องไม่ขึ้นต้นด้วย digit และจะต้องไม่มีช่องว่างในส่วนประกอบเหล่านี้ ชื่อต้องมีความยาวอย่างน้อย 1 อักขระ แต่ไม่เกิน 127 อักขระ หรือไม่เกิน 1 ไลน์ (Line)

      ตัวอย่าง

      1. ต่อไปนี้เป็น identifier

      power ,Supper ,x_bar ,X2

      2. ต่อไปนี้ไม่เป็น identifier

      4time ไม่เป็นเพราะขึ้นต้นด้วยตัวเลข

      No. ไม่เป็นเพราะมีเครื่องหมาย .

      name#5 ไม่เป็นเพราะมีเครื่องหมาย #

      xy 8 ไม่เป็นเพราะมีช่องว่าง

      คำในภาษาปาสคาล (Word)

      Word ได้แก่คำที่ใช้ในปาสคาลแบ่งออกได้เป็น

      1. คำสงวน (Reserved Word) ได้แก่คำที่ใช้ในการกำหนดรูปแบบต่าง ๆ ในProgram ตามข้อกำหนดของภาษาปาสคาล ซึ่งคำสงวนนี้ไม่สามารถเปลี่ยนแปลงแก้ไขได้ และไม่สามารถนำมาตั้งเป็นชื่อได้

      2. คำมาตรฐาน (Standard Word) ได้แก่คำที่เป็น Procedure หรือ Functionมาตรฐาน เป็นคำที่เปรียบเสมือนคำสั่งในโปรแกรม แต่ตัวมันเองเป็นโปรแกรม สามารถนำคำมาตรฐานมาเป็นชื่อได้แต่ไม่ควรทำเพราะจะทำให้เสียความหมายเดิมไป จึงต้องระวังอย่ากำหนดชื่อให้ซ้ำกับคำมาตรฐาน คำมาตรฐานได้แก่คำที่กำหนดใหม่ (User defined Word) โดยผู้ใช้ ซึ่งอาจจะเขียนเป็น Procedure หรือ Function และต้องไม่เป็นคำที่ปรากฏในข้อ 1, 2

      ค่าคงที่ (Constants)

      ค่าคงที่ (Constants) คือ ค่าที่กำหนดขึ้นมาใช้ในโปรแกรม โดยค่าคงที่นี้จะไม่มีการเปลี่ยนแปลงค่านั้นอีกตลอดการรันโปรแกรมนั้น ๆ เช่น

      ‘G’ เป็นค่าคงที่แบบอักขระ

      ‘Computer’ เป็นค่าคงที่แบบสตริง

      2546 เป็นค่าคงที่แบบตัวเลข

      หมายเหตุ

      1. ค่าคงที่แบบอักขระและแบบสตริงต้องอยู่ในเครื่องหมายคำพูดเดี่ยวเท่านั้น ( ‘) และภายในเครื่องหมายคำพูดหากมีการเว้นช่องว่างจะถือว่าเป็นอักขระตัวหนึ่ง คือเป็นช่องว่างเมื่อออกจอภาพ

      2. 2456 เป็นค่าคงที่แบบตัวเลข อ่านว่า สองพันสี่ร้อยห้าสิบหก สามารถนำไปทำการคำนวณทางคณิตศาสตร์ได้ แต่ถ้าเขียนไว้ในเครื่องหมายคำพูด ’2456’ จะเป็นค่าคงที่แบบสตริง อ่านว่า สองสี่ห้าหก ไม่สามารถนำมาทำการคำนวณทางคณิตศาสตร์ได้

      แบบของข้อมูล (Data Type)

      แบบของข้อมูล (Data Type) คือ การกำหนดคุณสมบัติให้กับตัวแปรข้อมูลชนิดนั้น ๆ ซึ่งแต่ละภาษาจะมีแบบของข้อมูลที่กำหนดมาให้เป็นมาตรฐานแล้ว เช่น Integer Real Boolean Char หรือผู้ใช้สามารถกำหนดแบบของข้อมูลชนิดใหม่ขึ้นมาใช้ได้ด้วยตัวเอง เช่น String Array

      ตัวแปร (Variables)

      ตัวแปร (Variables) คือ การตั้งชื่อหน่วยความจำที่ใช้ในการอ้างถึงหน่วยความจำที่เก็บข้อมูลในภาษาเครื่องโดยอ้างถึงแอดเดรส สามารถอ่านค่าและเปลี่ยนแปลงค่าได้ตลอดเวลา

      สำหรับขนาดของหน่วยความจำของแต่ละข้อมูลหรือแต่ละตัวแปรนั้น จะมีขนาดไม่เท่ากัน ขึ้นกับแบบของข้อมูลของตัวแปรนั้น ๆ และตัวแปรแต่ละตัวถ้ากำหนดมาสำหรับแบบข้อมูลแบบไหนจะเก็บข้อมูลแบบนั้นได้ เท่านั้นไม่สามารถเก็บข้อมูลแบบอื่น ๆ ได้ การกำหนดตัวแปร เช่น

      Var I : Integer;

      R : Real;

      Ch : Char;

      St : String(10);

      เป็นการกำหนดตัวแปร I เก็บข้อมูลแบบ Integer คือจำนวนเต็ม R เป็นตัวแปรเก็บข้อมูลแบบจำนวนจริง Ch เป็นตัวแปรเก็บข้อมูลแบบอักขระ และ St เป็นตัวแปรเก็บข้อมูลแบบสตริงยาวไม่เกิน 10 อักขระ

      การให้ค่าคงที่ตัวแปร (Aassignment Variables )

      เมื่อกำหนดตัวแปรแล้ว การดำเนินการทำสำคัญกับตัวแปร คือ การให้ค่ากับตัวแปร ซึ่งทำได้ 2 วิธีการ คือ

      1. การอ่านจากอุปกรณ์ภายนอก เช่น การรับข้อมูลจากคีย์บอร์ด การอ่านค่าจากไฟล์ข้อมูล

      2. การให้ค่าแก่ตัวแปรในโปรแกรม การให้ค่าแก่ตัวแปรในโปรแกรม ด้วยเครื่องหมาย := หมายความว่า เอาค่าที่อยู่ทางด้านซ้ายมือของเครื่องหมาย มาเก็บไว้ที่ตัวแปรที่อยู่ทางด้านขวามือของเครื่องหมาย สิ่งที่อยู่ทางด้านซ้ายมือของเครื่องหมาย ต้องเป็นตัวแปรครั้งละ 1 ตัวเท่านั้น ส่วนสิ่งที่อยู่ทางด้านขวามือของเครื่องหมาย สามารถเป็นได้ คือ

      1. ค่าคงที่ เช่น Num: = 3; เป็นการให้ค่า 3 แก่ตัวแปร Num

      Name: = ‘อรทัย’; เป็นการให้ค่าอรทัยแก่ตัวแปร Name

      2. ตัวแปร เช่น Sum: = Num; เป็นการให้ค่า Num แก่ตัวแปร Sum ดังนั้น Sum ก็จะมีค่า 3 ตามค่าของ Num

      3. นิพจน์ทางคณิตศาสตร์ เช่น Sum: = Num + 5; จะนำค่า Num มาเพิ่มอีก 5 แล้วให้ค่าแก่ตัวแปร Sum ดังนั้น Sum จะมีค่าเป็น 8

      Num := Num + 1; จะนำค่า Num มาเพิ่มอีก 1 แล้วเก็บค่าไว้ที่ Num เหมือนเดิม ดังนั้น Num จะมีค่า เป็น 4

      4. ฟังก์ชั่น เช่น Ch := Chr (125); เป็นการนำค่า 125 มาทำการแปลงด้วยคำสั่ง Chr ซึ่งเป็นการอ่านค่าตามรหัส ASCII ให้แก่ตัวแปร Ch

      คณิตศาสตร์บูลีน (Boolean algebra)

      คณิตศาสตร์บูลีน (Boolean Algebra) เป็นการดำเนินกรรมวิธีทางตรรกตัวดำเนินการ (Operators) ที่ใช้มากและมีในภาษาปาสคาลได้ได้ AND, OR และ XOR เรียกว่าตัวดำเนินการบูลีน (Boolean Operators) AND ให้ความเป็นจริงเมื่อเงื่อนไขเป็นจริงทั้งหมด นอกนั้นอีก 3 กรณีเป็นเท็จ OR ให้ความเป็นจริงเมื่อเงื่อนไขอันใดอันหนึ่งเป็นจริง ให้ความเป็นเท็จเมื่อเงื่อนไขเป็นเท็จทั้งหมด XOR ให้ความเป็นจริงเมื่อเงื่อนไขอันใดอันหนึ่งเป็นจริงเพียงหนึ่งเดียวเท่านั้น ถ้าเหมือนทุกเงื่อนไขจะเป็นเท็จ

      operator operation operanal type result type

      AND arithmetic and Integer Integer

      AND logical and Boolean Boolean

      OR arithmetic or Integer Integer

      OR logical or Boolean Boolean

      XOR arithmetic xor Integer Integer

      XOR logical xor Boolean Boolean

      ตัวอย่าง ตารางตรรกศาสตร์บูลีน

      X Y AND OR XOR

      true true true true false

      true false false true true

      false true false true true

      false false false false false

      ตัวดำเนินการ (Operators)

      ตัวดำเนินการ (Operators) คือ เครื่องหมายที่ใช้ในการดำเนินกรรมวิธี เช่น เครื่องหมาย บวก ลบ คูณ หาร เป็นต้น กรรมวิธีในการดำเนินการในภาษาปาสคาล กระทำเช่นเดียวกับพีชคณิต คือ จะให้ข้อมูลทางซ้ายของตัวดำเนินการเป็นตัวตั้ง และให้ข้อมูลทางขวาของตัวดำเนินการเป็นตัวกระทำ

      operator operation operanal type result type

      + addition Real, Real Real

      + addition Integer, Integer Integer

      + addition Real, Integer Real

      - subtraction Real, Real Real

      - subtraction Integer, Integer Integer

      - subtraction Integer, Real Real

      * multiplication Real, Real Real
      * multiplication Integer, Integer Integer
      * multiplication Real, Integer Real
      / division Real, Real Real
      / division Integer, Integer Real
      / division Real, Integer Real
      DIV division Integer Integer
      MOD modules Integer Integer

      หมายเหตุ
      DIV เป็นการหารแบบปัดเศษทิ้ง
      MOD เป็นเศษของการหาร

      ตัวอย่าง
      123/4 = 30.75
      123 DIV 4 = 30