fbpx
วิกิพีเดีย

การแทนจำนวนมีเครื่องหมาย

การแทนจำนวนมีเครื่องหมาย (อังกฤษ: Signed number representations) เป็นวิธีการแทนจำนวนที่อาจติดลบได้ในหน่วยความจำ เพื่อให้สะดวกต่อการนำมาดำเนินการต่าง ๆ และมีประสิทธิภาพ วิธีการโดยทั่วไปคือแบ่งพื้นที่ออกเป็นสองส่วน โดยในส่วนแรกนั้นจะเป็นส่วนที่เรียกว่า Magnitude หรือค่าขนาดของบิตตัวเลข มีตำแหน่งอยู่ที่สามนับจากขวา และส่วนที่สองจะเรียกว่า Signed Bit หรือค่าขนาดหนึ่งบิตแทนเครื่องหมายบวกหรือลบ หรือเรียกสั้นๆ ว่าบิตเครื่องหมาย โดยที่บิตเครื่องหมายนี้จะมีค่าเป็นบิตสูงสุด มีตำแหน่งอยู่หน้าสุด ดังนั้นในตัวเลขดิจิตอลหนึ่งตัวสามารถที่จะแทนได้ทั้งค่าบวก และค่าลบ ซึ่งถ้าบิตเครื่องหมายเป็น 0 ค่าของบิตสูงสุดจะมีค่าเป็นบวก แต่ถ้าบิตเครื่องหมายเป็น 1 ค่าของบิตสูงสุดจะมีค่าเป็นลบ ไม่ว่าบิตเครื่องหมายจะเป็น 0 หรือ 1 ก็ตามค่าขนาดของบิตจะเหมือนเดิม ดังตัวอย่างต่อไปนี้

ตัวอย่างที่ 1
  • +12 = 0000 1100
  • -12 = 1000 1100
ตัวอย่างที่ 2
  • +20 = 0001 0100
  • -20 = 1001 0100

จากตัวอย่างจะเป็นการแทนค่าตัวเลขดิจิตอลแบบ Sign-Magnitude System หลังจากที่ได้ดูตัวอย่างแล้วจะพบว่าความแตกต่างระหว่างบวกและลบ เช่น +12 และ -12 จะแตกต่างกันเพียงค่าของบิตเครื่องหมายเท่านั้น ส่วนค่าขนาดของบิตจะมีค่าเท่ากัน ถึงแม้ว่าระบบเลขดิจิตอลแบบนี้จะสามารถแทนค่าบวกและค่าลบได้ แต่ในการคำนวณของเครื่องคิดเลขจะไม่สามารถใช้คำนวณระบบนี้ได้

ส่วนเติมเต็มหนึ่ง

ส่วนเติมเต็มหนึ่ง (1’s Complement) เป็นการเปลี่ยนค่าสถานะของบิตเครื่องหมาย คือถ้าบิตเครื่องหมายเป็น 1 ให้เปลี่ยนเป็น 0 และถ้าบิตเครื่องหมายเป็น 0 ให้เปลี่ยนเป็น 1 โดยที่จะทำการเปลี่ยนสถานะทุกบิตกลับกันทั้งหมด ตามตัวอย่างต่อไปนี้

ตัวอย่างที่ 1
  • +12 = 0000 1100
  • -12 = 1111 0011 (ส่วนเติมเต็มหนึ่ง)
ตัวอย่างที่ 2
  • +18 = 0001 0010
  • -18 = 1110 1101 (ส่วนเติมเต็มหนึ่ง)


ส่วนเติมเต็มสอง

ส่วนเติมเต็มสอง (2’s Complement System) เป็นเหมือนกับส่วนเติมเต็มหนึ่ง แต่หลังจากได้ผลลัพธ์มาแล้วให้บวกค่าเพิ่มเข้าไปอีก 1 การทำเช่นนี้เป็นการปรับปรุงเพิ่มเติมต่อจากส่วนเติมเต็มหนึ่งเพื่อให้มีค่า 0 เพียงแค่ค่าเดียว และทำให้ไม่ต้องเพิ่มค่าบิตที่ล้นกลับเข้าไปเหมือนที่ต้องทำในการทำส่วนเติมเต็มหนึ่ง ระบบส่วนเติมเต็มสองสามารถทำได้โดยถ้าเป็นเลขบวกไม่ต้องเปลี่ยนค่าสถานะของบิตเครื่องหมาย แต่ถ้าเป็นเลขลบ ให้ทำการกลับค่าโดยการทำส่วนเติมเต็มหนึ่งทุกบิต และบวก 1 เสมอตามตัวอย่างต่อไปนี้

ตัวอย่างที่ 1
  • +12 = 0000 1100
  • -12 = 1111 0011 (ส่วนเติมเต็มหนึ่ง)
  • 1111 0011 + 1
    • -12 = 1111 0100 (ส่วนเติมเต็มสอง)
ตัวอย่างที่ 2
  • +16 = 0001 0000
  • -16 = 1110 1111 (ส่วนเติมเต็มหนึ่ง)
  • 1110 1111 + 1
    • -16 = 1111 0000 (ส่วนเติมเต็มสอง)

ตารางเปรียบเทียบ

ตารางต่อไปนี้แสดงจำนวนเต็มบวกและลบที่สามารถแทนได้ในระบบ 4 บิตแบบต่าง ๆ

การแทนจำนวนเต็ม 4 บิต
ฐานสิบ ไม่มีเครื่องหมาย เครื่องหมายกับขนาด ส่วนเติมเต็มหนึ่ง ส่วนเติมเต็มสอง เอกซ์เซสส์-7 (ตั้งจุด) ฐานลบสอง
+16     N/A N/A N/A N/A N/A N/A
+15     1111 N/A N/A N/A N/A N/A
+14     1110 N/A N/A N/A N/A N/A
+13     1101 N/A N/A N/A N/A N/A
+12     1100 N/A N/A N/A N/A N/A
+11     1011 N/A N/A N/A N/A N/A
+10     1010 N/A N/A N/A N/A N/A
+9     1001 N/A N/A N/A N/A N/A
+8     1000 N/A N/A N/A 1111 N/A
+7     0111 0111 0111 0111 1110 N/A
+6     0110 0110 0110 0110 1101 N/A
+5     0101 0101 0101 0101 1100 0101
+4     0100 0100 0100 0100 1011 0100
+3     0011 0011 0011 0011 1010 0111
+2     0010 0010 0010 0010 1001 0110
+1     0001 0001 0001 0001 1000 0001
+0     0000 0000 0000 0000 0111 0000
−0     1000 1111
−1     N/A 1001 1110 1111 0110 0011
−2     N/A 1010 1101 1110 0101 0010
−3     N/A 1011 1100 1101 0100 1101
−4     N/A 1100 1011 1100 0011 1100
−5     N/A 1101 1010 1011 0010 1111
−6     N/A 1110 1001 1010 0001 1110
−7     N/A 1111 1000 1001 0000 1001
−8     N/A N/A N/A 1000 N/A 1000
−9     N/A N/A N/A N/A N/A 1011
−10     N/A N/A N/A N/A N/A 1010
−11     N/A N/A N/A N/A N/A N/A

การแทนจำนวนม, เคร, องหมาย, บทความน, ไม, การอ, างอ, งจากแหล, งท, มาใดกร, ณาช, วยปร, บปร, งบทความน, โดยเพ, มการอ, างอ, งแหล, งท, มาท, าเช, อถ, เน, อความท, ไม, แหล, งท, มาอาจถ, กค, ดค, านหร, อลบออก, เร, ยนร, าจะนำสารแม, แบบน, ออกได, อย, างไรและเม, อไร, งกฤษ, sign. bthkhwamniimmikarxangxingcakaehlngthimaidkrunachwyprbprungbthkhwamni odyephimkarxangxingaehlngthimathinaechuxthux enuxkhwamthiimmiaehlngthimaxacthukkhdkhanhruxlbxxk eriynruwacanasaraemaebbnixxkidxyangiraelaemuxir karaethncanwnmiekhruxnghmay xngkvs Signed number representations epnwithikaraethncanwnthixactidlbidinhnwykhwamca ephuxihsadwktxkarnamadaeninkartang aelamiprasiththiphaph withikarodythwipkhuxaebngphunthixxkepnsxngswn odyinswnaerknncaepnswnthieriykwa Magnitude hruxkhakhnadkhxngbittwelkh mitaaehnngxyuthisamnbcakkhwa aelaswnthisxngcaeriykwa Signed Bit hruxkhakhnadhnungbitaethnekhruxnghmaybwkhruxlb hruxeriyksn wabitekhruxnghmay odythibitekhruxnghmaynicamikhaepnbitsungsud mitaaehnngxyuhnasud dngnnintwelkhdicitxlhnungtwsamarththicaaethnidthngkhabwk aelakhalb sungthabitekhruxnghmayepn 0 khakhxngbitsungsudcamikhaepnbwk aetthabitekhruxnghmayepn 1 khakhxngbitsungsudcamikhaepnlb imwabitekhruxnghmaycaepn 0 hrux 1 ktamkhakhnadkhxngbitcaehmuxnedim dngtwxyangtxipni twxyangthi 1 12 0000 1100 12 1000 1100twxyangthi 2 20 0001 0100 20 1001 0100caktwxyangcaepnkaraethnkhatwelkhdicitxlaebb Sign Magnitude System hlngcakthiiddutwxyangaelwcaphbwakhwamaetktangrahwangbwkaelalb echn 12 aela 12 caaetktangknephiyngkhakhxngbitekhruxnghmayethann swnkhakhnadkhxngbitcamikhaethakn thungaemwarabbelkhdicitxlaebbnicasamarthaethnkhabwkaelakhalbid aetinkarkhanwnkhxngekhruxngkhidelkhcaimsamarthichkhanwnrabbniidswnetimetmhnung aekikhswnetimetmhnung 1 s Complement epnkarepliynkhasthanakhxngbitekhruxnghmay khuxthabitekhruxnghmayepn 1 ihepliynepn 0 aelathabitekhruxnghmayepn 0 ihepliynepn 1 odythicathakarepliynsthanathukbitklbknthnghmd tamtwxyangtxipni twxyangthi 1 12 0000 1100 12 1111 0011 swnetimetmhnung twxyangthi 2 18 0001 0010 18 1110 1101 swnetimetmhnung swnetimetmsxng aekikhswnetimetmsxng 2 s Complement System epnehmuxnkbswnetimetmhnung aethlngcakidphllphthmaaelwihbwkkhaephimekhaipxik 1 karthaechnniepnkarprbprungephimetimtxcakswnetimetmhnungephuxihmikha 0 ephiyngaekhkhaediyw aelathaihimtxngephimkhabitthilnklbekhaipehmuxnthitxngthainkarthaswnetimetmhnung rabbswnetimetmsxngsamarththaidodythaepnelkhbwkimtxngepliynkhasthanakhxngbitekhruxnghmay aetthaepnelkhlb ihthakarklbkhaodykarthaswnetimetmhnungthukbit aelabwk 1 esmxtamtwxyangtxipni twxyangthi 1 12 0000 1100 12 1111 0011 swnetimetmhnung 1111 0011 1 12 1111 0100 swnetimetmsxng twxyangthi 2 16 0001 0000 16 1110 1111 swnetimetmhnung 1110 1111 1 16 1111 0000 swnetimetmsxng tarangepriybethiyb aekikhtarangtxipniaesdngcanwnetmbwkaelalbthisamarthaethnidinrabb 4 bitaebbtang karaethncanwnetm 4 bit thansib immiekhruxnghmay ekhruxnghmaykbkhnad swnetimetmhnung swnetimetmsxng exksesss 7 tngcud thanlbsxng 16 N A N A N A N A N A N A 15 1111 N A N A N A N A N A 14 1110 N A N A N A N A N A 13 1101 N A N A N A N A N A 12 1100 N A N A N A N A N A 11 1011 N A N A N A N A N A 10 1010 N A N A N A N A N A 9 1001 N A N A N A N A N A 8 1000 N A N A N A 1111 N A 7 0111 0111 0111 0111 1110 N A 6 0110 0110 0110 0110 1101 N A 5 0101 0101 0101 0101 1100 0101 4 0100 0100 0100 0100 1011 0100 3 0011 0011 0011 0011 1010 0111 2 0010 0010 0010 0010 1001 0110 1 0001 0001 0001 0001 1000 0001 0 0000 0000 0000 0000 0111 0000 0 1000 1111 1 N A 1001 1110 1111 0110 0011 2 N A 1010 1101 1110 0101 0010 3 N A 1011 1100 1101 0100 1101 4 N A 1100 1011 1100 0011 1100 5 N A 1101 1010 1011 0010 1111 6 N A 1110 1001 1010 0001 1110 7 N A 1111 1000 1001 0000 1001 8 N A N A N A 1000 N A 1000 9 N A N A N A N A N A 1011 10 N A N A N A N A N A 1010 11 N A N A N A N A N A N A bthkhwamekiywkbkhnitsastrniyngepnokhrng khunsamarthchwywikiphiediyidodyephimkhxmul duephimthi sthaniyxy khnitsastrekhathungcak https th wikipedia org w index php title karaethncanwnmiekhruxnghmay amp oldid 6513547, wikipedia, วิกิ หนังสือ, หนังสือ, ห้องสมุด,

บทความ

, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม