ลาภลอย's profileเรียนรู้ด้วยตนเอง OOP C#...PhotosBlogListsMore ![]() | Help |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
รวมบทความที่น่าสนใจนับร้อย
เชิญท่านผู้อ่านที่มีคำถามเกี่ยวกับหนังสือ คำถามทั่วไป ประสงค์จะติ-ชม
ทักทาย และอื่นๆ กรุณากรอกข้อความของท่านได้ที่นี่
ผู้เขียนจะตอบโดยเร็วที่สุดเท่าที่จะทำได้ - ลาภลอย
JATUPOL KHOTWONGwrote:
อยากให้เขียนบทความเกี่ยวกับ MVC หน่อยครับ อาจารย์ เวลาที่เขียนโปรแกรมเกี่ยวกับ database ไม่ทราบว่าต้อง design กับ coding แบบไหนน่ะครับ
1 day ago
Teerayut Teeraprathamwrote:
900 หน้า !!
เรียน คุณธีระยุทธ
กำหนดวางจำหน่ายอยู่ในช่วงวันที่ 24-30 ก.ค. นี้ ต้องขออภัยด้วยนะครับที่หนังสือออกมาล่าช้าไปสักหน่อยเนื่องจากเล่มนี้ค่อนข้างหนาทีเดียว ประมาณ 900 หน้า และต้องขอขอบพระคุณเป็นอย่างยิ่งที่ติดตามผลงานของคุณลาภลอย มา ณ ที่นี้ด้วยนะครับ
ขอบคุณครับ สมโภชน์
June 23
ลาภลอย วานิชอังกูรwrote:
สวัสดีครับ คุณ
Teerayut
ผมก็รออยู่เหมือนกัน กรุณาอีเมลถามเจ้าหน้าที่ของซีเอ็ดคือ บก.สมโภชน์ ชื่นเอี่ยม somphoch@se-ed.com
June 21
ลาภลอย วานิชอังกูรwrote:
สวัสดีครับ wut การต่อ คอนเนคเตอร์ DB25 กรุณาดูรายละเอียดในคู่มือนะครับ หรือจะดูที่นี่ก็ได้
June 21
Teerayut Teeraprathamwrote:
หนังสือ Database ของ พี่ลาภลอย วางแผงจำหน่ายเมื่อใดหรอครับ รอจนเหงือแห้งแล้วครับพี่
June 20
|
June 08 ตัวอย่างวิธีใช้ ADO.NET อย่างง่ายที่สุด
April 16 GreatFriends VTALKS ครั้งที่ 11ไปหน้าแรก | สารบัญ | Laploy.com | ระเบียนบทความ | บทความจากลาภลอย
GreatFriends VTALKS ครั้งที่ 11
May 24 ระเบียนบทความไปหน้าแรก | สารบัญ | Laploy.com | ระเบียนบทความ | บทความจากลาภลอย ระเบียนบทความ เนื่องในวาระที่ผู้เขียนได้เขียนบล็อกรับใช้ท่านผู้อ่านมาครบรอบหนึ่งปี จึงถือโอกาสรวบรวมรายการบทความ พร้อมคำอธิบายโดยย่อและลิงค์ เพื่อให้ท่านผู้อ่านสามารถค้นหา และเปิดอ่านเรื่องต่างๆ ได้โดยสะดวก นี่คือรายการของบทความขนาดยาว จำนวนยี่สิบแปดบทความ ถ้านับเป็นหน้าเว็บ ก็ยาวหลายร้อยหน้า หนึ่งปีที่ผ่านไปแม้จะรู้สึกว่านานเหลือเกิน แต่ผู้เขียนก็ยังผลิตบทความได้ไม่มากเท่าที่ตั้งใจไว้ เพราะมีงานประจำที่ต้องรับผิดชอบ เคยมีคนถามว่าจัดทำบล็อกไปเพื่ออะไร จะเหนื่อยฟรีเสียเปล่า ผู้เขียนตอบว่า แม้จะไม่ได้รับค่าตอบแทนเป็นเงิน แต่ก็แต่ก็ได้รับความปลื้มปิติ ที่ได้บำเพ็ญตนให้เกิดประโยชน์ต่อผู้สนใจใฝ่หาความรู้วิชาคอมพิวเตอร์ แม้จะมีคุณค่าเพียงเล็กน้อย แต่ก็จะขอรับใช้ท่านผู้อ่านต่อไป ตราบเท่าที่ยังสามารถทำได้
เขียนโค้ดให้สนุกในยุค 64 บิตไปหน้าแรก | สารบัญ | Laploy.com | ระเบียนบทความ | บทความจากลาภลอย
เขียนโค้ดให้สนุกในยุค 64 บิต
บัดนี้ซีพียู 64 บิตกลายเป็นซีพียูมาตรฐานไปแล้ว จึงได้ฤกษ์อันเป็นมงคล ที่เหล่าโปรแกรมเมอร์ จะอพยพจากโลก 32 บิต ไปเขียนโค้ดแบบ 64 บิตกันเสียที ผู้เขียนขอเสนอตัวเป็นมัคคุเทศก์ นำท่านไปเที่ยวชมโมเดลการเขียนโปรแกรม 64 บิต ทั้งแบบอินเทลและแบบ AMD ความเป็นมาของซีพียู 64 บิต สาเหตุที่ทำให้ AMD สามารถสร้างซีพียูเลียนแบบอินเทลได้และแซงหน้าไปในที่สุด ตำนานสถาปัตยกรรม อิทาเนียม อันลือลั่นของอินเทล ที่ AMD เยาะว่าไม่ช้าจะสิ้นชื่อ หากท่านต้องการทราบคำตอบว่า อะไรคือสถาปัตยกรรม x86-64, IA32, IA64, EM64, Intel64 และ AMD64 โมเดลเขียนโปรแกรมของซีพียู 64 บิตจาก AMD และอินเทล เหมือนหรือแตกต่างกันหรือไม่ ซอฟต์แวร์เดิมแบบ 16 และ 32 บิตจะยังทำงานกับซีพียู 64 บิตได้หรือไม่ นักเขียนโปรแกรมต้องปรับตัว หรือเปลี่ยนวิธีเขียนโปรแกรมอย่างไรบ้าง จึงจะสามารถสร้างซอฟต์แวร์แบบ 64 บิตได้ ขอเชิญพบคำตอบเหล่านี้ และหัวข้อที่น่าสนใจอื่นๆ อีกมากได้ในบทความนี้
64 บิตดีอย่างนี้ไงหล่ะ! ระบบปฏิบัติการสำหรับซีพียู 32 บิตอ้างหน่วยความจำได้สูงสุดเพียง 4 GB และคำนวณเลขทศนิยมได้ไม่เร็วนัก งานที่ต้องใช้หน่วยความจำมากๆ และต้องคำนวณเลขทศนิยมอย่างหนัก เช่น เกมและโปรแกรมสร้างภาพสามมิติจึงทำงานได้อย่างจำกัด ส่วนระบบปฏิบัติการซีพียู 64 บิต อ้างหน่วยความจำได้สูงสุด 16 เทราไบต์ เรียกใช้งานรีจิสเตอร์ 64 บิตและรีจิสเตอร์คำนวณเลขทศนิยม 128 บิตได้เต็มที่ ทำให้เกมและโปรแกรมสร้างภาพสามมิติทำงานเร็วขึ้นมาก
ที่มาของตัวเลข 64 หน่วยต่ำสุดของข้อมูลที่คอมพิวเตอร์ประมวลผลได้คือหนึ่งบิต แทนค่าได้สองค่าคือศูนย์และหนึ่ง เหมือนสวิทช์หนึ่งตัวที่อาจอยู่ในตำแหน่งปิดหรือปิด เนื่องจากบิตเดียวไม่สามารถแทนข้อมูลอะไรได้มากนัก การประมวลผลจึงใช้หน่วยไบต์ หรือแปดบิต สาเหตุที่เป็นแปดบิต (แทนที่จะเป็นเจ็ดหรือเก้าบิต) เพราะในระบบเลขฐานสองการเพิ่มหลักของตัวเลขจะเพิ่มแบบยกกำลังสอง (คือเพิ่มจาก 2 เป็น 4,8,16,32,64,128 ฯลฯ) การพิจารณาว่าไมโครโปรเซสเซอร์มีขนาดกี่บิต ให้ดูจากขนาดของหน่วยประมวลผลทางตรรกะและคณิตศาสตร์ หรือ ALU (Arithmetic Logic Unit) ไมโครโปรเซสเซอร์ ตัวแรกของบริษัทอินเทล ชื่อ 4004 มี ALU ขนาดสี่บิต ออกจำหน่ายในปี ค.ศ. 1971 แต่ไมโครโปรเซสเซอร์ที่ได้รับความนิยมนำไปใช้ในไมโครคอมพิวเตอร์คือ 8088 ที่ออกจำหน่ายในปี 1979 ไมโครโปรเซสเซอร์ 8088 เป็นซีพียูแบบกึ่งแปดบิตกึ่งสิบหกบิต เพราะ ALU มีขนาด 16 บิต รีจิสเตอร์ภายในก็เป็นสิบหกบิต แต่บัสข้อมูลมีขนาดแปดบิต ไมโครโปรเซสเซอร์ 8088
อิทาเนียมรุ่นที่ออกขายก่อนปี 2006 มีฮาร์ดแวร์ที่สนับสนุนสถาปัตยกรรม IA-32 เพื่อให้ใช้งานได้กับแม่ข่ายรุ่นเก่า ในชิพรุ่นหลังปี 2006 เช่น อิทาเนียม II : Montecito อินเทลได้เพิ่มคุณสมบัติใหม่บางอย่างเช่น สนับสนุนการทำงานแบบหลายเทรธ แบบใหม่ที่มีประสิทธิภาพมากขึ้น และคุณสมบัติที่ทำให้วิ่งซอฟต์แวร์ระบบปฏิบัติการมากกว่าหนึ่งระบบได้พร้อมกันได้ ปัจจุบันมีระบบปฏิบัติการที่ใช้กับอิทาเนียมได้หลายตัว เช่น Windows Server 2003, Windows Vista, Linux, HP-UX, และ OpenVMS แม้จะเริ่มออกจำหน่ายตั้งแต่ปี 2001 แต่ซีพียูอิทาเนียมไม่เคยได้รับความนิยมในโลกของเดสก์ทอปเลย ส่วนมากจะถูกบริษัทผู้ผลิตคอมพิวเตอร์นำไปใช้สร้างเครื่องแม่ข่ายระดับสูง (high-end server) ปัจจุบันอินเทลเปลี่ยนชื่อ อิทาเนียมทู โดยตัดคำว่า ทู ออก อิทาเนียมถูกผลิตออกมาแล้วหลายรุ่นดังนี้
อิทาเนียมทู McKinley
64 บิต ของดีของ AMD ชิพไมโครโปรเซสเซอร์หลักของบริษัท AMD ในปัจจุบันคือสถาปัตยกรรม K8 (หรือ ADM64) เป็นซีพียูแบบ 64 บิต มีผลิตออกจำหน่ายหลายตระกูลดังนี้
นอกจาก K8 แล้ว AMD ยังซุ่มพัฒนาสถาปัตยกรรม K9 มาตั้งแต่ปี 2001 โดยตั้งใจจะให้เป็นสถาปัตยกรรมซึ่งจะมาแทนที่ K8 แต่โครงการนี้ถูกล้มเลิกไปในปี 2006 เพราะ AMD ต้องการผลักดันโครงการที่ใหม่กว่า นั่นคือ K10 (ข้ามจาก K8 ไปเป็น K10 เลย) AMD แถลงว่าจะนำ Phenom ซีพียู 64 บิตแบบสี่คอร์ (ซึ่งจะเป็นซีพียูที่ใช้สถาปัตยกรรม K10 ตัวแรก) ออกวางตลาดได้ช่วงปลายปีนี้ (พ.ศ. 2550)
ไฟล์ภาพ 003.png : สถาปัตยกรรม K8
อินเทล 64 ตัวทำเงิน สถาปัตยกรรมอิทาเนียมของอินเทลดูเหมือนจะล้ำหน้าไปหน่อย จึงไม่ได้รับความนิยมเท่าที่ควร อินเทลแก้เกมโดยหันมาผลิตซีพียูสถาปัตยกรรม Intel64 (เดิมใช้ชื่อ EM64) ซึ่งมีสถาปัตยกรรมรูปแบบเดียวกับ K8 และประสบความสำเร็จในทางตลาดเป็นอย่างดี ซีพียูแบบ Intel64 มีหลายตระกูลดังนี้
เรื่องไส้ๆ ของ K8 ดูในตารางจะเห็นว่าเมื่อเราเขียนโปรแกรมในโหมดเดิม เราจะมีรีจิสเตอร์อเนกประสงค์ขนาด 32 บิต อยู่แปดตัว แต่ถ้าเขียนในโหมด 64 บิต เราจะมีรีจิสเตอร์ 64 บิตถึง 16 ตัว โปรแกรมเมอร์ภาษาแอสเซมบลีจะสนุกกว่าเพื่อน เพราะชื่อรีจิสเตอร์เปลี่ยนหมด แถมมี R8 ถึง 15 เพิ่มมาให้ใช้อย่างจุใจ ส่วน ST และ MM ไม่มีอะไรเปลี่ยน เพราะเดิมก็เป็น 64 บิตอยู่แล้ว รีจิสเตอร์ในกลุ่ม XMM เป็นรีจิสเตอร์ทำงานด้านการประมวลผลภาพสามมิติ (กลุ่มโค้ด SSE3) ใช้ชื่อเดิมและมีขนาดเท่าเดิมแต่เพิ่มจำนวนขึ้นเท่าตัว รีจิสเตอร์ชี้คำสั่งเปลี่ยนไปทั้งชื่อและขนาด ส่วนแฟลกเหมือนเดิมทุกอย่าง เพราะจำนวน 32 บิตก็มากจนไม่รู้จะเอาไปใช้ทำอะไรแล้ว และสุดท้ายคือสแต็กที่กว้างกว่าเดิมเท่าตัว
เทียบเท่าถึงปู่ทวด ลองมาดูรีจิสเตอร์ A หรือแอคคิวมูเลเตอร์ซึ่งเป็นรีจิสเตอร์หลักของซีพียูกันหน่อย จากรูปจะเห็นว่าหากเขียนโปรแกรมแบบ 64 บิต รีจิสเตอร์นี้จะมีชื่อว่า RAX มีขนาด 64 บิต หากเขียนโปรแกรมแบบ 32 บิต รีจิสเตอร์นี้จะมีชื่อว่า EAX มีขนาด 32 บิต หากเขียนโปรแกรมแบบ 16 บิต รีจิสเตอร์นี้จะมีชื่อว่า AX มีขนาด 16 บิต และหากเขียนโปรแกรมแบบ 8 บิต รีจิสเตอร์นี้จะกลายเป็นรีจิสเตอร์ขนาด 8 บิตสองตัว คือ AH และ AL ขอให้สังเกตว่าทุกตัวคือรีจิสเตอร์เดียวกันหมด หากเราเขียนโปรแกรมแบบ 64 บิต เราจะใช้งานมันครบเต็มที่ เมื่อเขียนโปรแกรมแบบ 32 บิตก็ใช้งานเพียงครึ่งเดียว เมื่อเขียนโปรแกรมแบบ 16 บิตก็ใช้เพียงหนึ่งในสี่ และเมื่อเขียนโปรแกรมแบบ 8 บิตก็ใช้งานเพียงหนึ่งในแปด บริษัท AMD ออกแบบ K8 มาเช่นนี้เพื่อความเข้ากันได้ย้อนหลัง ซึ่งย้อนไปจนถึงสมัยซีพียูแปดบิต หรือสมัยต้นกำเนิดของพีซีเลยทีเดียว ขนาดของแอคคิวมูเลเตอร์ในสถาปัตยกรรม K8
ตัวอย่างโปรแกรม K8 ต่อไปมาดูคำสั่งภาษาแอสเซมบลีของ K8 ในการบวกเลขจำนวนเต็มสองจำนวน เลขจำนวนแรกเก็บอยู่ในรีจิสเตอร์ A และตัวที่สองอยู่ใน B เราจะนำค่าใน A ไปบวกกับ B ผลลัพธ์จะถูกนำไปเก็บไว้ใน B ก่อนการบวก A และ B มีค่าดังนี้ RAX = 0002_0001_8000_2201 RBX = 0002_0002_0123_3301
โปรดสังเกตว่าการบวกแบบ 64 บิตให้ผลลัพธ์ครบสมบูรณ์ ส่วนการบวกแบบ 32 บิตๆ ที่63 ถึง 32 ถูกถมด้วยศูนย์และไม่ถือเป็นส่วนหนึ่งของผลลัพธ์ การบวกแบบ 16 บิตๆ ที่ 63 ถึง 16 ถูกกันไว้และไม่นับว่าเป็นส่วนหนึ่งของผลลัพธ์ และการบวกแบบ 8 บิตๆ ที่ 63 ถึง 8 ถูกกันไว้และไม่นับว่าเป็นส่วนหนึ่งของผลลัพธ์ จะเห็นว่าคำสั่งบวกแบบ 64 บิตไม่แตกต่างจากการเขียนโปรแกรมแบบ 8, 16, หรือ 32 บิต มากนัก
คำสั่งที่เปลี่ยนไปใน AMD64 บริษัท AMD เปลี่ยนแปลงชุดคำสั่งเพื่อให้นักเขียนโค้ดใช้ประโยชน์จากสถาปัตยกรรม 64 บิตได้ การเปลี่ยนแปลงนี้มีทั้งเพิ่มคำสั่งใหม่ เปลี่ยนความหมายของคำสั่งเดิม (คือยังใช้ชื่อเก่าแต่เปลี่ยนการทำงานใหม่ไปเล็กน้อย) ยกตัวอย่างเช่น
เขียนโปรแกรม 64 บิตใน อิทาเนียม เพื่อให้เกิดความเข้ากันได้กับซอฟต์แวร์เก่าแก่ อินเทลถึงถูกออกอิทาเนียมให้ทำงานได้สองสภาพแวดล้อม สภาพแวดล้อมแรกเรียกว่า IA32 มันจะจำลองตัวเองเป็นซีพียูเพนเทียม 32 บิต และไม่สามารถใช้งานคุณสมบัติ 64 บิตได้ อีกสภาพแวดล้อมหนึ่งเรียกว่าอิทาเนียมซึ่งแบ่งโหมดการทำงานออกได้ดังนี้
อิทาเนียมสามารถสลับการทำงานระหว่าง 32 และ 64 บิตได้ตลอดเวลาโดยอาศัยคำสั่งพิเศษและอินเตอร์รัพต์ โดยขณะทำงานอยู่ในโหมด 64 บิตจะใช้คำสั่ง br.ia เพื่อเปลี่ยนไปเป็นแบบ 32 บิต และคำสั่ง jmpe เพื่อเปลี่ยนไปเป็น 64 บิตขณะทำงานแบบ 32 บิต
อิทาเนียมทู
รีจิสเตอร์ของอิทาเนียม รีจิสเตอร์ของอิทาเนียมที่เกี่ยวข้องกับนักเขียนโค้ดซึ่งเขียนโค้ดระดับต่ำ อย่างภาษาแอสเซมบลีหรือภาษาซี (รวมถึง C++) มีดังนี้
ในการเขียนโค้ดแบบอิทาเนียม 64 บิตเต็มยศรีจิสเตอร์เหล่านี้จะถูกใช้ทั้งหมด และเพื่อให้เข้ากันได้กับการเขียนโค้ดในสถาปัตยกรรม IA-32 เดิม รีจิสเตอร์เหล่านี้จะถูกจำลอง (register mapping) เป็นรีจิสเตอร์ของแพนเทียม 32 บิต
ตัวอย่างโปรแกรมอิทาเนียม ไม่ใช่แค่ใน C# และจาวาเท่านั้นที่มีเนมสเปส แต่ในภาษาแอสเซมบลีของอิทาเนียมก็มีเนมสเปสกับเขาด้วยเหมือนกัน แต่ความหมายคนละเรื่องกันเลย เนมสเปสในอิทาเนียมมีสามตัวคือ ซิมโบล (Symbols สัญลักษณ์) รีจิสเตอร์ และนีโมนิก ลองดูตัวอย่างโค้ดต่อไปนี้
จากโค้ดข้างบน คำสั่งบรรทัดที่หนึ่งเรากำหนดลาเบลชื่อ r5 นี่คือตัวอย่างการใช้ซิมโบล บรรทัดต่อมาคำสั่ง movl ทำหน้าที่นำข้อมูลในหน่วยความจำตำแหน่งที่ระบุโดย r5 มาใส่ไว้ในรีจิสเตอร์ r4 คำสั่งบรรทัดที่ 3 โหลดข้อมูลสี่ไบต์มาใส่ใน r28 นี่คือตัวอย่างของการอ้างถึงรีจิสเตอร์ บรรทัดที่ 4 นำ 2 มาบวกกับ r1 แล้วนำไปใส่ใน r9 คำสั่ง add คือนีโมนิก ซึ่งอาจะเป็นคำสั่งของอิทาเนียมจริงๆ หรืออาจเป็นพซิวโดออพ (Pseudo-op หมายถึงคำสั่งเทียมที่จะถูกนำไปแปลเป็นภาษาเครื่องอีกที) ก็ได้
ภาษาแอสเซมบลี 64 บิต ไม่ว่าจะเป็นอิทาเนียมหรือ AMD64 หากต้องการใช้ประโยชน์จากสถาปัตยกรรม 64 บิต นักเขียนโค้ดภาษาแอสเซมบลีต้องเขียนโปรแกรมใหม่ทั้งหมด เพราะสิ่งพื้นฐานต่างๆ เปลี่ยนไป เช่นรีจิสเตอร์ถูกเปลี่ยนชื่อ ขนาด และจำนวนไปเกือบทั้งหมด ทำให้คำสั่งต่างๆ แม้นีโมนิกจะเหมือนเดิมแต่โอเปอเรนด์เปลี่ยนไป
C++ 64 บิต แง่มุมหลักที่ผู้ใช้ภาษา C++ ต้องพิจารณาคือขนาดของอินทีเจอร์ และพอยน์เตอร์ที่กลายเป็น 64 บิต การกระทำทางคณิตศาสตร์กับพอยน์เตอร์ คำสั่งที่มีผลต่อบิตโดยตรง เช่นการเลื่อนบิต การหมุนบิต จำนวนไบต์ของโอเปอเรนด์ และอื่นๆ ยกตัวอย่างเช่น
โค้ดสองบรรทัดนี้หากทำงานใน 32 บิตจะปรกติดี แต่เมื่อทำงานแบบ 64 บิตจะเกิดเออเรอร์แบบ บัฟเฟอร์ล้น เพราะขนาดของพอยน์เตอร์โตกว่าเดิม หรืออย่างโค้ดต่อไปนี้
อย่างนี้ก็จะเออเรอร์เช่นกันเพราะจองเนื้อที่อาร์เรย์ไว้ไม่พอ วิธีแก้คือใช้ฟังก์ชัน sizeof() ดังนี้
ถ้าเขียนแบบนี้โปรแกรมจะทำงานได้ถูกต้องทั้งใน 32 และ 64 บิต ต่อไปลองดูปัญหาที่เกิดจากการเลื่อนบิต
ฟังก์ชันนี้หาก bitNum เท่ากับ 32 เมื่อทำงานแบบ 32 บิต mask จะเป็นศูนย์ แต่ถ้าทำงานแบบ 64 บิต mask จะไม่ใช่ศูนย์ปัญหาเกิดจากเลข 1 ที่ใช้ทำ mask มีจำนวนไบต์ต่างจาก ptrdiff_t วิธีแก้ง่ายๆ คือทำแปลงไทป์ให้ตรงกันแบบนี้ จะทำงานได้ถูกต้องทั้งใน 32 และ 64 บิต
อนาคตสดใสในโลก 64 บิต อินเทล (และเอชพี) มองว่าสถาปัตยกรรม x86 โบราณแล้ว ไม่เหมาะกับพีซีแห่งอนาคต จึงออกแบบ อิทาเนียม ให้เป็นนวัตกรรม เป็นสถาปัตยกรรมใหม่เอี่ยม ทรงไว้ซึ่งเทคโนโลยีอันก้าวหน้า เพียบด้วยแนวคิดอันยอดเยี่ยมสารพัด ส่วนสถาปัตยกรรม K8 เป็นแค่การพอกพูนสถาปัตยกรรม x86 ให้หนาขึ้น ถ้ามองในแง่ความพยายาม เพื่อให้เข้ากับสถาปัตยกรรมเดิมถือว่าทำได้ดีมาก ถ้ามองในแง่ความเรียบง่ายก็ถือว่าทำได้อย่างสวยงาม แม้ในทางวัตกรรมถือว่าเป็นรองอิทาเนียม ส่วนในแง่การตลาดถือว่าประสบความสำเร็จดีเยี่ยม เมื่อมีผู้ใช้ชิพ 64 บิตมากขึ้นอีกไม่นานเราคงได้เห็นซอฟต์แวร์ 64 บิตพันธุ์แท้ มันจะเป็นซอฟต์แวร์ที่ทรงพลังอย่างที่ไม่เคยมีมาก่อน โปรแกรมที่จะได้รับประโยชน์จากการเขียนโค้ดแบบ 64 บิต คือโปรแกรมที่กินแรงซีพียู และต้องการหน่วยความจำมากๆ เช่นโปรแกรมสร้างภาพสามมิติและเกม ลองนึกภาพดูว่า เกมเอนจิน (game engine)อย่าง Half-Life2 หรือ Oblivion หากถูกนำมาสร้างใหม่เป็นแบบ 64 บิตจะดีเด่นเพียงใด แค่คิดก็ตื่นเต้นจนอดใจรอไม่ไหวแล้ว
May 17 มาสร้างแผงเสียบ USB กันเถอะไปหน้าแรก | สารบัญ | Laploy.com | ระเบียนบทความ | บทความจากลาภลอย มาสร้างแผงเสียบ USB กันเถอะ สร้างแผงเสียบ USB ติดตั้งด้านหน้าเครื่องเพื่ออำนวยความสะดวกในการใช้งานอุปกรณ์ USB
ตู้ของคอมพิวเตอร์ (เคส case) ส่วนมากมีช่องเสียบ USB ด้านหน้าสองช่อง ด้านหลังสองช่อง แต่เมนบอร์ดรุ่นใหม่มีพอร์ท USB ไม่ต่ำกว่าหกพอร์ท การเสียบสาย USB ด้านหลังเครื่องค่อนข้างลำบาก คงจะสะดวกดีไม่น้อยหากมีช่องเสียบ USB ด้านหน้าเพิ่มขึ้นอีกสี่ช่อง คุณ Azog นำอุปกรณ์รอบตัวมาดัดแปลง สร้างเป็นแผงเสียบ USB ติดตั้งด้านหน้าเครื่อง และเล่าวิธีทำไว้อย่างน่าสนใจในบล็อก Silent Q ดังนี้
บทความโดย : ลาภลอย วานิชอังกูร www.laploy.com จากนิตยสาร CompToday
แฟนของผมอัพเกรดเมนบอร์ดใหม่เป็น คอร์ทูดูโอ ทำให้ต้องอัพเกรดฮาร์ดแวร์หลายๆ อย่างตามไปด้วย เช่นแรม และการ์ดจอ หล่อนอยากจะลงทุนเฉพาะส่วนที่ทำให้เครื่องมีประสิทธิภาพสูงขึ้น จึงตั้งใจจะใช้เคสเดิม แต่ติดปัญหาว่าเคสเดิมมีช่องเสียบ USB ด้านหน้าเพียงสองช่อง หล่อนมีอุปกรณ์ไฮเทคที่ต้องเสียบ USB หลายอัน เช่นกล้อง PDA เครื่องเล่น MP3 เมนบอร์ดใหม่มีพอร์ท USB ถึงสิบพอร์ท แต่ต่อไว้แผงเสียบไว้ด้านหลัง ซึ่งหล่อนบ่นว่าไม่สะดวกเอาเสียเลย วิธีแก้ปัญหาที่ง่ายที่สุดคือซื้อ USB hub แต่จะเสียเงินทำไม ในเมื่อบนเมนบอร์ดก็มีพอร์ท USB มาให้ฟรีอยู่แล้ว ผมจึงพยายามหาซื้อแผงด้านหน้าที่มีช่อง USB สี่ช่อง แต่ก็หาซื้อไม่ได้ เห็นมีขายแต่แผงซึ่งมีช่องเสียบ USB สองช่อง Firewire สองช่อง ช่องเสียบ SATA หนึ่งช่อง ฯลฯ ซึ่งไม่ตรงกับความต้องการ เมื่อหาซื้อไม่ได้ก็ต้องสร้างขึ้นเอง ก็ดีเหมือนกัน เพราะผมชอบการประดิษฐ์และดัดแปลงเครื่องคอมพิวเตอร์อยู่แล้ว สิ่งที่ผมจะทำคือนำฝาปิดช่องไดร์ฟด้านหน้า (คือชิ้นพลาสติกแบนๆ ยาวๆ ที่ใช้ปิดช่องว่างสำหรับติดตั้งซีดีรอมไดร์ฟด้านหน้าเครื่อง) มาเจาะรู้ใส่ช่องเสียบ USB ผลลัพธ์ที่ได้เป็นอย่างที่เห็นในรูปที่ 1
รายการอุปกรณ์
สรุป การสร้างแผงเสียบ USB ติดตั้งด้านหน้าเครื่องเพื่ออำนวยความสะดวกในการเสียบสาย USB ทำได้ไม่ยาก ใช้อุปกรณ์พื้นฐานที่หาได้ตามศูนย์ไอทีทั่วไป ลงทุนไม่เกินสองร้อยบาท (ขึ้นอยู่กับว่ามีวัสดุอะไรอยู่แล้วบ้าง) ใช้เวลาทำสองถึงสามชั่วโมง (ไม่รวมเวลาที่ปล่อยให้กาวแห้งหนึ่งคืน) ที่สำคัญคือได้ความภูมิใจในการสร้างอุปกรณ์คอมพิวเตอร์ด้วยตนเอง |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|