www.pctodaythailand.com facebook.com/pctoday twitter.com/pctoday pctoday@aspirers.com
STAFF
ดร. ครรชิต มาลัยวงศ ประทีป ยงเขต อ�ำพล สงวนศิริธรรม จิระ หองส�ำเริง คมสัน เหลาศิลปเจริญ วิโรจน อัศวรังสี บัณฑิต คุปพิทยานันท บรรณาธิการผู้พิมพ์ผู้โฆษณา : กิตติพงศ ตันสุวรรณ ที่ปรึกษากิตติมศักดิ์ : ที่ปรึกษานิตยสาร :
Editorial Staff บรรณาธิการบริหาร : บรรณาธิการเทคนิค : หัวหน้ากองบรรณาธิการ : ผู้สื่อข่าวอาวุโส : บรรณาธิการฝ่ายศิลป์ :
กิตติพล มูลพินิจ kittipon@aspirers.com ชัยรัตน์ คุ้มโภคา จิระเดช โชติช่วง จิราภรณ กิตติจนั ทรขจร jiraporn@aspirers.com ศิริพรรณ ตันตินีรนาท siripan@aspirers.com วิลัยพร มงคลแพทย wilaiporn@aspirers.com
Sales Staff Senior Account Executive : พันธทิพย กชจรัสศรี Sale@aspirers.com
Back Office ฝ่ายจัดจ�ำหน่าย : สมาชิกสัมพันธ์ : จัดจ�ำหน่ายโดย : ร้านแยกสี : พิมพ์ที่ :
เยาวมาลย เจริญผล yaowamanc@aspirers.com ธิดา เลิศสุรพิบูล member@aspirers.com เพ็ญบุญ โทร. 0-2615-8625 บริษัท พีพี เพลท แอนด ฟลม จ�ำกัด โทร. 0-2274-7988-91 โรงพิมพ พิมพดี โทร. 0-2401-9401
บริษัท ดิแอสไพเรอรสกรุป จ�ำกัด
431/6 อาคารสาธรเพลส ชั้น 2 ถนนกรุงธนบุรี แขวงคลองตนไทร เขตคลองสาน กรุงเทพฯ 10600 โทรศัพท 0-2440-0330 โทรสาร 0-2440-0338
ยอดขายอันดับ 1 สำ�รวจโดย ซีเอ็ดบุกเซ็นเตอร ขอมูลอัพเดตสุด วัดจาก “ยอดขายจริง” ไมใช “โพลส”
การสงบทความมาลงตีพิมพ ในนิตยสาร
นิตยสาร PC Today ยินดีพจิ ารณาบทความจากบุคคล ภายนอก โดย กรุณาสงมาทีก่ องบรรณาธิการ นิตยสาร PC Today ตาม ทีอ่ ยูข อง บริ ษั ท ข า งต น ส� ำ หรั บ ต น ฉบั บ ที่ ส ง มา ขอให อ ยู ใ นรู ป แบบ ของเท็ ก ซ ไ ฟล ห รื อ จะเป น ไมโครซอฟท เ วิ ร ด ก็ ไ ด พร อ มภาพ ประกอบขอเขียนเหลานัน้ โดยทางบริษทั จะพิจารณาคาเรือ่ งเพือ่ ตอบแทนตามมาตรฐานบริษัทฯ ตอไป อนึ่ง เนื่องจากบริษัทฯ ไมรับบทความที่เปนการละเมิดลิขสิทธิ์ของผูใด ดังนั้น ขอเขียน ดังกลาวตองไมเปนการละเมิดลิขสิทธิผ์ อู นื่ ผูใ ด และหากเปนการ รวบรวม และเรียบเรียงขึน้ ใหมจากตนฉบับอันมีลขิ สิทธิจ์ ากแหลง ไหน โปรดระบุที่มาโดยละเอียด และสงส�ำเนาแนบมาดวย หมายเหตุ : ทรรศนะและขอคิดที่ปรากฏอยูในบทความตางๆ ของนิตยสาร PC Today เปนความคิดเห็นสวนตัวของผูเขียน แตละทาน ไมจ�ำเปนตองเปนความคิดเห็นของบริษัทฯ เสมอ ไป และขอเขียนที่นักเขียนภายนอกสงมา หากมิไดปฏิิบัติตาม ขอก�ำหนดขางตน และมีการละเมิดลิขสิทธิเ์ กิดขึน้ ทางบริษทั ฯ จะไมขอรับผิดชอบแตประการใด
สอบถามขอสงสัยในเรื่องบทความ
ในกรณีที่ต องการถามปญ หาทางเทคโนโลยี เรื่องเทคนิค ใน การใชงานโปรแกรมตางๆ และเรื่องบทความ เนื่องจากทาง บริษัทฯ ไมสะดวกที่จะใหบุคคลภายนอกติดตอกองบก. และ นักเขียนนอกโดยตรงตลอดเวลา ดังนัน้ กรุณาสงจดหมาย ค�ำถาม ติดตอมาไดที่กองบรรณาธิการ นิตยสาร PC Today ตามที่อยู
การสมัครสมาชิกและการเปลี่ยนที่อยู
กรุ ณ าหาแบบฟอร ม สมั ค รสมาชิ ก และอ า นรายละเอี ย ด ไดในทายเลม ส�ำหรับผูสงสัยเพิม่ เติมกรุณาโทรศัพทสอบถามได ที่ฝายสมาชิก โทร. 0-2439-7644 ตอ 212, 224, 777
การขออนุญาตและพิมพซ�้ำ
บทความที่ ตี พิ ม พ ใ นนิ ต ยสาร PC Today สงวนสิ ท ธิ์ ต าม พระราชบัญญัติลิขสิทธิ์ พ.ศ. 2537 กรณีที่ตองการน�ำสวนหนึ่ง สวนใดของนิตยสารไปใชโปรดติดตอไดที่ บรรณาธิการบริหาร นิตยสาร PC Today ตามทีอ่ ยู หรืออีเมล และเบอรโทรศัพทขา งตน
การแจงขาวผลิตภัณฑ ใหม และบริการอื่นๆ
บริ ษั ท ใดที่ ต อ งการประชาสั ม พั น ธ ผ ลิ ต ภั ณ ฑ ข องตน ให ส ง รายละเอียดพรอมรูปถายผลิตภัณฑมาไดที่กองบรรณาธิการ นิตยสาร PC Today อนึ่ง ทางกองบรรณาธิการขอสงวนสิทธิ์ใน การพิจารณาเลือกตีพิมพให ตามเหมาะสม
การรับรูความเปนเจาของลิขสิทธิ์ และเครื่องหมายการคา
เนื่องจากนิตยสาร PC Today ไมสามารถประกาศความเปน เจาของลิขสิทธิ์และเครื่องหมายการคาที่มีอยูมากใหค รบถ ว น สมบูรณ อีกทั้งความนิยมในลิขสิทธิ์ และเครื่องหมายการคา ดังกลาวมักเปลี่ยนแปลงตลอดเวลา ดังนั้น ทางกองบรรณาธิการ จะประกาศ ความเปนเจาของลิขสิทธิ์เฉพาะที่มีการกลาวถึง ในบทความ ประกอบลงในบทความนั้ น ๆ เลย และถ า สิ ท ธิ์ ดังกลาวเปนที่รับรูกันโดยทั่วไปแลว ทางนิตยสารขอสงวนสิทธิ์ ทีจ่ ะไมกลาวซ�ำ้ ทัง้ นีเ้ พือ่ ประโยชนในการเขียนบทความใหกระชับ นาอาน
CONTENTS Vol. 10 | ISSUE 132 | 2014 DIY 66 ประกอบเครื่องพีซีแบบ IP-PBX ตอนที่ 2 : การประกอบเครื่อง และการติดตั้งซอฟต์แวร์ Elastix
Mac Mania
32
Geek Programming
25
Photo Lover
117
OpenEmu สุดยอดโปรแกรมเล่นเกม (โบราณ) บนแมค
10 เทคนิคการใช้ Bitwise เขียนโปรแกรมให้รันเร็วขึ้น ขยับท่าทางในรูปได้เองตามใจสั่ง
Smart Story
40
Special Scoop
8
9 แอพเวิร์ดคู่ใจ คนใช้แท็บเล็ต
NVIDIA Regional Press Conference เผยโฉมชิปกราฟิกตัวแรกในตระกูล Maxwell และเทคโนโลยีที่ช่วยแสดง ผลกราฟิกได้ราบรื่น
13
18
School 3.0
13
Quick Start
18 25
32
Smart Action
51
แนะนำ�แอพเคมีเจ๋งๆ สำ�หรับเด็กมัธยม
ลงทุนขุด BitCoin วันนี้ สายไปหรือไม่? Shoot’ em All ยิงแม่ม (ฟรีๆ) กับ 14 เกมส์ ชู้ตติ้งดีๆ เล่นฟรีไม่หมกเม็ด
40
51
CONTENTS Vol. 10 | ISSUE 132 | 2014 Try Before Buy
130
Street Product PR News
126 144
• Genius Luxepad 9100 • Razer Deathstaiker Essential 2014 • Galaxy GeForce GTX 760 GC • Genius Imperator Pro White Edition • Brother ADS-1100W • I-MEGO THRONE GOLD
130
Smart Software
78
Inside Windows 8
105
Tech Inside
136
สุดยอด 5 แอพคีย์บอร์ด สำ�หรับสมาร์ทโฟนแอนดรอยด์ เทคนิคจูนอัพวินโดวส์ 8 ให้เร็วขึ้น แบบมือโปร ตอบคำ�ถามตามใจเกมเมอร์... มี HD 7870 สมควรอัพเป็น R9 270X มั้ย
Win 7 Hot Tip
93
93
117
66
78 59
106
126
136
EDITOR TALK
EDITOR TALK
โดย กิตติพล มูลพินิจ
“ ใช้แท็บเล็ตพิมพ์เวิร์ด ใครว่ายาก ” จะว่าไปแล้ว แท็บเล็ตนี่ถือเป็นนวัตกรรมที่เปลี่ยนชีวิตคนท�ำงานได้ไม่น้อยเลยนะครับ ใครจะไป คิดว่าสิ่งที่เราเห็นในหนังวิทยาศาสตร์ไซ-ไฟจะสามารถใช้ได้ในชีวิตจริง เพียงแค่เวลาไม่กี่ปีแท็บเล็ต มีบทบาทส�ำคัญทั้งในและนอกเวลาท�ำงาน จนผมอดคิดไม่ได้ว่าเด็กที่เกิดยุคนี้ที่เกิดมาพร้อมแท็บเล็ต จนอาจคิดว่าโน้ตบุ๊กกับพีซี คือของล้าสมัยไปเสียแล้ว แน่นอนว่าเราต้องปรับตัวตามเทคโนโลยี การท�ำงานหลายๆ อย่างต้องเปลี่ยนแปลงเพื่อความ สะดวก รวดเร็ว ให้ทันกับโลกที่หมุนเร็วขึ้น ทุกวันนี้ เราจึงเห็นหลายๆ คนท�ำงานกันบนแท็บเล็ตเป็นหลัก ไม่ใช่เฉพาะเช็กเมล์ ดูเว็บ อ่านข่าวเท่านั้น แต่เราพิมพ์งานกันบนแท็บเล็ตแล้วครับ! ท�ำเอกสารเมโม ไฟล์น�ำเสนอ สรุปการประชุม ท�ำตัวเลขยอดขาย และงานรูทีนประจ�ำออฟฟิศ ทุกอย่างเดี๋ยวนี้ท�ำบนแท็บเล็ตกันได้แล้ว ไม่ว่าจะ เป็นไอโอเอสหรือแอนดรอยด์ ต่างก็มีแอพส�ำหรับงาน เอกสารให้เลือกใช้มากมาย ทั้งฟรีและเสียเงิน เพื่อเป็นข้อมูลให้หลายๆ ท่านที่ยังลังเลว่า ควรจะใช้แท็บเล็ตมาพิมพ์เวิร์ดดีหรือไม่ PCToday จึงขอแนะน�ำแอพ 9 ตัวที่ถือว่าดีที่สุดส�ำหรับการท�ำงานเอกสารบนแท็บเล็ตยุคนี้ คละกันไปทั้งฟรี และไม่ฟรี ให้ผู้อ่านได้เลือกใช้ตามความพอใจ ขอให้สนุกกับการพิมพ์เวิร์ดบนแท็บเล็ตนะครับ www.pctodaythailand.com
7
SPECIAL SCOOP โดย กองบรรณาธิการ
NVIDIA Regional Press Conference เผยโฉมชิปกราฟิกตัวแรกในตระกูล Maxwell และเทคโนโลยีที่ช่วยแสดงผลกราฟิกได้ราบรื่น ยลโฉม Geforce 750 & GTX 750 Ti ชิปเซ็ตกราฟิก รุ่นล่าสุดในตระกูล Maxwell ที่ตอบโจทย์การใช้งาน ระดับกลาง ประสิทธิภาพดี ในราคาที่เอื้อมถึง พร้อมด้วย เทคโนโลยี ตอบสนอง การใช้งานด้านกราฟิก ได้อย่างราบรื่น และสมูทกว่า
เมื่อวันที่ 13 กุมภาพันธ์ ที่ผ่านมา ทีมงาน PC Today มีโอกาส เข้าร่วมงาน NVIDIA Regional Press Conference อัพเดตผลิตภัณฑ์ และเทคโนโลยีใหม่ๆ จากทาง Nvidia ที่น่าสนใจ หลายๆ อย่าง และทีมงานก็ไม่พลาดที่จะมา บอกเล่าให้ผู้อ่านได้ชมกันเหมือนเช่นเคย โดยส�ำหรับภายในงานนี้ มีการพูดถึงผลิตภัณฑ์ และเทคโนโลยีของ Nvidia ที่น่าสนใจ แบ่งได้เป็น 3 ส่วนหลักๆ ดังต่อไปนี้
Geforce GTX750&750Ti กราฟิกใหม่ โค้ดเนม MaxWell
ถือว่าเป็นไฮไลท์ของงานนี้เลยก็ว่าได้ ส�ำหรับ การเปิดเผยข้อมูลชิปกราฟิกใหม่ 2 รุ่นใหม่ 8
PC Today VOL. 10 | ISSUE 132
SPECIAL SCOOP Geforce GTX 750 และ Geforce GTX 750 Ti ที่ใช้สถาปัตยกรรมใหม่ โค้ดเนม “Maxwell” ก่อนงาน เปิดตัวจริง ซึ่งถึงแม้ว่าจะเป็นเพียงชิปกราฟิก ในระดับกลางทั่วๆ ไป ไม่ใช่กราฟิกในซีรีย์ใหม่ ตระกูล 8xx อย่างที่ใครๆ หลายคนคาดหวังเอาไว้ แต่ก็ด้วยประสิทธิภาพ และฟีเจอร์ต่างๆ ที่มีอยู่ในตัวชิป ก็สร้างความน่าสนใจให้กับเราได้ไม่น้อย
สิ่งที่เปลี่ยนไปในสถาปัตยกรรมใหม่นี้ ที่ดูจะชัดเจนที่สุดคือ การจัดระเบียบการท�ำงานของแต่ละ SM ใหม่ ลดขนาดของคอนโทรลโลจิกให้เล็กลง กระจายการท�ำงานออกไปให้มากขึ้น ช่วยให้เพิ่ม ประสิทธิภาพการท�ำงานต่างๆ ได้ดีขึ้นประมาณ 135% พร้อมทั้งยังสามารถลดการใช้พลังงานลงได้ ท�ำให้ชิปกราฟิกรุ่นใหม่นี้ มีอัตราประสิทธิภาพต่อการใช้พลังงานดีขึ้นเป็น 2 เท่า จากสถาปัตยกรรม “Kepler” ในรุ่นก่อนหน้า
www.pctodaythailand.com
9
SPECIAL SCOOP พร้อมฟีเจอร์ต่างๆ ที่ท�ำให้การเล่นเกมส์ และงานกราฟิก สะดวก ง่าย และลื่นไหลสมูทมากขึ้น ไม่ว่าจะเป็น GaneWork ที่มีทั้ง PhysX, หรือ TXAA เป็นต้น Geforce Experience ที่มีฟีเจอร์เด็ด อย่าง ShadowPlay Technology สามารถแคปเจอร์ภาพนิ่ง และวิดีโอ เพื่อแชร์ไปยังโซเชียลมีเดีย รูปแบบต่างๆ ระหว่างเล่นเกมส์แบบ FullHD 1080p ได้ โดยไม่รบกวนประสิทธิภาพในการเล่นเกมส์ เทคโนโลยี GameStream ที่สามารถสตรีมเกมส์ต่างๆ ไปยังเครื่อง SHIELD และต่อออกจอมอนิเตอร์ ได้ในคุณภาพระดับ Full HD โดยการผนวกชุดค�ำสัง่ แบบ H.264 ไว้ในตัวชิปกราฟิก เพือ่ การประมวลผล ภาพระดับไฮเดฟได้รวดเร็วมากขึ้น
สเปกคร่าวๆ ของชิปเซ็ตกราฟิกทั้ง 2 รุ่น ซึ่งอาจจะไม่แตกต่างกันมากนัก มีส่วนของจ�ำนวน Cuda Core และ Memory ที่แตกต่างกันอยู่เล็กน้อยรวมถึง ก�ำลังไฟที่ใช้เพียง 55-60 วัตต์เท่านั้น สามารถใช้ได้กบั เครือ่ ง Mini-ITX หรือ พีซรี นุ่ เก่าทีก่ ำ� ลังเพาเวอร์ซพั พลายอยูท่ ปี่ ระมาณ 300 วัตต์ ขึน้ ไป ไม่ตอ้ งมีสายไฟ 6 Pin เลี้ยงกราฟิกการ์ดก็ใช้งานได้
G-Sync ซิงค์ภาพกับมอนิเตอร์ได้สมูทไหลลื่นมากกว่า
อีกหนึ่งฟีเจอร์เด่นในงานนี้ มีการพูดถึงเทคโนโลยี G-Sync ที่น่าจะมาทดแทน เทคโนโลยี V-Sync แบบเดิม ที่พบปัญหาการท�ำงานของจีพียูจะถูกล็อคการท�ำงานให้สัมพันธ์กับความเร็วในการเปลี่ยน ภาพของหน้าจอมอนิเตอร์ เพื่อป้องกันการเกิด “Tearing” หรือภาพซ้อน เพราะหน้าจอมอนิเตอร์ เปลี่ยนภาพไม่ทัน กับภาพที่กราฟิกประมวลผล แต่ V-Sync เองก็ยังมีปัญหาอยู่ อยู่กับภาพบางช็อต ที่ใช้เวลาประมวลผลสูงกว่าระยะเวลาในการเปลี่ยนภาพของหน้าจอ ท�ำให้ภาพที่ได้มีอาการกระโดด หรือกระตุกให้เห็น 10
PC Today VOL. 10 | ISSUE 132
SPECIAL SCOOP
แต่ด้วยความสามารถของเทคโนโลยี G-Sync ใหม่นี้จะเข้าไปจัดการรอบของการเปลี่ยนภาพ หน้าจอมอนิเตอร์ให้เหมาะสมกับการประมวลผลภาพของจีพียูด้วย ท�ำให้ภาพที่ได้ออกมาดูสมูท ไหลลื่นมากกว่า ไม่มีอาการ “Tearing” หรืออาการสะดุดของภาพ เทคโนโลยีนี้ มีพร้อมแล้ว ในมอนิเตอร์ของค่ายผู้ผลิต 4 หลักๆ เท่าที่มีการเปิดเผยในขณะนี้
Tegra K1 จากชิปโมบาย สู่ยานยนต์อัฉริยะ
ปิดท้ายด้วยเรื่องราวของ ชิป Tegra K1 ที่เคยสร้างความฮือฮาในงาน CES2014 เมื่อต้นปีที่ ผ่านมา ตอนนี้ทาง Nvidia ก�ำลังมีโครงการที่จะพัฒนา ให้เข้าไปอยู่เป็นส่วนหนึ่งของยานยนต์อัจฉริยะ www.pctodaythailand.com
11
SPECIAL SCOOP
ด้วยอุปกรณ์ที่เรียกว่า Tegra K1 VCM ซึ่งจะเป็นซุปเปอร์คอมพิวเตอร์ ภายในรถยนต์ สามารถ ประมวลผลได้อย่างรวดเร็วถึง 384 GFLOPS ท�ำงานควบคุมระบบต่างๆ ภายในโดยเฉพาะระบบ ความปลอดภัยของรถ ที่จะสามารถควบคุม รวมถึงแจ้งเตือนผู้ขับขี่ ทั้งเรื่องการเดินทาง เส้นทาง ป้ายสัญลักษณ์ และป้ายเตือนต่างๆ ได้ นับว่าเป็นอีกหนึ่งนวัตกรรมที่จะมาเปลี่ยนรูปแบบการขับขี่ รถยนต์ในอนาคตเลยก็ว่าได้
12
PC Today VOL. 10 | ISSUE 132
SCHOOL 3.0
SCHOOL 3.0
โดย @eka_x (www.aofapp.com)
แนะนำ�แอพเคมีเจ๋งๆ สำ�หรับเด็กมัธยม วันนี้ผู้เขียนขอยกระดับแอพเพื่อการศึกษาสักนิด โดยแอพแรกที่จะแนะน�ำนี้ น่าจะมีประโยชน์ ส�ำหรับเด็กมัธยมขึ้นไป โดยเฉพาะมัธยมปลายที่เรียนสายเคมีอยู่ มาดูกันเลยครับว่าเป็นแอพอะไร และเจ๋งแค่ไหน www.pctodaythailand.com
13
SCHOOL 3.0
Chemio ราคา : 1.99 เหรียญ เหมาะกับ : นักเรียนมัธยมขึ้นไป ฝึกทักษะ : เสริมความรู้วิชาเคมี ทั้งเรื่องตารางธาตุ การค�ำนวณต่างๆ
ยาขมส�ำหรับนักเรียนที่เรียนวิชาเคมีต้องผ่านไปให้ได้นั้นมีหลายอย่างนะครับ แต่หลักๆ เลย ก็เรื่องตารางธาตุ ที่ต้องจ�ำกันไม่รู้จักจบสิ้นกับธาตุนับร้อยชนิดที่มีคุณสมบัติทางเคมีแตกต่างกัน วันนี้จึงอยากแนะน�ำแอพดีๆ ที่น่าจะช่วยให้ชีวิตนักเรียนวิทยาศาสตร์ดีขึ้น สักนิดสักหน่อยก็ยังดี Chemio เป็นแอพที่แสดงข้อมูลหลายอย่างเกี่ยวกับเคมีนะครับ เริ่มตั้งแต่ตารางธาตุที่แสดงสี จัดหมวดหมู่ธาตุอย่างชัดเจน ธาตุไหนอยู่ในหมวด Halogen หรือ Alkaline Earth ก็ดูได้ง่ายๆ แล้ว เมือ่ แตะไปทีช่ อื่ ธาตุ ก็แสดงข้อมูลทีจ่ ำ� เป็น เช่น รัศมีของอะตอมหรือมวลให้ดงู า่ ยๆ และทีเ่ จ๋งคือ Chemio สามารถแสดงธาตุนั้นๆ ออกมาเป็นโมเดล 3 มิติได้เลย เห็นชัดๆ ว่าธาตุต่างๆ มีการจัดเรียงอะตอม
14
PC Today VOL. 10 | ISSUE 132
SCHOOL 3.0
อย่างไร นอกจากนี้ยังมีตารางแสดงการละลาย ในน�้ำของสารต่างๆ หรือ Solubility Table ให้ด้วย (ซึ่งในฐานะอดีตนักเรียนวิทยาศาสตร์ เมื่อสิบกว่าปีที่แล้ว ก็นึกไม่ออกว่าเราต้องดู ตารางนี้ตอนไหนนะ) และเครื่องมือสุดท้ายที่มี ในแอพคือเครือ่ งค�ำนวณโมล (Molar Calculator) สามารถป้อนสูตรเข้าไปค�ำนวณได้ทันที
Chemio ค่อนข้างเป็นแอพเฉพาะทางส�ำหรับ นักเรียนสายวิทยาศาสตร์เท่านั้นนะครับ คนเขียน บทความเองก็มีความรู้เรื่องเคมีน้อยกว่าหางอึ่ง ส่วนใหญ่ก็คืนอาจารย์ที่เคารพรักไปหมดแล้ว ก็หวังว่าแอพตัวนี้จะมีประโยชน์ส�ำหรับนักเรียน ที่ต้องฟันฝ่าข้อสอบกันนะครับ www.pctodaythailand.com
15
SCHOOL 3.0
Toca House ราคา: 2.99 เหรียญ เหมาะกับ: เด็กอายุ 4 ขวบขึ้นไป ฝึกทักษะ: เสริมทักษะการใช้ชีวิต กระตุ้นให้เด็กเรียนรู้งานบ้าน และอยากช่วยพ่อแม่
เราเคยน�ำเสนอแอพจาก Toca Boca มาหลายตัวแล้วนะครับ ซึ่งค่ายนี้ต้องบอกเลยว่าท�ำแอพ ส�ำหรับเด็กได้ดีทุกตัว ผมก็คงทยอยน�ำเสนอไปเรื่อยๆ จนกว่าจะหมดค่าย ก็หวังว่าพี่ท่านจะท�ำแอพ ใหม่ออกมาเรื่อยๆ ให้เราได้น�ำเสนอกันได้ตลอดไป ส�ำหรับแอพที่จะมาแนะน�ำในครั้งนี้คือ Toca House เกมที่สอนเด็กๆ ให้รู้จักการท�ำงานบ้าน เผื่อว่าจะอยากช่วยคุณพ่อคุณแม่ท�ำความสะอาดบ้าง เหตุการณ์ของ Toca House นั้นเกิดขึ้นในบ้านหลังหนึ่งที่มีสมาชิก 5 คนกับบ้าน 5 ชั้น แถมสนาม หน้าบ้านอีกหนึ่งครับ ซึ่งแต่ละสถานที่จะมีหนึ่งตัวละครที่ก�ำลังจะท�ำอะไรสักอย่างอยู่ให้เราเข้าไปช่วย โดยมีเกมอย่างน�ำส่งพัสดุไปรษณียใ์ ห้ถกู ต้องตามรูปผูร้ บั หรือเอาจดหมายเข้ากล่องตามภาพให้ถกู ต้อง
16
PC Today VOL. 10 | ISSUE 132
SCHOOL 3.0
เกมเช็ดกระจกหน้าต่างให้ใส สวยงามจนมองเห็นด้านนอก เกมแยกผลไม้ เกมรีดเสื้อ เกมตากผ้า เกมซักผ้าที่ต้องเอาผ้าใส่เครื่องให้หมดก่อน แล้วจึงกดเครื่องซักผ้า เกมกวาดพื้น ถูพื้นให้สะอาด เกมจัดเรียงของเข้าตู้เย็น เกมล้างจาน เกมจุดเตาผิง เกมติดกรอบรูป เกมอาบน�้ำ เกมจัดกลุ่มใบไม้ ดอกไม้ เกมตัดหญ้า สรุปรวมแล้ว Toca House มีเกมย่อยๆ ถึง 19 เกมให้เล่นเลยแหละครับ โดยทุกเกมนั้นเข้าใจง่าย สามารถเล่นจบในเวลารวดเร็ว เมื่อเล่นจบหนึ่งเกมตัวการ์ตูนใน Toca House ก็จะแสดงความดีใจแบบออกนอกหน้า ประมาณว่าให้ก�ำลังใจที่เราเป็นเด็กดี และเปลี่ยน กิจกรรมในบ้านที่ก�ำลังท�ำอยู่ไปเรื่อยๆ ให้ผู้เล่นได้เลื่อนขึ้นเลื่อนลงไปมาในบ้านหากิจกรรมที่น่าเข้าไป ช่วยเพื่อนชาว Toca และเมื่อเล่นไปสักพักหนึ่งก็จะ หมดวัน ทุกคนในบ้านจะไปนอน ซึ่งก็เป็นถือเป็น การพักไม่ให้เด็กๆ เล่นอยู่หน้าจอนานเกินไปด้วย ด้วยประสบการณ์ของ Toca Boca ท�ำให้ เกมที่ออกแบบมาส�ำหรับเด็กอายุ 2-6 ขวบเกมนี้ ไม่มีการซื้อ in-app หรือมีโฆษณาใดๆ ทั้งนั้น ป้องกันไม่ให้เด็กเล็กกดผิดไปเจออะไรแปลกๆ หรือกดซื้อของจนผู้ปกครองต้องเสียเงินโดยไม่รู้ตัว www.pctodaythailand.com
17
QUICK START โดย กิตติ ไทยเจริญสุจริตทำ�
ลงทุนขุด BitCoin วันนี้ สายไปหรือไม่? บิตคอยน์ เกิดขึ้นมาเมื่อ ปี 2009 (5 ปีที่แล้ว) ผู้สร้าง บิตคอยน์ไม่มีหลักฐานแน่ชัด แต่มกี ารคาดกันว่าเป็นชาวญีป่ นุ่ มีชื่อว่า ซาโตชิ นากาโมโตะ บิตคอยน์ คือ การผสมกัน อย่างสมบูรณ์แบบระหว่าง เทคโนโลยีคอมพิวเตอร์ขั้นสูง และระบบเศรษฐศาสตร์
18
PC Today VOL. 10 | ISSUE 132
ในที่นี้ผมจะไม่กล่าวถึงข้อมูลเชิงเทคนิค อันซับซ้อน แต่จะกล่าวให้ผู้อ่านเข้าใจถึงการได้มา และการใช้งานบิตคอยน์เท่านั้น เพื่อปรับความเข้าใจให้ตรงกัน เรามาท�ำความ เข้าใจกับบางสิ่งบางอย่างเกี่ยวกับบิตคอยน์ก่อน • บิตคอยน์ เป็นเพียงข้อมูลดิจิตอลเป็น ชุดข้อมูล ไม่สามารถจับต้องได้จริง • บิตคอยน์ มีการก�ำหนด ปริมาณสูงสุดไว้ที่ 21 ล้านบิตคอยน์ จะไม่มีมากไปกว่านี้ • เราเก็บบิตคอยน์ใว้ใน wallet (กระเป๋าเงิน) • wallet มีทั้งแบบเก็บใว้ในเครื่องเราและแบบ บริการออนไลน์ที่มีความปลอดภัยน่าเชื่อถือได้
QUICK START
• การเข้าถึง wallet ต้องใช้รหัสผ่านที่มีแต่เจ้าของเท่านั้นที่รู้ ในปัจจุบันยังไม่สามารถมีใครแฮ็ก wallet ได้แบบตรงๆ • การจ่ายเงิน โอนเงิน ท�ำได้โดยการกรอกเลขที่ wallet แล้วสั่งจ่าย สั่งโอนเงิน หรือ ใช้การสแกน บาร์โค้ดเพื่อความสะดวก • สามารถสร้างบาร์โค้ดเอาไปติดสินค้า เช่น ติดที่แผงแตงโม เมื่อลูกค้าใช้สมาร์ทโฟนสแกน ลูกค้าจะเห็นรายละเอียดราคา และขึ้นค�ำสั่งให้ยืนยันจ่ายเงิน เมื่อลูกค้ากดจ่ายเงินแล้วคนขาย ก็จะได้รับการแจ้งเตือนว่ามีคนจ่ายเงิน ผู้ขายก็เอาแตงโมใส่ถุงให้ลูกค้าได้เลย • และที่ส�ำคัญที่สุด บิตคอยน์ไม่มีการควบคุมและไม่มีใครหยุดมันได้ ลองนึกภาพเกมส์ออนไลน์ที่เราทุกคนในโลกนี้เป็นผู้เล่น ทุกคนมีบัญชีส่วนตัว (Wallet) ที่สามารถ สร้างได้ไม่จ�ำกัด มีแต่เราเท่านั้นที่รู้รหัสผ่านเข้าไปสั่งโอนเงินไปให้ใครก็ได้ที่เราอยากจะส่งไปให้ โดยผู้รับจะได้รับบิตคอยน์ในเวลาไม่กี่นาที โดยมีค่าธรรมเนียมการโอนบิตคอยน์น้อยมากๆ
การแลก BitCoin เป็นเงินสด
สามารถแลกเปลี่ยนบิตคอยน์เป็นเงินสดจริงๆ ได้ โดยมีวิธีการดังนี้ 1. ขายตามเว็บที่รับซื้อ เช่น www.btc-e.com แล้วเว็บนั้นๆ จะจ่ายเงินเข้าบัญชีธนาคารของเรา แต่จะมีค่าธรรมเนียมค่อนข้างสูง 2. ขายกับคนที่พอใจจะซื้อในราคาที่ตกลงกัน โดยอาจอ้างอิงราคาจากเว็บที่ได้รับการยอมรับ เช่น www.btc-e.com เป็นต้น www.pctodaythailand.com
19
QUICK START เมื่อเราเข้าใจถึงการใช้งานแล้ว ท�ำอย่างไรเราถึงจะมีบิตคอยน์ใว้ใช้ ในที่นี้ผมจะขอเปรียบเทียบ บิตคอยน์กับทองค�ำนะครับ โดยการที่เราจะได้บิตคอยน์มามี 2 วิธีคือ
1. ซื้อเอาเลยตรงๆ
ในสังคมออนไลน์ตามเว็บต่างๆ หรือใน Facebook สามารถประกาศรับซื้อบิตคอยน์เมื่อตกลง ราคากันได้ ซื้อขายกันโดยอาจอ้างอิงราคาจาก www.btc-e.com และค่าเงินบาทในช่วงเวลานั้นๆ การซื้อขายมีความเสี่ยง กรุณาเลือกซื้อขายจากคนที่ใว้ใจ เพื่อป้องกันการโกง การโอนเงินให้ก่อนมี อันตราย ก่อนจ่ายเงินต้องแน่ใจจริงๆ ว่าจะได้รับบิตคอยน์จริงๆ ทางที่ดี ควรซื้อ ขายกันต่อหน้า ในสถานที่เปิดเผยไม่อันตรายและไม่ควรโอนเงินให้ก่อน
2. การท�ำเหมืองบิตคอยน์
คือการใช้อุปกรณ์ในการถอดรหัสเพื่อค้นหาบิตคอยน์ เราสามารถใช้คอมพิวเตอร์ที่เราใช้อยู่ทุกวัน นี้ขุดบิตคอยน์ได้ โดยใช้ซีพียูของคอมพิวเตอร์ประมวลผล การใช้ซีพียูถอดรหัสสามารถท�ำได้ แต่จะให้ประสิทธิภาพต�่ำ ถอดรหัสได้ช้า นักพัฒนา คอมพิวเตอร์จึงได้พัฒนาการขั้นต่อไปให้ใช้หน่วยประมวลผลกราฟิก (GPU) ในกราฟิกการ์ด หรือการ์ดจอ ซึ่งมีความสามารถในการประมวลผลทางคณิตศาสตร์ได้ดีกว่าซีพียูหลายเท่า 20
PC Today VOL. 10 | ISSUE 132
QUICK START
GPU ที่มีประสิทธิภาพสูงในปัจจุบันจะมี 2 ยี่ห้อดังๆ คือ 1. AMD (ATI) และ 2. Nvidia โดย ประสิทธิภาพในการถอดรหัสค้นหาบิตคอยน์ AMD จะท�ำได้ดีกว่าเมื่อเทียบในรุ่นที่มีราคาใกล้เคียง กัน และในรุ่นที่มีราคาสูงมากขึ้นจะสามารถประมวลผลเพื่อถอดรหัสได้ดีขึ้น แต่ก็จะมีอัตราการใช้ พลังงานไฟฟ้าสูงมากขึ้น ความร้อนของระบบคอมพิวเตอร์ก็สูงมากขึ้น นักพัฒนาคอมพิวเตอร์จึงได้ พัฒนาอุปกรณ์เฉพาะทางส�ำหรับถอดรหัสบิตคอยน์ออกมาเรียกว่า ASIC BitCoin Miner หรือ ASIC Miner
www.pctodaythailand.com
21
QUICK START
ASIC คืออุปกรณ์ที่ออกแบบเฉพาะทาง ในที่นี้ออกแบบเพื่อถอดรหัสบิตคอยน์โดยเฉพาะ เมื่อเทียบประสิทธิภาพต่อราคาต่ออัตราการใช้พลังงานไฟฟ้า (การประหยัดไฟฟ้า) ASIC จะท�ำได้ ดีกว่าเครื่องพีซีมาก ASIC มีการพัฒนาเรื่อยมาให้ประสิทธิภาพดีขึ้นและใช้พลังงานน้อยลงเรื่อยๆ สามารถดูประสิทธิภาพการถอดรหัสบิตคอยน์ของอุปกรณ์แต่ละชนิดเปรียบเทียบกันได้ที่ https://en.bitcoin.it/wiki/Mining_hardware_comparison
ส�ำหรับการท�ำเหมืองขุดบิตคอยน์นั้นมี 2 รูปแบบ คือ ขุดคนเดียวกับช่วยกันขุด 1. การท�ำเหมืองแบบขุดคนเดียว (Solo)
ปัจจุบันในการขุดของคนทั้งโลก จะมีการค้นพบ 1 บล็อกรางวัลในทุกๆ ระยะเวลาประมาณ 10 นาที ถ้าคุณโชคดีคุณก็จะได้รางวัล แต่ถ้าคุณโชคไม่ดีขุดไป 10 ปี 20 ปี คุณอาจไม่เจออะไรเลย ในความเสี่ยงที่ว่า อาจไม่ได้อะไรตอบแทนเลย จึงได้มีการท�ำเหมืองอีกแบบ คือการช่วยกันขุด ช่วยกันค้นหา แล้วแบ่งรางวัลกัน
2. การท�ำเหมืองแบบช่วยกัน (Pool)
ใน pool หรือบ่อขุดทองที่เราไปร่วมขุดจะจ่ายผลตอบแทนตามความสามารถในการขุด ใครขุดได้ มากก็ได้ผลตอบแทนมาก การช่วยกันขุดในเหมืองก็คล้ายกับการให้ทุกคนในหมู่บ้านช่วยๆ กันซื้อ ล็อตตารี่ เมื่อถูกรางวัลก็แบ่งกัน ใครซื้อเยอะหลายใบก็ได้ส่วนแบ่งมากตามสัดส่วน ยกตัวอย่างเช่น คนในหมู่บ้าน 1 แสนคนรวมกันซื้อสลากกินแบ่งรัฐบาลทุกคน เมื่อมีใครถูกรางวัลจะเอาเงินรางวัลไป 22
PC Today VOL. 10 | ISSUE 132
QUICK START รวมที่กองกลาง แล้วแบ่งส่วนแบ่งกันตามจ�ำนวนสลากกินแบ่งที่ซื้อ ใครซื้อเยอะได้ส่วนแบ่งเยอะ ใครซื้อน้อยได้น้อย ในอัตราส่วนที่เท่ากันคนซื้อ 10 ใบจะได้ผลตอบแทนมากกว่าคนที่ซื้อ 1 ใบ 10 เท่า ดังนั้นถ้าอยากได้ผลตอบแทนสูงก็ต้องมีก�ำลังขุดมากกว่าคนอื่น เมื่อผลตอบแทนในการท�ำเหมืองแบบช่วยกันขุด ขึ้นอยู่กับความสามารถในการถอดรหัส ท�ำมาก ได้มาก ท�ำน้อยได้น้อย จึงมีการลงทุนเพิ่มอุปกรณ์ ASIC มากขึ้นเรื่อยๆ จากหัวเรื่องที่ผมเสนอขึ้นมาว่า ขุดวันนี้สายไปหรือไม่ ? เพราะจากกระแสตื่นทองบิตคอยน์จึงมี คนพร้อมจะจ่ายเงินซื้อเครื่อง ASIC ราคาสูง ซึ่งมีตั้งแต่หลักร้อยไปจนถึงหลายๆ แสนบาทต่อ 1 เครื่อง บางคนทุนเยอะก็ลงเยอะเป็นจ�ำนวนหลายล้านบาท เพราะคาดหวังผลตอบแทนที่มากยิ่งๆ ขึ้นไป เมื่อมีการลงทุน มีการคาดหวังก�ำไร และหวังจะได้ก�ำไรมากขึ้น จึงเกิดความโลภ เมื่อเกิดความ โลภหากไม่ควบคุมความเสี่ยงให้ดีพอ หายนะจะตามคุณมา ผมจึงอยากจะเสนอมุมมองอีกมุมมอง หนึ่งให้นักขุดทองได้พิจารณาก่อนลงทุนขุดจริง สิ่งที่นักขุดหน้าใหม่ไม่รู้คือ ค่า Difficulty หรือค่าความยากในการขุด ข้อมูลข้างล่างนี้คือ การประมาณการนะครับ ไม่มีใครสามารถบอกตัวเลขที่ชัดเจนได้ เครื่อง ASIC 1 เครื่องจะสามารถ ท�ำรายส่วนแบ่งจาก Pool ได้ในอัตราที่แปลผกผันตามค่า difficulty ที่เพิ่มขึ้น โดยจากสถิติในอดีต จะเป็นดังนี้ (สามารถดูได้จาก http://bitcoinwisdom.com/bitcoin/difficulty)
www.pctodaythailand.com
23
QUICK START จากตารางสถิติที่ผ่านมา จะท�ำให้เห็นว่าในทุกๆ ประมาณ 10 วัน ค่า difficulty จะเพิ่มขึ้น 20% ตรงนี้หมายความว่า ในทุกๆ ประมาณ 10 วัน เครื่อง ASIC ที่คุณลงทุนซื้อไป 1 เครื่อง จะหาปริมาณบิตคอยน์ได้น้อย ลง 20% ตัวอย่างเช่น สมมุติว่า เครื่อง ASIC วันนี้สามารถท�ำได้ 0.05 BTC ต่อวันต่อเครื่อง จะสามารถค�ำนวณได้ คร่าวๆ ดังนี้
ป.ล. ยังไม่ได้คิดค่าไฟ และความเสี่ยงที่เครื่องจะ ช�ำรุด หรือพังเมื่อไหร่ก็ไม่รู้
ดังนั้นก่อนลงทุนซื้อ ก็ลองกดเครื่องคิดเลขคร่าวๆ ดูนะครับ ในเงินจ�ำนวนที่เท่ากันนั้น เอาไปซื้อ เครื่อง ASIC มาขุดหาบิตคอยน์ หรือเอาไปแลกบิตคอยน์เลย วิธีการไหนคุณจะได้ปริมาณบิตคอยน์ ไปใส่ใน wallet มากกว่ากัน อันไหนคุ้มค่ากว่ากัน ตัดสินใจด้วยตัวคุณเองครับ 24
PC Today VOL. 10 | ISSUE 132
Geek Programming โดย วศิน สุทธิฉายา
Geek Programming
10 เทคนิคการใช้ Bitwise เขียนโปรแกรมให้รันเร็วขึ้น สวัสดีครับท่านผู้อ่าน สมัยนี้โปรแกรมต่างๆ ทั้งใน คอมพิวเตอร์และอุปกรณ์ มือถือทั้งหลายพัฒนาขึ้น รวดเร็วมาก โปรแกรมที่ท�ำงาน อย่างเดียวกัน ซึ่งวางขาย แข่งกันในท้องตลาดมักโฆษณา สรรพคุณของตัวเองว่า ดีกว่า มีการท�ำงานใหม่กว่า และที่ส�ำคัญที่สุดคือ สามารถ ท�ำงานได้เร็วกว่า
การพัฒนาโปรแกรม หรือแอพพลิเคชัน ต่างๆ ให้มีประสิทธิภาพดีนั้นไม่ใช่เรื่องง่ายเท่าใด นัก และเทคนิคที่นิยมใช้กันคือ ใช้อัลกอริทึมที่มี ประสิทธิภาพสูง การท�ำออพติไมเซชั่นตัวโปรแกรม และลดการค�ำนวณต่างๆ ลงโดยใช้ตัวกระท�ำแบบ Bitwise Geek Programming ประจ�ำเดือนนี้ ขอน�ำเสนอ เทคนิคการเขียนโปรแกรมโดยใช้ตัวกระท�ำแบบ Bitwise เพื่อใช้ท�ำงานในแบบที่คุณผู้อ่าน คาดไม่ถงึ ทีเดียว จะมีอะไรบ้างลองติดตามดูนะครับ www.pctodaythailand.com
25
Geek Programming
ความรู้เบื้องต้นเกี่ยวกับตัวกระท�ำแบบ Bitwise (Bitwise Operations) ภาษาซีมีตัวกระท�ำแบบ Bitwise ทั้งหมด 6 ตัวดังต่อไปนี้ สัญลักษณ์
ความหมาย
&
Bitwise AND
|
Bitwise OR
^ >> << ~
Bitwise exclusive OR (XOR) เลื่อนบิตไปทางขวา เลื่อนบิตไปทางซ้าย Bitwise NOT
ตัวกระท�ำ AND, OR, XOR และ NOT มีลักษณะการค�ำนวณดังต่อไปนี้ bit P
bit Q
P & Q (P AND Q)
P | Q (P OR Q)
P ^ Q (P XOR Q)
~P (complement of P)
0
0
0
0
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
0
0
ตัวกระท�ำเลื่อนบิตทั้งทางขวาและทางซ้ายในภาษาซีเป็นแบบ Arithmetic Shift ดังนั้นค่าที่เก็บ ในตัวแปรจะมีเครื่องหมายเหมือนเดิมเมื่อเลื่อนบิต ดังตัวอย่างต่อไปนี้ 1. การเลื่อนบิตทางขวา (>>) ตัวกระท�ำจะคัดลอกค่าที่อยู่ในบิตทางซ้ายไปยังบิตที่อยู่ทางขวา และคงค่าของบิตทางซ้ายสุด (Most Significant Bit) เอาไว้ดังรูปต่อไปนี้
สังเกตว่าการเลื่อนบิตทางขวาจะเป็นการหารค่าที่อยู่ในตัวแปรด้วย 2n เมื่อ n คือจ�ำนวนครั้ง การเลื่อนบิตทางขวา 26
PC Today VOL. 10 | ISSUE 132
Geek Programming 2. การเลื่อนบิตทางซ้าย (<<) ตัวกระท�ำจะคัดลอกค่าที่อยู่ในบิตทางขวาไปยังบิตที่อยู่ทางซ้าย โดยต�ำแหน่งขวาสุด (Least Significant Bit) ที่ว่างไปจะถูกแทนที่ด้วย 0 ดังรูปต่อไปนี้
สังเกตว่าการเลื่อนบิตทางซ้ายจะเป็นการคูณค่าที่อยู่ในตัวแปรด้วย 2n เมื่อ n คือจ�ำนวนครั้ง การเลื่อนบิตทางซ้าย
เทคนิคการใช้งานตัวกระท�ำแบบ Bitwise 1. หาเครื่องหมายของจ�ำนวนเต็ม
การหาเครื่องหมายของจ�ำนวนเต็มโดยใช้ตัวกระท�ำแบบ Bitwise สามารถท�ำได้หลายแบบ ตัวอย่างเช่น
ตัวอย่างทั้ง 3 บรรทัดเป็นการหาเครื่องหมายของค่าที่อยู่ในตัวแปร value ถ้าค่าที่อยู่ในตัวแปร value เป็นบวก sign จะมีค่าเป็นศูนย์ แต่ถ้าค่าที่อยู่ในตัวแปร value เป็นลบ ค่าที่อยู่ในตัวแปร sign จะเป็น -1 ถ้าหากต้องการให้ค่า sign เป็น +1 หรือ -1 สามารถท�ำได้โดยใช้
นอกจากนี้ตัวกระท�ำแบบ Bitwise สามารถใช้ระบุว่าเป็นค่าบวก ศูนย์ หรือค่าลบได้ดังตัวอย่าง ต่อไปนี้
www.pctodaythailand.com
27
Geek Programming ตัวอย่างดังกล่าว ถ้าค่าในตัวแปร value มากกว่าศูนย์ sign จะมีค่าเป็น +1 ถ้าค่าในตัวแปร value น้อยกว่าศูนย์ sign จะมีค่าเป็น -1 แต่ถ้าค่าใน value เป็นศูนย์ sign จะมีค่าเป็น 0 หรือถ้าหากคุณผู้อ่านต้องการเขียนเงื่อนไขตรวจสอบว่าค่าในตัวแปร value มากกว่าหรือเท่ากับ 0 หรือไม่ สามารถใช้ตัวกระท�ำแบบ Bitwise ท�ำงานแทนการใช้ if-else ได้ดังนี้
โดยตัวแปร sign จะมีค่าเป็น 0 เมื่อ value มีค่าน้อยกว่า 0 และ sign จะมีค่าเป็น 1 เมื่อ value มีค่ามากกว่าหรือเท่ากับ 0
2. ตรวจสอบว่าจ�ำนวนเต็มทั้ง 2 จ�ำนวนมีเครื่องหมายต่างกันหรือไม่ เราสามารถใช้ XOR ในการตรวจสอบได้ดังตัวอย่างต่อไปนี้
จากตัวอย่าง ถ้า a และ b มีเครื่องหมายอย่างเดียวกัน c จะมีค่าเป็น 0 แต่ถ้า a และ b มีเครื่องหมายตรงข้ามกัน c จะมีค่าเป็น 1
3. ค�ำนวณค่าสัมบูรณ์ สามารถท�ำได้ 2 วิธีดังตัวอย่างต่อไปนี้
4. หาค่าที่น้อยที่สุด/มากที่สุดระหว่างตัวจ�ำนวนเต็มสองตัวโดยไม่ใช้ค�ำสั่ง if-else สามารถท�ำได้ดังตัวอย่างต่อไปนี้
โดยค�ำสั่งแรก เป็นค�ำสั่งส�ำหรับหาค่าต�่ำสุด และค�ำสั่งต่อมาเป็นค�ำสั่งส�ำหรับการหาค่าสูงสุด
28
PC Today VOL. 10 | ISSUE 132
Geek Programming
5. ตรวจสอบว่าค่าของจ�ำนวนเต็มในตัวแปรอยู่ในรูปของ 2n หรือไม่ สามารถท�ำได้ดังตัวอย่างต่อไปนี้
จากตัวอย่าง ค่าในตัวแปร checker จะเป็น 1 เมื่อค่าในตัวแปร value อยู่ในรูปของ 2n (เช่น 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, …) และตัวแปร checker จะมีค่าเป็น 0 เมื่อค่า ในตัวแปร value ไม่อยู่ในรูปของ 2n
6. การสลับค่าระหว่าง 2 ตัวแปร สามารถท�ำได้ดังตัวอย่างต่อไปนี้
อย่างไรก็ตาม วิธีดังกล่าวไม่สามารถใช้สลับค่าในตัวแปรที่อยู่ในต�ำแหน่งเดียวกันได้ เช่น การสลับค่ากับตัวเอง เป็นต้น เราสามารถหลีกเลี่ยงเหตุการณ์ดังกล่าวได้โดยการตรวจสอบ ค่าเสียก่อน ซึ่งสามารถเขียนเป็นมาโคร (Macro) ได้ดังนี้
7. การย้อนทางบิตในตัวแปรประเภท character (char) สามารถท�ำได้ดังตัวอย่างต่อไปนี้
วิธีนี้จ�ำเป็นต้องคูณเลขขนาด 64 บิต เข้าไปด้วย แต่จะมีการใช้ตัวด�ำเนินการเพียง 4 ครั้งเท่านั้น คือ * 2 ครั้ง, & 1 ครั้ง, และ >> 1 ครั้ง เราสามารถลดขนาดของตัวเลขที่ต้องใช้คูณได้ แต่จะต้องเพิ่มการใช้ตัวด�ำเนินการเป็น 7 ครั้ง ดังตัวอย่างต่อไปนี้
การย้อนทางบิตในตัวแปรขนาด n บิต โดยใช้การด�ำเนินการ O(log n ) ครั้ง สามารถท�ำได้ดังตัวอย่างต่อไปนี้ www.pctodaythailand.com
29
Geek Programming
9. การค�ำนวณการหารเอาเศษ (modulo) โดยตัวหารอยู่ในรูปของ 2n และ 2n-1 ถ้าตัวหารอยู่ในรูปของ 2n การหารเอาเศษสามารถท�ำได้โดยการใช้ตัวกระท�ำ & และเปลี่ยนตัวหาร ให้อยู่ในรูป 2n-1 ดังตัวอย่างต่อไปนี้
ถ้าตัวหารอยู่ในรูปของ 2n –1 เราสามารถใช้ตัวกระท�ำแบบ Bitwise เพื่อหาค่าดังกล่าว โดยใช้จ�ำนวนครั้งการค�ำนวณไม่เกิน O(N log(N )) ครั้ง เมื่อ N เป็นขนาดของตัวตั้งการหารเอาเศษ ในหน่วยบิต สามารถท�ำได้ดังตัวอย่างต่อไปนี้
10. การเรียงสับเปลี่ยนบิตในตัวแปรจ�ำนวนเต็มจากค่าน้อยไปค่ามาก สมมติว่าเรามีจ�ำนวนเต็มตัวหนึ่ง ซึ่งบางบิตของจ�ำนวนเต็มนั้นถูกให้ค่าเป็น 1 อยู่เป็นจ�ำนวน N ต�ำแหน่ง การเรียงสับเปลี่ยนบิตในตัวแปรจากน้อยไปมาก คือการหาการเรียงสับเปลี่ยนของ 1 ใน ต�ำแหน่งที่ต่างกันออกไป โดยค่าที่ได้จากการเรียงสับเปลี่ยนแต่ละครั้งจะต้องเรียงจากน้อยไปมาก ตัวอย่างเช่น 26 = 0001 10102 การเรียงสับเปลี่ยนบิตจะไล่ดังนี้ 28 = 0001 11002 35 = 0010 00112 37 = 0010 01012 38 = 0010 01102 30
PC Today VOL. 10 | ISSUE 132
Geek Programming 41 = 0010 10012 42 = 0010 10102 …
การเรียงสับเปลี่ยนดังกล่าวสามารถท�ำได้ดังตัวอย่างต่อไปนี้
เป็นอย่างไรบ้างครับ นี่เป็นแค่ตัวอย่างเล็กๆ น้อยๆ เท่านั้น ยังมีเทคนิค และวิธีการใช้งาน ตัวกระท�ำแบบ Bitwise อีกมากมายที่สามารถท�ำงานได้ราวกับร่ายเวทย์มนต์ให้กับตัวโปรแกรม ซึ่งเทคนิคเหล่านี้สามารถน�ำมาใช้เพื่อเพิ่มประสิทธิภาพการท�ำงานของโปรแกรม หรือแอพพลิเคชัน ของเราได้ อย่างไรก็ตาม ถ้าคุณผู้อ่านน�ำไปใช้จริงๆ กรุณาใส่ค�ำอธิบายโปรแกรมเอาไว้บ้างนะครับ เพื่อที่ภายหลังจะได้ไม่ต้องมานั่งปวดหัวว่าเราท�ำอะไรลงไป! สุดท้ายนี้ขอฝากวลีเด็ดของนักคณิตศาสตร์ คาร์ล ไวแยร์สตราสส์ (Karl Weierstrass เป็นผู้ให้ นิยาม -definition of limit ที่เรารู้จักกันดี (เหรอ!)ในวิชาแคลคูลัส) คิดว่าคงจะโดนใจหลายๆ คน เวลาต้องมาแกะโค้ดอลังการงานสร้าง
“ When I wrote this, only God and I understood what I was doing. Now, God only knows. ”
ที่มา
http://cdn1.thefamouspeople.com/profiles/images/karl-w-t-weierstrass.jpg http://graphics.stanford.edu/~seander/bithacks.html http://www.codedanger.com/caglar/archives/1058 www.pctodaythailand.com
31
MAC MANIA โดย @eka_x (www.aofapp.com)
OpenEmu
สุดยอดโปรแกรม
เล่นเกม (โบราณ) บนแมค วิดีโอเกม เป็นซอฟต์แวร์คอมพิวเตอร์ที่ประหลาดกว่าซอฟต์แวร์ชนิดอื่นๆ นะครับ คือโปรแกรม อย่าง Word, Photoshop หรือ Windows เมื่อผ่านไปสัก 10 ปี ก็ไม่มีความจ�ำเป็นต้องใช้โปรแกรม รุ่นเดิมแล้ว อย่างตอนนี้ใครจะไปนั่งใช้ Word 97, Photoshop 7 หรือ Windows 98 อยู่ถ้าไม่มี เหตุจ�ำเป็นจริงๆ เช่น ระบบงานยังต้องใช้โปรแกรมรุ่นโบราณอย่างนั้นอยู่ แต่กับเกม ถึงแม้เวลา จะผ่านไปหลายสิบปี ผู้คนก็ยังโหยหาเกมเก่าๆ ที่มีรูปแบบการเล่น หรือบรรยากาศเฉพาะตัวที่หาได้ ยากในเกมยุคปัจจุบัน วิดีโอเกมจึงเป็นสื่อบันเทิงที่ไม่ตาย เหมือนกับภาพยนตร์หรือเพลง ที่ใช่ว่าของ ใหม่จะดีกว่าของเก่าเสมอไป ปกติเราจะเล่นเกมเก่าๆ ผ่านโปรแกรมจ�ำลองระบบที่เรียกว่า Emulator นะครับ ซึ่งบน PC ก็มีอยู่ มากมายหลายตัวตามเครื่องเกมชนิดต่างๆ อย่างโปรแกรมเล่นเกมเครื่อง PlayStation 1 ก็ ePSXe หรือของเครือ่ ง Super Famicom ก็ ZSNES บางตัวก็พฒ ั นาต่อเนือ่ งจนมีให้เล่นบนสมาร์ทโฟน Android (ส่วน iOS นั้นทางแอปเปิ้ลห้ามซอฟต์แวร์ประเภทนี้จ�ำหน่ายใน App Store เพราะเกรงปัญหาเรื่อง 32
PC Today VOL. 10 | ISSUE 132
www.pctodaythailand.com
32
MAC MANIA ลิขสิทธิ์) แต่บน Mac นั้นมีโปรแกรมประเภทนี้ค่อนข้างน้อย จนวันนี้ผมมาเจอโปรแกรม Emulator ที่เด็ดขาดมากๆ ชนิดที่ PC ยังไม่มีตัวไหนเจ๋งขนาดนี้เลย นั้นคือ OpenEmu ที่สามารถดาวน์โหลดฟรี ได้จาก www.openemu.org
OpenEmu ตัวเดียวเล่นเกมได้ 12 เครื่อง!
จุดเด่นของ OpenEmu คือน�ำเอาโปรแกรมจ�ำลองระบบที่เปิดให้ใช้ฟรีหรือแบบ Open Source มา รวมกัน ท�ำให้มันสามารถเล่นเกมได้ถึง 12 เครื่องในตัวเดียวคือ ประกอบด้วย ... (ในวงเล็บคือ Engine ที่ใช้จ�ำลองระบบเกมนะครับ) 1. Game Boy (Gambatte และ Higen) 2. Game Boy Advance (VisualBoyAdvance) 3. Game Gear (CrabEmu, TwoMbit) 4. NeoGeo Pocket (NeoPop) 5. Nintendo (Nestopia, FCEU) 6. Nintendo DS (DeSmuME) 7. Sega 32X (Picodrive) 8. Sega Master System (CrabEmu, TwoMbit) www.pctodaythailand.com
33
MAC MANIA 9. Sega Mega Drive (GenesisPlus) 10. Super Nintendo (SNES9x, Higan) 11. TuboGrafx–16 (Mednafen) 12. Virtual Boy (Mednafen)
รายชื่อเครื่องเกมที่รองรับพร้อมตัว Engine ที่ใช้งาน
ก็จะเห็นได้ว่า OpenEmu สามารถเลือก Engine ที่จะใช้กับเครื่องเกมได้หลายตัว เช่น เครื่อง Famicom หรือ NES ผู้เล่นก็มีโอกาสเลือกได้ว่าจะใช้ Nestopia หรือ FCEU เล่นเกม ซึ่งถึงแม้จะฟังแล้วแอบยุ่งยากที่ต้องเลือกเอง แต่ก็ช่วยให้เวลาที่เราเล่นเกมไม่ได้ หรือเล่นเกมแล้ว รู้สึกว่าภาพแปลกๆ มันก็ยังมีทางเลือกให้ลองกับ Engine ตัวอื่นที่อาจให้ผลลัพธ์ได้ดีกว่า แล้วถึงตอนนี้จะไม่มีเครื่องใหม่ๆ อย่าง PSP หรือเครื่องในตระกูล PlayStation แต่เราก็ไป แอบเห็นโปรแกรมในรุ่นที่ก�ำลังพัฒนากันอยู่ ก็จะรองรับเครื่องเกมเพิ่มเติมอย่าง Nintendo 64, 34
PC Today VOL. 10 | ISSUE 132
MAC MANIA Playstation, PSP, Sega Saturn, WonderSwan และอื่นๆ อีกมากมาย เห็นแล้วก็แอบอยากให้มี โปรแกรมอย่างนี้บน Windows เหมือนกันนะ ตัวเดียวจบดี
การจัดการเกมสไตล์แมค
ผู้ใช้ OSX คงจะคุ้นเคยการท�ำงานแบบ Library ดีนะครับ เพราะทั้ง iTunes หรือ iMovie ก็เป็น โปรแกรมที่จัดการข้อมูลในแบบ Library ทั้งนั้น เจ้า OpenEmu เองก็เช่นกัน เมื่อลากไฟล์เกมหรือ ROM ลงไปในโปรแกรม จะเป็นไฟล์เกมตามปกติ หรือไฟล์เกมที่บีบอัดเป็น .zip, .7z, .rar มันก็อ่านได้ และจัดการหมวดหมู่ให้เรียบร้อยว่า ROM นั้นมาจากเครื่องเกมอะไร ท�ำให้เราเลือกหมวดเกมที่จะเล่น ได้ง่ายๆ โดยดูจากประเภทเครื่องเกม นอกจากนี้ยังสามารถจัดกลุ่มเกมด้วยตัวเองเป็น Collections ได้อีกด้วย จะจัดเป็นเกมโปรด หรือแบ่งจัดเป็นแนวเกมต่างๆ ก็ได้ทั้งนั้น แค่ลากเกมใน Library มาวางที่ชื่อ Collections เช่น รวมเกม Metroid ทุกภาคไว้ในคอลเล็กชันเดียว เวลาเห็นเกมที่ชอบ มารวมอยู่กันแบบนี้ มันก็ฟินไม่น้อย
เกมโปรดที่เล่นจบมาหลายภาค ก็จับมารวมเป็น Collections
นอกจากนี้ เมื่อลากเกมลง OpenEmu มันยังเชื่อมอินเทอร์เน็ตไปโหลดปกเกมมาให้ ส�ำหรับผู้เล่น ที่เคยเล่นแต่เกม ไม่เคยเห็นปกมาก่อน มันก็เป็นความรู้สึกที่แปลกดีนะครับกับหน้ากล่องเกมแบบ www.pctodaythailand.com
35
MAC MANIA วินเทจ โดยสามารถปรับขนาดปกเล็ก-ใหญ่ที่ต้องการให้โปรแกรมแสดงก็ได้ จะต้องการใหญ่แบบ Cover Flow หรือแบบไม่ต้องแสดงปก โชว์แค่ชื่อเป็นแบบรายการ OpenEmu ก็จัดให้ได้ทั้งนั้น
โปรแกรมสวย ฟีเจอร์เจ๋ง
เล่น Mario 3 แบบสุขใจ 36
PC Today VOL. 10 | ISSUE 132
MAC MANIA เห็น OpenEmu หน้าตาดีขนาดนี้ แต่ความสามารถในการเล่นเกมก็ไม่ได้แย่กว่าโปรแกรม Emulator แบบแยกเดี่ยวๆ นะครับ เพราะนอกจากจะเล่นเกมส่วนใหญ่ได้สมบูรณ์ตามประสิทธิภาพ ของ Engine ที่ใช้แปลงเกมเครื่องต่างๆ แล้ว ยังมีความสามารถในการ Save Stage ได้ทุกเครื่องเกม จะเล่นเกมไปถึงตรงไหนก็เซฟได้ทั้งนั้น ไม่ต้องรอให้เจอจุดเซฟ และส�ำหรับคนที่อยากเล่นเกมให้สะใจ ยังสามารถใส่สูตรโกงเกมแบบ Action Replay เข้าไปได้อีก แล้วในแง่ของการแสดงภาพ OpenEmu ยังมีรูปแบบการแสดงภาพที่หลากหลาย ส�ำหรับ ปรับภาพแตกๆ ของเกมโบราณให้ดูดีขึ้นบนจอยุคปัจจุบัน ตั้งแต่การจ�ำลองให้ภาพเกมโค้งๆ มีเส้น Scanline เหมือนเล่นอยู่บนจอทีวี CRT หนาๆ หรือปรับขอบตัวละครและวัตถุในเกมให้เข้มขึ้น ดูเป็นเส้นเดียวกันไม่แตกเป็นจุดๆ ด้วยฟิลเตอร์อย่าง 4xBR หรือ SABR ก็ท�ำได้
ฟิลเตอร์มากมายที่มีให้เลือก www.pctodaythailand.com
37
MAC MANIA
เล่นด้วยโหมด Nearest Neighbour ที่ไม่ได้ยุ่งอะไรกับภาพเลย
ฟิลเตอร์ SABR ปรับภาพให้เนียนขึ้น 38
PC Today VOL. 10 | ISSUE 132
MAC MANIA
ฟิลเตอร์ LCD3x ที่ปรับภาพให้แสดงเหมือนมีจุดๆ บนจอ
และที่เด็ดขาดที่สุดคือ OpenEmu นั้นรองรับจอยเกมได้หลากหลายมากๆ ทั้งจอย Dualshock 3 และ 4 ของเครื่อง Playstation, จอย Wiimote หรือ Wii U Pro รวมถึงจอยของ Logitech, Xbox 360 หรือ Sega Saturn ก็สามารถน�ำมาต่อกับเครื่องแมคเพื่อใช้เล่นเกมในอดีตได้ทันที ใครที่ชอบเล่น เกมเก่า แต่มีปัญหาไม่สามารถใช้คีย์บอร์ดบังคับเกมได้อย่างใจ OpenEmu จัดทางแก้มาให้แล้ว (ส่วนผู้เขียนลอยตัว เพราะเล่นเกมด้วยคีย์บอร์ดมาตั้งแต่เด็ก สามารถเล่น Rockman X 1,2,3 จบด้วยคีย์บอร์ดมาแล้ว) ก็หวังว่า OpenEmu ที่ ใช้เวลาพัฒนายาวนานกว่า 7 ปี กว่าจะออกเวอร์ชัน 1.0 จะพัฒนาต่อไป เพื่อเติมเต็ม ความทรงจ�ำในอดีตของ นักเล่นเกม ที่เคยใช้เวลา มากมายเล่นเกมกับเพื่อนอยู่ หน้าทีวีหนาๆ และเปิดโอกาส ให้เด็กรุ่นใหม่ได้รู้จักความสนุก ของเกมที่ภาพอาจจะไม่สวย แต่ยากนรกกันบ้างนะครับ
หน้าปรับแต่งการควบคุมอย่างหรู www.pctodaythailand.com
39