More servicesWindows Live
HomeHotmailSpacesOneCare
 
MSN
Sign in
 
 
Spaces home  เรียนรู้ด้วยตนเอง OOP C#...ProfileFriendsBlogMore Tools Explore the Spaces community

เรียนรู้ด้วยตนเอง OOP C# .NET

เรียนวิธีคิดแบบ OOP แล้วประยุกต์ใช้ด้วยการเขียนโปรแกรมภาษา C# .NET และบทความอื่นๆ

ลาภลอย

View spaceSend a message
ลาภลอย วานิชอังกูร ทำงานด้านคอมพิวเตอร์มานานกว่ายี่สิบปี สามารถเขียนโปรแกรมได้คล่องหลายภาษา เคยทำงานด้านคอมพิวเตอร์ที่ประเทศสหรัฐอเมริกา ประเทศเยอรมัน และประเทศสวิส เคยเป็นครูสอนวิชาคอมพิวเตอร์ เคยเป็นบรรณาธิการนิตยสารคอมพิวเตอร์ มีผลงานบทความ และตำราคอมพิวเตอร์จำนวนมาก ปัจจุบันทำหน้าที่เป็นผู้ให้คำปรึกษาด้านฮาร์ดแวร์และซอฟท์แวร์แก่บริษัทขนาดใหญ่หลายแห่ง ท่านสามารถติดต่อกับผู้เขียนได้ที่เว็บบอร์ดที่ระบุไว้ข้างบนสุดของหน้านี้
May 24

ระเบียนบทความ

ระเบียนบทความ

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

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

 


  

สร้างกราฟอย่างง่ายใน ASP.NET   
ฝึกหัดสร้างกราฟเส้นอย่างง่ายในหน้าเว็บแบบ ASP.NET โดยใช้ control สำเร็จรูปชื่อ WebChart สอนวิธีเขียนโปรแกรมภาษา C# เพื่อกำหนดค่าของกราฟ เป็นแบบฝึกที่ละขั้น (step by step approach) อย่างง่ายที่สุดสำหรับมือใหม
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!636.entry

 


  
  

เชื่อมต่อฐานข้อมูล Oracle   
ฐานข้อมูลสำหรับ WebApp นอกจาก Microsoft SQL แล้วหน่วยงานต่างๆ ยังนิยมใช้ Oracle 10g กันมาก เนื่องจากมีท่านผู้อ่านสอบถามมาในกระดานข้อความ www.laploy.com/gbook เกี่ยวกับเรื่องนี้มาก ผู้เขียนตัดสินใจเขียนรับใช้เป็นบทความนี้ โดยจะสอนวิธีเซตค่าให้หน้าเว็บ ASP.NET 2.0 เพื่อเชื่อมต่อกับฐานข้อมูล Oracle 10g โดยใช้ control ของ .NET Framework ชื่อ SqlDataSource
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!661.entry

 


 

วัดอุณหภูมิและความชื้นด้วย C# ตอน 1   
เขียนโปรแกรมภาษา C# ใน .NET Framework นิยามคลาสวัดอุณหภูมิและความชื้นที่นำไปใช้ได้ทั้งใน WinForm และ WebForm
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!709.entry

 

 

วัดอุณหภูมิและความชื้นด้วย C# ตอน 2 (ตอนจบ)   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!876.entry

 


  

สร้างหุ่นยนต์ใหม่จากซากไดร์ฟเก่า   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!755.entry
ดัดแปลงดิสก์ไดร์ฟที่เสียแล้วนี้ให้เป็นหุ่นหนูน้อย (สับเซทของหุ่นหนู)พื้นฐานการใช้งานสเต็ปปิ้งมอเตอร์ การประกอบโครงสร้างหุ่น และการใช้คอมพิวเตอร์ในการควบคุมหุ่น

 


  

สร้าง Hash table ( ตารางแฮช ) ด้วยภาษา C++ และจาวา ตอน 1   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!807.entry
ตารางแฮช หรือ Hash table คือโครงสร้างข้อมูลชนิดหนึ่ง นักเขียนโปรแกรมสามารถนำตารางแฮช มาใช้เก็บข้อมูลขนาดใหญ่ได้อย่างมีประสิทธิภาพ ในบทความนี้คุณจะได้เรียนวิธีสร้างและประยุกต์ใช้งาน

 

  

สร้าง Hash table ( ตารางแฮช ) ด้วยภาษา C++ และจาวา ตอน 2   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!808.entry

 


  

หน่วยความจำ ชนิดของข้อมูล และการระบุตำแหน่ง   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!841.entry
ถ้าคุณพยายามค้นหาชื่อของคุณที่อยู่ในรายชื่อหนึ่งล้านชื่อ คุณต้องพยายามมากสุดกี่ครั้ง ถ้าตอบว่าหนึ่งล้านครั้งละก็ผิด ไม่ใกล้เคียงเลยด้วยซ้ำ อันที่จริงแล้วคำตอบคือ 20 แต่คุณจะต้องจัดรายชื่อให้เป็นโครงสร้างที่ค้นหาได้ง่าย

 


  

Windows Mobile 6   
WM6 มีอินเตอร์เฟสที่สวยทันสมัยเข้ากับ Windows Vista และทำงานเร็วขึ้นมาก เพียงเท่านี้จะคุ้มค่ากับการอัพเกรดหรือไม่ การปรับปรุงคุณสมบัติต่างๆ แม้จะไม่หวือหวา แต่เมื่อมองโดยรวมแล้ว WM6 น่าใช้กว่า WM5 จริงหรือ
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!894.entry

 


  

Gostai บริษัทหุ่นยนต์ผู้ท้าชนไมโครซอฟต์   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!964.entry
บริษัทเล็กๆ ที่เพิ่งก่อตั้งได้ปีเดียว มีพนักงานไม่ถึงสิบคน มีไม้ตายอะไรจึงกล้าท้าชนยักษ์ใหญ่?

 

สร้าง Stack ด้วย C#   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!970.entry
นักเขียนโค้ดจำนวนมากคิดว่าภาษา C# ใช้เขียนโปรแกรมสร้าง Stack ไม่ได้ การสร้าง Stack จำเป็นต้องเขียนด้วยภาษาซีหรือภาษา C++ เท่านั้น ความเข้าใจเช่นนั้นผิด เราสามารถใช้ภาษา C# สร้าง Stack ได้ และสนุกด้วย

 


   

Flash memory – แผ่นจิ๋วแห่งความจำ   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!976.entry
การ์ดความจำจิ๋วขนาดเล็บนิ้วมือนี้มีความเป็นมาอย่างไร และจะมีอนาคตเป็นอย่างไร อะไรคือ NAND อะไรคือ NOR การ์ดแบบ  SD ต่างจาก MMC อย่างไร มันจะมาแทนที่ฮาร์ดดิสก์ได้หรือไม่

 


   

Multi-touch screen ลาก่อนแป้นพิมพ์-เมาส์ สวัสดี!จอหลากสัมผัส    
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1034.entry
อหลากสัมผัสเป็นนวัตกรรม มันแตกต่างจากจอภาพระบบสัมผัสธรรมดาที่เราคุ้นเคยกัน จอภาพระบบสัมผัสธรรมดาอย่างที่เห็นตามตู้เอทีเอ็ม ตู้ให้ข้อมูลตามห้างสรรพสินค้า (kiosk) หรือแม้แต่ในเครื่องคอมพิวเตอร์พกพา  (PDA) รับรู้การกดได้เพียงจุดเดียวเท่านั้น แต่จอหลากสัมผัสรับรู้การกดพร้อมๆ กันได้หลายจุด (มากกว่า 50 ตำแหน่ง)  นอกจากนั้นมันยังสามารถแยกแยะอากัปกริยาของนิ้วและความหนักเบาในการกดได้อีกด้วย ยิ่งไปกว่านั้น จอชนิดนี้สามารถ “เห็น” สิ่งที่ถูกวางไว้บนมัน และมีปฏิสัมพันธ์กับอุปกรณ์พกพาดิจิตอลที่มันเห็นได้

 


    

ActionScript 3 ตอน 1 สร้างเว็บลวดลายจัด   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1087.entry
ยุคการสร้าง application ในเว็บมาถึงนานแล้ว นานจนกระทั่งคำว่า client/server ไม่มีใครพูดกันอีก เพราะใครๆ ก็สร้าง web application (webapp) ที่เป็น client/server จนเป็นเรื่องธรรมดา แต่ webapp วันนี้จะไม่เป็นเพียง form ที่มีช่องให้กรอกมีปุ่ม submit ให้กดส่งข้อมูลอีกต่อไป webapp สมัยใหม่ต้องมีลูกเล่นมากมีลวดลายจัด

 


    

นิยายนักสืบตอน 1 : Hackarmy-A   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1109.entry
“ดูเหมือนว่า...” คำพูดของผมหายไปเฉยๆ จนต้องกลืนน้ำลายแล้วกระแอมก่อนจะพูดต่อไปว่า “file server ของคุณได้กลายเป็นแหล่งเผยแพร่ซอฟท์แวร์เถื่อนไปแล้วนะครับ”

 


    
   
    

มาทำลายคอมพิวเตอร์กันเถอะ!!  
ขั้นตอนง่ายๆ และประหยัด ที่คุณก็ทำเองได้ เพื่อทำให้คอมพิวเตอร์ของคุณมีประสิทธิภาพต่ำกว่าศูนย์
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1120.entry
ความสุขของคุณคือการเห็นคอมพิวเตอร์ชำรุด - การได้แบกคอมฯ ไปซ่อมที่ร้าน - การได้จ่ายเงินค่าซ่อมให้ช่าง เป็นอย่างนั้นใช่หรือไม่? ถ้าใช่! โปรดอ่านบทความนี้ เพราะผู้เขียนจะแนะนำเคล็ดลับต่างๆ เพื่อให้คุณสมหวังได้ไม่ยาก!

 



   

สร้าง IrDA ด้วยตนเอง   
สร้างตัวรับส่งอินฟราเรดโดยใช้อุปกรณ์หาง่ายราคาถูก เพื่อเชื่อมต่อคอมพิวเตอร์ของคุณกับอุปกรณ์ไฮเทคแบบไร้สาย
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1168.entry
สอนวิธีสร้าง IrTxRx ขึ้นใช้เอง โดยใช้วัสดุเหลือใช้รอบๆ ตัว หรือซื้อจากร้ายขายอะไหล่อิเล็กทรอนิกส์ วงจรไม่ซับซ้อน (ออกแบบโดย Alain Gailland) ใช้อุปกรณ์ไม่กี่ชิ้น ใครก็ตามที่บัดกรีเป็นก็สามารถทำได้เอง และจะแสดงตัวอย่างการประยุกต์ใช้งาน โดยการสาทิตวิธีเชื่อมต่อ Pocket PC กับเครื่องพีซีเพื่อทำ ActiveSync แบบไร้สาย และสุดท้ายจะแสดงวิธีเชื่อมต่อกับโทรศัพท์มือถือเพื่อเข้าอินเตอร์เน็ตผ่านระบบ GPRS

 


    

ชนิดข้อมูลในภาษา C# (ตอน 1)   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1176.entry
อ่านเรื่องซับซ้อนก้าวหน้ากันมามากแล้ว วันนี้มาดูเรื่องพื้นฐานใกล้ๆ ตัวที่ต้องพบเจอกันทุกวันบ้าง ในบทความชุดนี้จะนำเสนอเรื่องของหน่วยความจำ การอ้างแอดเดรส และชนิดข้อมูลในภาษา C# กันหน่อย เพราะเป็นเรื่องสำคัญในการเขียนโปรแกรมจัดการข้อมูลและโครงสร้างข้อมูลทุกแบบ

 


    

ชนิดข้อมูลในภาษา C# (ตอน 2)  
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1192.entry
เรากำหนดขนาดของหน่วยความจำที่ต้องการจองได้โดยเลือกกลุ่มชนิดของข้อมูล จากนั้นก็ต้องเลือกชนิดของข้อมูลที่อยู่ในกลุ่มนั้น ว่าชนิดใดจึงเหมาะกับข้อมูลที่จะจัดเก็บ

 


    

ชนิดข้อมูลในภาษา C# (ตอนจบ)   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1199.entry
การอ้างหน่วยความจำหรือ memory addressing หมายถึงการระบุตำแหน่งของหน่วยความจำ (แรมในคอมพิวเตอร์) เพื่อบอกให้ตัวแปลภาษารู้ว่าเราจะเอาอะไรไปเก็บที่ไหน เนื่องจากภาษา C# มีลักษณะ managed code ทำให้ปรกติเราจะไม่เขียนอ่านหน่วยความจำโดยตรง แต่จะให้ CLR และระบบปฏิบัติการจัดการให้โดยอัตโนมัติ ที่ผู้เขียนหยิบยกเรื่องนี้มาพูด เพราะการการรู้ว่าการอ้างหน่วยความจำเป็นอย่างไร ก็เป็นสิ่งที่น่าสนใจและจะช่วยให้เห็นภาพรวมของโครงสร้างข้อมูลได้ดี

 

นิยายนักสืบ ตอน : วิชามาร Social Engineering    
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1209.entry
หากผมล้วงงูพิษหรือระเบิดออกมาวางบนโต๊ะ ปฏิกิริยาของผู้เข้าประชุมคงไม่แตกต่างจากตอนนี้ เพราะทุกคนทำท่าทางเลิกลักส่งเสียงพึมพำ เว้นแต่คุณลีลาวดีที่ไม่ส่งเสียงอะไร นั่งนิ่งหน้าถอดสี

 


    

แจกโค้ด C# วันสงกรานต์ 2551   
วันนี้ฤกษ์งามยามดี วันสงกรานต์ ปี พ.ศ. 2551 อะไรจะดีสำหรับผมไปกว่าการเขียนรับใช้ท่านผู้อ่าน โดยแจกโค้ดแบบ Tricks & Tips ที่น่าสนใจและมีประโยชน์
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1212.entry
เชื่อมสองเทเบิ้ลภายในหนึ่งดาต้าเซต  /  สร้างวิวภายในดาต้าเทเบิ้ล /  โหลดไฟล์ XML เข้าสู่ดาต้าเซต  /  การสร้างเท็กซ์ไฟล์  /  การอ่านเท็กซ์ไฟล์  /  การแทรกข้อมูลเข้าสู่เท็กซ์ไฟล์  /   เซฟรูปภาพสามฟอร์แมต  /  จับข้อมูลใส่ DataGridView   /   อัพเดตฐานข้อมูลจาก DataGridView /  ยืนยันการลบ  /  กำหนดความกว้างโดยอัตโนมัติให้ DataGridView  /  กำหนดความกว้างโดยอัตโนมัติให้ DataGridView  /  เลือกและทำแถบเน้นให้ DataGridView

 


    

สกิมเมอร์ : เทคโนโลยีโฉดเพื่อทรชน   
ว้ายร้ายยุคไฮเทคปล้นเงินของคุณได้โดยไม่ต้องชักมีดหรือปืน อาวุธเพียงอย่างเดียวของมันคือสกิมเมอร์
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1250.entry
สกิมเมอร์ (skimmer เครื่องดูดหรือกวาดข้อมูล) คือสิ่งประดิษฐ์ที่คนร้ายสร้างขึ้นโดยนำเครื่องอ่านแถบแม่เหล็ก วงจรถอดรหัส และวงจรหน่วยความจำมาประกอบเข้าด้วยกัน สกิมเมอร์มีหลายขนาดตั้งแต่เท่ากับกล่องใส่รองเท้า ไปจนถึงขนาดเท่าซองบุหรี่ที่คนร้ายซ่อนไว้ในอุ้งมือได้ ใช้พลังงานจากแบตเตอรี่จึงสามารถพกพาได้สะดวก

 

 

    

คิวสวยด้วย C#  
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1259.entry
ในบทความตอนที่แล้วผู้เขียนเสนอวิธีสร้าง Stack ด้วยภาษา C# บทความตอนนี้ก็เป็นเรื่องของโครงสร้างข้อมูลอีกเช่นกัน แต่คราวนี้เราจะมาดูวิธีสร้าง “คิว” (Queue) โดยใช้ภาษา C# กันบ้าง สิ่งที่ท่านจะได้เรียนรู้จากบทความตอนนี้คือ
    * หลักการทำงานของโครงสร้างข้อมูลแบบคิว
    * วิธีนิยามคลาสคิวด้วยภาษา C#
    * วิธีทำ constructor overloading
    * วิธีใช้งาน generic queue ของ .NET Framework

 


    

ActionScript ตอน 2 สร้างลูกศรหันตามเมาส์   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1287.entry
เขียนโปรแกรมภาษา ActionScript 3.0 สร้างออพเจ็กต์ลูกศรที่หันหัวชี้ไปตามการเคลื่อนไหวของเมาส์พอยน์เตอร์ ได้ผลลัพธ์เป็น Flash Movie ไว้ใช้งานในหน้าเว็บ

 


    

    

มาสร้างแผงเสียบ USB กันเถอะ   
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1326.entry
สร้างแผงเสียบ USB ติดตั้งด้านหน้าเครื่องเพื่ออำนวยความสะดวกในการใช้งานอุปกรณ์ USB

 



    

เขียนโค้ดให้สนุกในยุค 64 บิต  
เชิญท่องแดนหฤหรรษ์แห่งการเขียนโปรแกรมในซีพียูแบบ 64 บิต
http://thai-cs.spaces.live.com/blog/cns!4D52C1812766D2D7!1356.entry
บัดนี้ซีพียู 64 บิตกลายเป็นซีพียูมาตรฐานไปแล้ว จึงได้ฤกษ์อันเป็นมงคล ที่เหล่าโปรแกรมเมอร์ จะอพยพจากโลก 32 บิต ไปเขียนโค้ดแบบ 64 บิตกันเสียที ผู้เขียนขอเสนอตัวเป็นมัคคุเทศก์ นำท่านไปเที่ยวชมโมเดลการเขียนโปรแกรม 64 บิต ทั้งแบบอินเทลและแบบ AMD ความเป็นมาของซีพียู 64 บิต สาเหตุที่ทำให้ AMD สามารถสร้างซีพียูเลียนแบบอินเทลได้และแซงหน้าไปในที่สุด  ตำนานสถาปัตยกรรม อิทาเนียม อันลือลั่นของอินเทล ที่ AMD เยาะว่าไม่ช้าจะสิ้นชื่อ

เขียนโค้ดให้สนุกในยุค 64 บิต

  • วันจันทร์ที่ 15 ตุลาคม พ.ศ. 2550
  • บทความโดย : ลาภลอย วานิชอังกูร (laploy.com)
  • ลงพิมพ์ใน : นิตยสาร WinMag

เขียนโค้ดให้สนุกในยุค 64 บิต
เชิญท่องแดนหฤหรรษ์แห่งการเขียนโปรแกรมในซีพียูแบบ 64 บิต

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

หากท่านต้องการทราบคำตอบว่า อะไรคือสถาปัตยกรรม x86-64, IA32, IA64, EM64, Intel64 และ AMD64 โมเดลเขียนโปรแกรมของซีพียู 64 บิตจาก AMD และอินเทล เหมือนหรือแตกต่างกันหรือไม่ ซอฟต์แวร์เดิมแบบ 16 และ 32 บิตจะยังทำงานกับซีพียู 64 บิตได้หรือไม่ นักเขียนโปรแกรมต้องปรับตัว หรือเปลี่ยนวิธีเขียนโปรแกรมอย่างไรบ้าง จึงจะสามารถสร้างซอฟต์แวร์แบบ 64 บิตได้ ขอเชิญพบคำตอบเหล่านี้ และหัวข้อที่น่าสนใจอื่นๆ อีกมากได้ในบทความนี้

 

64 บิตดีอย่างนี้ไงหล่ะ!
แม้ผู้ซื้อคอมพิวเตอร์ตอนนี้จะได้ชิพ 64 บิตกันทั่วหน้า แต่ก็ใช้ระบบปฏิบัติการ 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 บิต รีจิสเตอร์ภายในก็เป็นสิบหกบิต แต่บัสข้อมูลมีขนาดแปดบิต

007

ไมโครโปรเซสเซอร์ 8088

 

นิทานอินเทล

บริษัทอินเทลออกจำหน่ายไมโครโปรเซสเซอร์ 8086 ซึ่งเป็นซีพียูขนาด 16 บิตตัวแรกในปี 1978 และตามด้วย 80386 ซึ่งเป็นซีพียูขนาด 32 บิตในปี 1986 ปัจจุบันอินเทล เรียกสถาปัตยกรรมนี้ว่า IA-32  กลายเป็นรากฐานของโ