วิธีหารเลขฐานสอง: 13 ขั้นตอน (พร้อมรูปภาพ)

สารบัญ:

วิธีหารเลขฐานสอง: 13 ขั้นตอน (พร้อมรูปภาพ)
วิธีหารเลขฐานสอง: 13 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: วิธีหารเลขฐานสอง: 13 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: วิธีหารเลขฐานสอง: 13 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: How To Take A Screenshot In Linux Ubuntu | 4 Different Ways | Quick & Easy Guide 2024, อาจ
Anonim

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

ขั้นตอน

วิธีที่ 1 จาก 2: การใช้กองยาว

หารเลขฐานสองขั้นตอนที่ 1
หารเลขฐานสองขั้นตอนที่ 1

ขั้นตอนที่ 1 เรียนรู้การหารยาวทศนิยมอีกครั้ง

หากคุณไม่ได้ใช้การหารยาวในระบบเลขฐานสิบ (ฐานสิบ) แบบปกติมาเป็นเวลานาน ให้ทบทวนพื้นฐานโดยใช้โจทย์ตัวอย่าง 172 หารด้วย 4 มิฉะนั้น ให้ข้ามขั้นตอนนี้และไปยังขั้นตอนถัดไปเพื่อสำรวจ กระบวนการที่คล้ายกันกับเลขฐานสอง

  • เศษ แบ่งโดย ตัวส่วน และผลที่ได้คือ ผลหาร.
  • เปรียบเทียบตัวส่วนกับตัวเลขตัวแรกในตัวเศษ ถ้าตัวส่วนมากกว่า ให้เพิ่มตัวเลขไปยังตัวเศษต่อไปจนกว่าตัวส่วนจะเล็กลง (ตัวอย่างเช่น ถ้าเราคำนวณ 172 หารด้วย 4 เราเปรียบเทียบ 4 กับ 1 เรารู้ว่า 4 มากกว่า 1 ดังนั้นให้เปรียบเทียบ 4 กับ 17)
  • เขียนตัวเลขตัวแรกของผลหารเหนือตัวเศษสุดท้ายที่ใช้ในการเปรียบเทียบ เมื่อเราเปรียบเทียบ 4 กับ 17 เราจะเห็นว่า 4 ครอบคลุม 17 สี่ครั้ง เราจึงเขียน 4 เป็นจำนวนแรกของผลหาร ที่สูงกว่า 7
  • คูณและลบเพื่อให้ได้ส่วนที่เหลือ คูณผลหารด้วยตัวส่วน ซึ่งหมายความว่า 4 × 4 = 16 เขียน 16 ภายใต้ 17 แล้วลบ 17 ด้วย 16 เพื่อให้ได้เศษ ซึ่งก็คือ 1
  • ทำซ้ำขั้นตอน เราเปรียบเทียบตัวส่วนอีกครั้งซึ่งก็คือ 4 กับตัวเลขถัดไปซึ่งก็คือ 1 สังเกตว่า 4 มากกว่า 1 แล้ว "ลบ" ตัวเลขถัดไปจากตัวเศษ ดำเนินการต่อโดยเปรียบเทียบ 4 กับ 12 เราจะเห็นว่า 4 ถูกครอบคลุมด้วย 12 สามครั้งโดยไม่มีเศษเหลือ เราจึงเขียน 3 เป็นจำนวนถัดไปของผลหาร คำตอบคือ 43
หารเลขฐานสองขั้นตอนที่ 2
หารเลขฐานสองขั้นตอนที่ 2

ขั้นตอนที่ 2 เตรียมปัญหาการหารยาวเป็นเลขฐานสอง

ลองเอา 10101 11. เขียนเป็นปัญหาสำหรับการหารยาว โดยใช้ 10101 เป็นตัวเศษ และ 11 เป็นตัวส่วน เว้นช่องว่างด้านบนไว้เป็นที่สำหรับเขียนผลหาร และด้านล่างเป็นที่สำหรับเขียนการคำนวณ

หารเลขฐานสองขั้นตอนที่ 3
หารเลขฐานสองขั้นตอนที่ 3

ขั้นตอนที่ 3 เปรียบเทียบตัวส่วนกับหลักแรกของตัวเศษ

มันทำงานแบบเดียวกับการหารยาวเป็นทศนิยม แต่จริงๆ แล้ว มันง่ายกว่ามากในระบบเลขฐานสอง ในไบนารี่ มีเพียงสองตัวเลือก คุณไม่สามารถหารตัวเลขด้วยตัวส่วน (ความหมาย 0) หรือตัวส่วนรวมเพียงครั้งเดียว (ความหมาย 1):

11 > 1 ดังนั้น 11 จึงไม่ "ครอบคลุม" 1. เขียนตัวเลข 0 เป็นตัวเลขแรกของผลหาร (เหนือหลักแรกของตัวเศษ)

หารเลขฐานสองขั้นตอนที่ 4
หารเลขฐานสองขั้นตอนที่ 4

ขั้นตอนที่ 4 ทำงานกับตัวเลขถัดไปและทำซ้ำจนกว่าคุณจะได้หมายเลข 1

ต่อไปนี้เป็นขั้นตอนต่อไปในตัวอย่างของเรา:

  • รับหมายเลขถัดไปจากตัวเศษ 11 > 10. เขียน 0 ในผลหาร
  • ลดจำนวนถัดไป 11 < 101. เขียนเลข 1 ในตัวหาร
หารเลขฐานสองขั้นตอนที่ 5
หารเลขฐานสองขั้นตอนที่ 5

ขั้นตอนที่ 5. ค้นหาส่วนที่เหลือของการหาร

เช่นเดียวกับทศนิยมหารยาว ให้คูณตัวเลขที่เราเพิ่งได้ (1) ด้วยตัวส่วน (11) แล้วเขียนผลลัพธ์ใต้ตัวเศษขนานกับตัวเลขที่เราเพิ่งคำนวณ ในระบบเลขฐานสอง เราสามารถสรุปกระบวนการนี้ได้ เนื่องจาก 1 x ตัวส่วนจะเหมือนกับตัวส่วนเสมอ:

  • เขียนตัวส่วนใต้ตัวเศษ ในที่นี้ เขียน 11 ขนานกับสามหลักแรกของตัวเศษ (101)
  • นับ 101 - 11 เพื่อรับส่วนที่เหลือของการหาร ซึ่งก็คือ 10 ดูวิธีลบเลขฐานสองหากคุณต้องการเรียนรู้ใหม่
หารเลขฐานสองขั้นตอนที่ 6
หารเลขฐานสองขั้นตอนที่ 6

ขั้นตอนที่ 6 ทำซ้ำจนกว่าปัญหาจะได้รับการแก้ไข

ลดจำนวนถัดไปจากตัวส่วนเหลือเศษของการหารเพื่อให้ได้ 100 ตั้งแต่ 11 < 100 ให้เขียน 1 เป็นตัวเลขถัดไปในการหาร ดำเนินการคำนวณเหมือนเดิม:

  • เขียน 11 ภายใต้ 100 แล้วลบเพื่อให้ได้ 1
  • ลดตัวเลขสุดท้ายของตัวเศษเป็น 11
  • 11 = 11 ดังนั้นเขียน 1 เป็นตัวเลขสุดท้ายของผลหาร (คำตอบ)
  • เนื่องจากไม่มีเศษเหลือ การคำนวณจึงสมบูรณ์ คำตอบคือ 00111 หรือ 111 เท่านั้น
หารเลขฐานสองขั้นตอนที่7
หารเลขฐานสองขั้นตอนที่7

ขั้นตอนที่ 7 เพิ่มคะแนนฐานถ้าจำเป็น

บางครั้ง ผลลัพธ์ของการคำนวณไม่ใช่จำนวนเต็ม หากคุณยังมีการหารเหลือหลังจากใช้หลักสุดท้ายแล้ว ให้เพิ่ม ".0" ในตัวเศษและ "" ให้กับผลหาร ดังนั้นคุณยังสามารถหาตัวเลขเพิ่มอีกตัวหนึ่งและทำการคำนวณต่อไปได้ ทำซ้ำจนกว่าจะได้ความแม่นยำที่ต้องการ จากนั้นปัดเศษผลลัพธ์ บนกระดาษ คุณสามารถปัดเศษลงได้โดยเอา 0 สุดท้ายออก หรือถ้าตัวสุดท้ายเป็น 1 ให้ทิ้งและเพิ่มตัวเลขล่าสุดเป็น 1 ในการเขียนโปรแกรม ให้ปฏิบัติตามอัลกอริธึมการปัดเศษมาตรฐานหลายแบบเพื่อหลีกเลี่ยงข้อผิดพลาดเมื่อแปลงเลขฐานสอง เป็นทศนิยมและในทางกลับกัน

  • การหารเลขฐานสองมักส่งผลให้มีเศษส่วนซ้ำกัน บ่อยกว่ากระบวนการเดียวกันในระบบทศนิยม
  • โดยทั่วไปเรียกว่า "จุดฐาน" ซึ่งใช้กับฐานใดๆ เนื่องจากคำว่า "จุดทศนิยม" ใช้เฉพาะในระบบทศนิยมเท่านั้น

วิธีที่ 2 จาก 2: การใช้วิธีการเสริม

หารเลขฐานสองขั้นตอนที่ 8
หารเลขฐานสองขั้นตอนที่ 8

ขั้นตอนที่ 1 เข้าใจแนวคิดพื้นฐาน

วิธีหนึ่งในการแก้ปัญหาการหาร – บนพื้นฐานใดๆ – คือการลบตัวส่วนออกจากตัวเศษ จากนั้นจึงเหลือเศษ โดยนับว่ากระบวนการนี้สามารถทำซ้ำได้กี่ครั้งก่อนที่จะได้จำนวนลบ ตัวอย่างต่อไปนี้เป็นการคำนวณในฐานสิบ คำนวณ 26 7:

  • 26 - 7 = 19 (ลบ 1 ครั้ง)
  • 19 - 7 = 12 (2)
  • 12 - 7 = 5 (3)
  • 5 - 7 = -2. ตัวเลขติดลบ ดังนั้นถอยกลับ ผลลัพธ์คือ 3 และเศษที่เหลือหารด้วย 5 โปรดทราบว่าวิธีนี้ไม่ได้คำนวณเศษส่วนของคำตอบ
หารเลขฐานสองขั้นตอนที่ 9
หารเลขฐานสองขั้นตอนที่ 9

ขั้นตอนที่ 2 เรียนรู้วิธีลบด้วยการเติมเต็ม

แม้ว่าคุณจะใช้วิธีข้างต้นในระบบเลขฐานสองอย่างง่ายดาย แต่เราสามารถลดการใช้วิธีการที่มีประสิทธิภาพมากขึ้นได้ ซึ่งจะช่วยประหยัดเวลาในการเขียนโปรแกรมคอมพิวเตอร์ให้ทำการหารเลขฐานสอง นี่คือการลบด้วยวิธีเสริมในไบนารี ต่อไปนี้เป็นข้อมูลพื้นฐานในการคำนวณ 111 - 011 (ตรวจสอบให้แน่ใจว่าตัวเลขทั้งสองมีความยาวเท่ากัน):

  • หาส่วนเสริมของตัวเลขที่สองโดยลบแต่ละหลักออกจาก 1 ขั้นตอนนี้ทำได้ง่ายในระบบเลขฐานสองโดยเปลี่ยนทุกๆ 1 เป็น 0 และทุกๆ 0 เป็น 1 ในตัวอย่างนี้ 011 ถึง 100
  • บวก 1 เข้ากับผลลัพธ์ของการคำนวณ: 100 + 1 = 101 ตัวเลขนี้เรียกว่าส่วนเติมเต็มของสอง ดังนั้นการลบสามารถแก้การบวกได้ โดยพื้นฐานแล้ว ผลลัพธ์ของการคำนวณนี้เหมือนกับว่าเราบวกตัวเลขติดลบและไม่ลบจำนวนบวกหลังจากกระบวนการนี้เสร็จสิ้น
  • เพิ่มผลลัพธ์ให้กับตัวเลขแรก เขียนและแก้ปัญหาการบวก: 111 + 101 = 1100
  • ลบตัวเลขเพิ่มเติม ลบตัวเลขแรกออกจากผลการคำนวณเพื่อให้ได้ผลลัพธ์สุดท้าย 1100 → 100.
หารเลขฐานสองขั้นตอนที่ 10
หารเลขฐานสองขั้นตอนที่ 10

ขั้นตอนที่ 3 รวมสองแนวคิดที่อธิบายไว้ข้างต้น

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

หารเลขฐานสองขั้นตอนที่ 11
หารเลขฐานสองขั้นตอนที่ 11

ขั้นที่ 4. ลบตัวส่วนออกจากตัวเศษ บวกส่วนเติมเต็มของทั้งสอง

มาแก้ปัญหา 100011 000101 กัน ขั้นตอนแรกคือการแก้ปัญหา 100011 - 000101 โดยใช้วิธีการเสริมของทั้งสองเพื่อเปลี่ยนการคำนวณนี้เป็นผลรวม:

  • ส่วนเติมเต็มสองของ 000101 = 111010 + 1 = 111011
  • 100011 + 111011 = 1011110
  • ลบตัวเลขส่วนเกิน → 011110
หารเลขฐานสองขั้นตอนที่ 12
หารเลขฐานสองขั้นตอนที่ 12

ขั้นตอนที่ 5. เพิ่ม 1 ให้กับผลลัพธ์ของการหาร

ในโปรแกรมคอมพิวเตอร์ นี่คือที่ที่คุณบวก 1 เข้ากับผลหาร บนกระดาษ ให้จดบันทึกที่มุมกระดาษเพื่อไม่ให้ไปปะปนกับงานอื่น เราลบได้ครั้งเดียว ดังนั้นผลลัพธ์ของการหารจึงเท่ากับ 1

หารเลขฐานสองขั้นตอนที่ 13
หารเลขฐานสองขั้นตอนที่ 13

ขั้นตอนที่ 6 ทำซ้ำขั้นตอนโดยลบตัวส่วนออกจากส่วนที่เหลือของการคำนวณ

ผลลัพธ์ของการคำนวณครั้งสุดท้ายของเราคือส่วนที่เหลือของการหารหลังจากที่ "ครอบคลุม" ตัวส่วนแล้วหนึ่งครั้ง ให้เพิ่มส่วนเสริมของตัวส่วนสองตัวในการทำซ้ำแต่ละครั้งและลบตัวเลขส่วนเกินออก เพิ่ม 1 ให้กับผลหารในการวนซ้ำแต่ละครั้ง ทำซ้ำจนกว่าคุณจะได้การคำนวณที่เหลือเท่ากับหรือน้อยกว่าตัวส่วน:

  • 011110 + 111011 = 1011001 → 011001 (ผลหาร 1+1=10)
  • 0110001 + 111011 = 1010100 → 010100 (ผลหาร 10+1=11)
  • 010100 + 111011 = 1001111 → 001111 (11+1=100)
  • 001111 + 111011 = 1001010 → 001010 (100+1=101)
  • 001010 + 111011 = 10000101 → 0000101 (101+1=110)
  • 0000101 + 111011 = 1000000 → 000000 (110+1=111)
  • 0 น้อยกว่า 101 เราเลยหยุดตรงนี้ คำตอบของกระบวนการหารนี้คือ 111. ในขณะที่ส่วนที่เหลือของการหารเป็นผลสุดท้ายของกระบวนการลบ ในกรณีนี้คือ 0 (ไม่มีเศษเหลือ)

เคล็ดลับ

  • คำแนะนำสำหรับการเพิ่ม (เพิ่ม 1) การลด (การลบ 1) หรือการลบออกจากสแต็ก (ป๊อปสแต็ก) ควรพิจารณาก่อนใช้เลขฐานสองในชุดคำสั่งเครื่อง
  • วิธีการเสริมของทั้งสองสำหรับการลบจะไม่ทำงานหากตัวเลขมีจำนวนหลักต่างกัน ในการแก้ไขปัญหานี้ ให้เพิ่มศูนย์ที่จุดเริ่มต้นของตัวเลขสำหรับจำนวนที่น้อยกว่า
  • ละเว้นตัวเลขติดลบในเลขฐานสองติดลบก่อนคำนวณ ยกเว้นเพื่อพิจารณาว่าคำตอบนั้นเป็นบวกหรือลบ

แนะนำ: