การแทนเลขฐานสอง

เราสามารถทำให้เลขฐานสองเป็นสองกลุ่มต่อไปนี้ - Unsigned numbers และ Signed numbers.

หมายเลขที่ไม่ได้ลงชื่อ

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

หมายเลขลงนาม

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

หากบิตเครื่องหมายเป็นศูนย์ซึ่งบ่งชี้ว่าเลขฐานสองเป็นบวก ในทำนองเดียวกันถ้าบิตเครื่องหมายเป็นหนึ่งซึ่งบ่งชี้ว่าเลขฐานสองเป็นลบ

การเป็นตัวแทนของเลขฐานสองที่ไม่ได้ลงนาม

บิตที่มีอยู่ในเลขฐานสองที่ไม่ได้ลงนามถือนามสกุล magnitudeของตัวเลข นั่นหมายความว่าหากเลขฐานสองที่ไม่ได้ลงนามมี‘N’ บิตแล้วทั้งหมด N บิตแสดงขนาดของตัวเลขเนื่องจากไม่มีบิตเครื่องหมายใด ๆ

Example

พิจารณาไฟล์ decimal number 108. เลขฐานสองเทียบเท่าของจำนวนนี้คือ1101100. นี่คือการแสดงเลขฐานสองที่ไม่ได้ลงชื่อ

(108) 10 = (1101100) 2

มันมี 7 บิต 7 บิตเหล่านี้แสดงขนาดของตัวเลข 108

การเป็นตัวแทนของเลขฐานสองที่ลงนาม

บิตที่มีนัยสำคัญที่สุด (MSB) ของเลขฐานสองที่ลงนามใช้เพื่อระบุสัญลักษณ์ของตัวเลข ดังนั้นจึงเรียกอีกอย่างว่าsign bit. เครื่องหมายบวกแสดงโดยการวาง '0' ในบิตเครื่องหมาย ในทำนองเดียวกันเครื่องหมายลบจะแสดงโดยการวาง '1' ในบิตเครื่องหมาย

หากเลขฐานสองที่ลงนามมีบิต 'N' ดังนั้นบิต (N-1) จะแสดงเฉพาะขนาดของตัวเลขเนื่องจากมีการสงวนไว้หนึ่งบิต (MSB) สำหรับแสดงเครื่องหมายของตัวเลข

มีสามตัว types of representations สำหรับเลขฐานสองที่ลงนาม

  • แบบฟอร์ม Sign-Magnitude
  • แบบฟอร์มเสริม 1
  • แบบฟอร์มเสริม 2

การแทนจำนวนบวกในทั้ง 3 รูปแบบจะเหมือนกัน แต่การแทนค่าจำนวนลบเท่านั้นที่จะแตกต่างกันในแต่ละรูปแบบ

Example

พิจารณาไฟล์ positive decimal number +108. ความเทียบเท่าไบนารีของขนาดของตัวเลขนี้คือ 1101100 7 บิตเหล่านี้แสดงขนาดของตัวเลข 108 เนื่องจากเป็นจำนวนบวกให้พิจารณาบิตเครื่องหมายเป็นศูนย์ซึ่งวางไว้ทางด้านซ้ายของขนาดส่วนใหญ่

(+108) 10 = (01101100) 2

ดังนั้นไฟล์ signed binary representationของเลขทศนิยมที่เป็นบวก +108 คือ ดังนั้นการแทนค่าเดียวกันจึงใช้ได้ในรูปแบบขนาดเครื่องหมายรูปแบบส่วนเติมเต็มของ 1 และรูปแบบเสริมของ 2 สำหรับจำนวนทศนิยมที่เป็นบวก +108

แบบฟอร์ม Sign-Magnitude

ในรูปแบบขนาดเครื่องหมาย MSB ใช้สำหรับการแสดง sign ของจำนวนและบิตที่เหลือแสดงถึง magnitudeของจำนวน ดังนั้นเพียงใส่บิตเครื่องหมายที่ด้านซ้ายสุดของเลขฐานสองที่ไม่ได้ลงชื่อ การแทนค่านี้คล้ายกับการแสดงตัวเลขทศนิยมที่เซ็นชื่อ

Example

พิจารณาไฟล์ negative decimal number -108. ขนาดของตัวเลขนี้คือ 108 เรารู้ว่าการแทนเลขฐานสองที่ไม่ได้ลงชื่อของ 108 คือ 1101100 มันมี 7 บิต บิตทั้งหมดนี้แสดงถึงขนาด

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

( −108) 10 = (11101100) 2

ดังนั้นการแสดงขนาดเครื่องหมายของ -108 คือ 11101100.

แบบฟอร์มเสริม 1

ส่วนเติมเต็มของตัวเลข 1 ได้มาจาก complementing all the bitsของเลขฐานสองที่ลงนาม ดังนั้นส่วนเติมเต็มของจำนวนบวก 1 จะให้จำนวนลบ ในทำนองเดียวกันส่วนเติมเต็มของ 1 ของจำนวนลบจะให้จำนวนบวก

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

Example

พิจารณาไฟล์ negative decimal number -108. ขนาดของตัวเลขนี้คือ 108 เราทราบว่าการแทนเลขฐานสองที่ลงนามของ 108 คือ 01101100

มันมี 8 บิต MSB ของตัวเลขนี้เป็นศูนย์ซึ่งบ่งบอกถึงจำนวนบวก การเติมศูนย์เป็นหนึ่งและในทางกลับกัน ดังนั้นให้แทนที่เลขศูนย์ด้วยเลขและเลขศูนย์เพื่อให้ได้จำนวนลบ

( −108) 10 = (10010011) 2

ดังนั้นไฟล์ 1’s complement of (108)10 คือ (10010011)2.

แบบฟอร์มเสริม 2

ส่วนประกอบ 2 ของเลขฐานสองหาได้จาก adding one to the 1’s complementของเลขฐานสองที่ลงนาม ดังนั้นการเติมเต็ม 2 ของจำนวนบวกจึงให้จำนวนลบ ในทำนองเดียวกันส่วนเติมเต็ม 2 ของจำนวนลบจะให้จำนวนบวก

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

Example

พิจารณาไฟล์ negative decimal number -108.

เรารู้ส่วนประกอบ 1 ของ (108)10 คือ (10010011)2

คำชมของ 2 (108) 10 = 1 ชมเชย (108) 10 + 1

= 10010011 + 1

= 10010100

ดังนั้นไฟล์ 2’s complement of (108)10 คือ (10010100)2.