Skip to content

เลขฐานสอง

กรกฎาคม 1, 2011

เลขฐานสอง

       เลขฐานสอง (อังกฤษ: binary numeral system) หมายถึง ระบบเลขที่มีสัญลักษณ์เพียงสองตัวคือ 0 (ศูนย์) กับ 1 (หนึ่ง) บางครั้งอาจหมายถึงการที่มีโอกาสเลือกได้เพียง 2 ทาง เช่น ปิดกับเปิด, ไม่ใช่กับใช่, เท็จกับจริง, ซ้ายกับขวา เป็นต้น

ถ้าแปลงค่าเลขฐานสิบ มาเป็นเลขฐานสอง จะได้ดังนี้

1 = 1

2 = 10

3 = 11

4 = 100

5 = 101

6 = 110

7 = 111

8 = 1000

9 = 1001

10 = 1010

ในปัจจุบันเลขฐานสองเป็นพื้นฐานในการทำงานของคอมพิวเตอร์ โดยนำเอาหลักการของเลขฐานสอง (สถานะไม่มีไฟฟ้า และ สถานะมีไฟฟ้า) มาใช้ในการสร้างไมโครโปรเซสเซอร์ที่มีหน่วยประมวลผลแบบ 32 หรือ 64 บิต หรือมากกว่านั้น ซึ่งสามารถเรียกได้ว่าเป็นการประมวลผลแบบดิจิทัล เลขฐานสิบเข้ารหัสฐานสอง หรือ บีซีดี (Binary-coded decimal : BCD) เป็นระบบเลขที่ใช้เลขฐานสองจำนวนอย่างน้อย 4 บิตแทนเลขฐานสิบ 0 ถึง 9 ในแต่ละหลัก เพื่อความสะดวกในการแสดงผลจากการคำนวณด้วยคอมพิวเตอร์หรืออุปกรณ์อิเล็กทรอนิกส์ ตัวอย่าง เลขฐานสิบ 127 จะสามารถแปลงเป็นบีซีดีได้เป็น 0001 0010 0111 เป็นต้น โดยพื้นฐานแล้วบีซีดีจะต้องมีบิตอย่างน้อย 4 บิตจึงจะแสดงผลออกมาได้ครบทั้ง 0-9 แต่ในทางปฏิบัติแล้วเมื่อนำบีซีดีไปคำนวณ เช่นการบวกหรือการลบ อาจจะต้องมีบิตอื่นเพิ่ม เพื่อใช้ในการทดเลขหรือการกำหนดเครื่องหมาย และเนื่องจากบีซีดีเป็นระบบเลขที่สร้างขึ้นเพื่อใช้งานในคอมพิวเตอร์และอิเล็กทรอนิกส์เป็นหลัก เลขในแต่ละบิตจึงสามารถเก็บอยู่ในหน่วยความจำได้ ประเภทของบีซีดีคอมพิวเตอร์ในปัจจุบันได้กำหนดหน่วยของความจุไว้ว่า 1 ไบต์เท่ากับ 8 บิต นั่นหมายความว่าเราสามารถเก็บบีซีดีได้ 1-2 หลักต่อ 1 ไบต์ ถ้าเก็บ 2 หลักจะเรียกว่า “packed BCD” และถ้าเก็บหลักเดียวเรียกว่า “unpacked BCD” ซึ่งสามารถดึงค่าออกมาคำนวณง่ายกว่า แต่กินเนื้อที่มากกว่าแบบแรกเป็นเท่าตัว ตัวอย่างเช่น เลขฐานสิบ 2653 เมื่อแปลงเป็นรูปแบบ packed จะได้เป็น 0010 0110 0101 0011 (ใช้หลักละ 4 บิต) ในขณะที่รูปแบบ unpacked จะเป็น 00000010 00000110 00000101 00000011 (เติม 0 ในบิตที่เหลือจนครบ 8 บิต) การบวกและการลบบีซีดีการบวกและการลบบีซีดี สามารถกระทำได้เหมือนการบวกและการลบเลขฐานสอง แต่จะแตกต่างกันเล็กน้อยตรงที่เมื่อผลลัพธ์นั้นมีการทดไปหลักอื่น หรือบีซีดีมีค่ามากกว่า 9 ในหลักใดๆ จะต้องมีการปรับบีซีดีใหม่ให้ทุกหลักมีค่าเป็น 0-9 ดังเดิม

ตัวอย่าง หากต้องการหาผลลัพธ์ของ 237 + 282 ในรูปแบบบีซีดี สามารถกระทำได้ดังนี้

237 = 0010 0011 0111 

282 = 0010 1000 0010 +

ผลบวก = 0100 1011 1001 

 

จะเห็นว่าหลักสิบเป็น 1011 ซึ่งเท่ากับ 11 มีค่ามากกว่า 9 วิธีการปรับบีซีดีคือนำ 2’s complement ของ 10 ไปบวกเข้ากับหลักนั้น (เปรียบเหมือนการลบด้วย 10) ซึ่งนั่นก็คือ 0110 แล้วนำบิตที่เกินไปบวกเพิ่มในหลักถัดไป

ผลบวก = 0100 1011 1001 

ปรับบีซีดี = 0000 0110 0000 +

 0100 10001 1001 

ผลลัพธ์ = 0101 0001 1001 

เราจะได้ว่า 237 + 282 = 519

สำหรับการลบเลขบีซีดีนั้นให้ทำเหมือนการบวก แต่ต้องเปลี่ยนตัวลบให้อยู่ในรูปแบบ 2’s complement ทุกหลักเสียก่อน แล้วจึงบวกไปตามปกติ

อ้างอิง th.wikipedia.org

From → Uncategorized

ให้ความเห็น

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

%d bloggers like this: