4 การบวกและการลบเลขคณิตไบนารี เลขคณิตไบนารี การตั้งเป้าหมายบทเรียน

เลขคณิตไบนารี

ชื่อพารามิเตอร์ ความหมาย
หัวข้อบทความ: เลขคณิตไบนารี
รูบริก (หมวดหมู่เฉพาะเรื่อง) วิทยาศาสตร์คอมพิวเตอร์

ระบบเลขฐานสอง

ระบบตัวเลขที่ใช้ในการทำงานกับคอมพิวเตอร์

ฐาน P = 2 ตัวอักษรประกอบด้วยเลขฐานสองสองหลัก: 0, 1 จำนวนใดๆ C = C n C n-1 ...C 1 C 0 C -1 C -m คือผลรวมของเลขยกกำลังของตัวเลข P = 2 ,

C = C n × 2 n +C n-1 × 2 n-1 +…+C 1 × 2 1 +C 0 × 2 0 +C -1 × 2 -1 +…+C -m × 2 -m

ตัวอย่างที่ 3.6

101011.11 2 =1×2 5 + 0×2 4 + 1×2 3 + 0×2 2 +1×2 1 + 1×2 0 +1×2 -1 + 1×2 -2 = 32+8 +2 +1+0.5+0.25=43.75 10.

น้ำหนักของตัวเลขในระบบเลขฐานสองคือ 1, 4, 8.16,... ทางด้านซ้ายของจุดทศนิยมและ 0.5; 0.25; 0.125; 0.625;... ทางด้านขวาของจุดทศนิยม

บางครั้งใช้ในการเขียนโปรแกรม เลขฐานสิบหกสัญกรณ์ เพื่อแสดงตัวเลขที่มากกว่า 9 ในระบบเลขฐานสิบหก จะใช้ตัวอักษรละติน A, B, C, D, E, F รูปภาพของตัวเลขสิบหกตัวแรกในระบบเลขฐานสิบ เลขฐานสอง และเลขฐานสิบหกแสดงไว้ในตาราง 2.

ตารางรหัสใน ระบบต่างๆการคำนวณที่ตายแล้ว

ตารางที่ 2

ระบบทศนิยม ระบบไบนารี่ ระบบเลขฐานสิบหก ระบบทศนิยม ระบบไบนารี่ ระบบเลขฐานสิบหก
บี
ดี
อี
เอฟ

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

ตัวอย่างที่ 3.7

เลขฐานสิบ 9703 ใน BCD มีลักษณะดังนี้: 1001 0111 0000 0011

ข้อดีของระบบเลขฐานสองเหนือระบบเลขฐานสิบจากมุมมองของคอมพิวเตอร์ดิจิทัลมีดังต่อไปนี้:

  • จำเป็นต้องมีองค์ประกอบที่มีสถานะเสถียรสองสถานะ
  • การดำเนินการทางคณิตศาสตร์นั้นง่ายขึ้นอย่างมาก
  • ต้องใช้อุปกรณ์น้อยลง 1.5 เท่า
  • ช่วยให้คุณใช้อุปกรณ์ตรรกะทางคณิตศาสตร์ในการวิเคราะห์และการสังเคราะห์วงจร

ข้อเสียของระบบเลขฐานสองมีดังนี้:

  • ความยาวการบันทึกจำนวนมาก
  • เมื่อป้อนและส่งออกข้อมูล จำเป็นต้องแปลงเป็นระบบเลขทศนิยม

มาดูกันว่าการดำเนินการพื้นฐานดำเนินการอย่างไรในเลขคณิตไบนารี

กฎของเลขคณิตในระบบจำนวนตำแหน่งทั้งหมดจะเหมือนกัน ë.ë การบวกการคูณและการลบเริ่มจากตัวเลขต่ำสุด การหาร - จากตัวเลขสูงสุด

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

ตัวอย่างที่ 3.8

การคูณเลขฐานสองนั้นคล้ายกับการคูณเลขทศนิยม แต่... หากเราคูณด้วย 0 และ 1 เท่านั้น การคูณจะลดลงเหลือเพียงการดำเนินการกะและการบวก

ตัวอย่างที่ 3.9

เลขคณิตไบนารี่ - แนวคิดและประเภท การจำแนกประเภทและคุณสมบัติของหมวดหมู่ "เลขคณิตไบนารี" 2017, 2018

  • - เลขคณิตไบนารี

    เพราะ กระบวนการข้อมูลวี ระบบดิจิทัลรับค่าเพียง 0 และ 1 จากนั้นการแสดงข้อมูลจะดำเนินการโดยใช้เลขฐานสอง การบวกและการลบเลขฐานสอง เช่นเดียวกับการดำเนินการทางคณิตศาสตร์อื่นๆ ทั้งหมด จะดำเนินการตามกฎเดียวกันกับ... .


  • - ระบบเลขฐานสองและเลขคณิตไบนารี

    ในระบบเลขฐานสอง คุณสามารถดำเนินการเดียวกันกับตัวเลขได้เหมือนกับในระบบเลขฐานสิบ การบวกจะดำเนินการบนหลักการเดียวกันกับในระบบเลขทศนิยม: เฉพาะในกรณีที่ตัวเลขที่กำหนดทำให้เกิดจำนวนที่ไม่พอดี จากนั้น...

  • , การแข่งขัน "การนำเสนอบทเรียน"

    การนำเสนอสำหรับบทเรียน














    กลับไปข้างหน้า

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

    วัตถุประสงค์ของบทเรียน: (สไลด์ 2)

    1. แนะนำนักเรียนให้รู้จักกับระบบเลขฐานสอง
    2. พัฒนาทักษะการดำเนินการทางคณิตศาสตร์ด้วยเลขฐานสอง

    ในระหว่างเรียน

    I. เริ่มบทเรียน

    ครู: เพื่อที่จะเชี่ยวชาญระบบเลขฐานสองได้ดีขึ้น คุณจะต้องเชี่ยวชาญการดำเนินการทางคณิตศาสตร์กับเลขฐานสอง

    ระบบตัวเลขตำแหน่งทั้งหมดจะ "เหมือนกัน" กล่าวคือ การดำเนินการทางคณิตศาสตร์ทั้งหมดจะดำเนินการตามกฎเดียวกัน:

    • กฎเลขคณิตเดียวกันนั้นใช้ได้: การสับเปลี่ยน, การเชื่อมโยง, การแจกแจง;
    • กฎการบวก ลบ คูณ หาร ถูกต้อง
    • กฎสำหรับการดำเนินการทางคณิตศาสตร์จะขึ้นอยู่กับตารางการบวกและสูตรคูณ

    มาดูกฎสำหรับการดำเนินการทางคณิตศาสตร์กัน

    ครั้งที่สอง การเรียนรู้เนื้อหาใหม่

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

    สาม. รวบรวมสิ่งที่ได้เรียนรู้มา (สไลด์ 12)

    พวกทำงานด้วยตัวเอง จากนั้นเปิดสไลด์พร้อมคำตอบ

    คำตอบ (สไลด์ 13)

    IV. การบ้าน (สไลด์ 14)

    1. เรียนรู้กฎสำหรับการดำเนินการทางคณิตศาสตร์ในระบบเลขฐานสอง

    2. ทำตามขั้นตอนเหล่านี้:

    1. 110010+11,01
    2. 1111001-1101
    3. 10101,1*11
    4. 10101110:101
    บ้าน \ เอกสารประกอบ \ สำหรับครูวิทยาการคอมพิวเตอร์

    เมื่อใช้เนื้อหาจากเว็บไซต์นี้ - และการวางแบนเนอร์ถือเป็นข้อบังคับ!!!

    เลขคณิตไบนารี

    ตัวเลขที่เราคุ้นเคยเรียกว่าทศนิยม และเลขคณิตที่เราใช้เรียกอีกอย่างว่าทศนิยม เนื่องจากแต่ละหมายเลขสามารถประกอบด้วยชุดตัวเลขที่มีอักขระ 10 ตัว - ตัวเลข - "0123456789"

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

    ตัวอย่างเช่น เลข 246 สัญกรณ์นี้หมายความว่ามีจำนวนสองร้อย สี่สิบ และหก ดังนั้นเราจึงสามารถเขียนความเท่าเทียมกันได้ดังนี้:

    246 = 200 + 40 + 6 = 2 * 10 2 + 4 * 10 1 + 6 * 10 0

    ในกรณีนี้ เครื่องหมายเท่ากับจะแยกวิธีเขียนตัวเลขเดียวกันออกเป็น 3 วิธี สัญกรณ์รูปแบบที่สามน่าสนใจที่สุดสำหรับเราตอนนี้: 2 * 10 2 + 4 * 10 1 + 6 * 10 0 . มีโครงสร้างดังนี้:

    หมายเลขของเรามีสามหลัก หลักนำหน้า "2" คือเลข 3 จึงคูณด้วย 10 ยกกำลังสอง หลักถัดไป "4" มีหมายเลขซีเรียลเป็น 2 และคูณด้วย 10 ในหลักแรก เป็นที่ชัดเจนแล้วว่าตัวเลขจะถูกคูณด้วยสิบยกกำลังหนึ่งซึ่งน้อยกว่าเลขลำดับของหลัก เมื่อเข้าใจข้างต้นแล้ว เราก็สามารถเขียนสูตรทั่วไปสำหรับแสดงเลขทศนิยมได้ ให้ตัวเลขที่มีหลัก N กัน เราจะแสดงถึง หลักที่ iผ่านฉัน จากนั้นสามารถเขียนตัวเลขได้ในรูปแบบต่อไปนี้: a n a n-1 ....a 2 a 1 . นี่เป็นแบบฟอร์มแรก และแบบฟอร์มรายการที่สามจะมีลักษณะดังนี้:

    a n n-1 ….a 2 n-1 = n * 10 n-1 + n-1 * 10 n-2 + …. + ก 2 * 10 1 + ก 1 * 10 0

    โดยที่ i เป็นตัวละครจากชุด "0123456789"

    บทบาทของทั้งสิบคนปรากฏชัดเจนมากในบันทึกนี้ สิบเป็นพื้นฐานสำหรับการก่อตัวของตัวเลข และอีกอย่าง มันถูกเรียกว่า “ฐานของระบบตัวเลข” และระบบตัวเลขเองก็เป็นสาเหตุที่เรียกว่า “ทศนิยม” แน่นอนว่าเลขสิบไม่มีคุณสมบัติพิเศษใดๆ เราสามารถแทนที่เลขสิบด้วยเลขอื่นได้อย่างง่ายดาย ตัวอย่างเช่น ตัวเลขในระบบตัวเลขห้าหลักสามารถเขียนได้ดังนี้:

    a n n-1 ….a 2 1 = n * 5 n-1 + n-1 * 5 n-2 + …. + ก 2 * 5 1 + ก 1 * 5 0

    โดยที่ i เป็นตัวละครจากชุด "01234"

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

    a n n-1 ….a 2 n-1 = n * 2 n-1 + n-1 * 2 n-2 + …. + ก 2 * 2 1 + ก 1 * 2 0

    โดยที่ i เป็นตัวละครจากชุด "01"

    ระบบนี้เป็นระบบที่ง่ายที่สุดเท่าที่จะเป็นไปได้ เนื่องจากตัวเลขใดๆ ก็ตามจะถูกสร้างขึ้นจากตัวเลข 0 และ 1 สองหลักเท่านั้น เป็นที่ชัดเจนว่าไม่มีอะไรง่ายไปกว่านี้แล้ว ตัวอย่างของเลขฐานสอง: 10, 111, 101

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

    ไบนารีเป็นทศนิยม มันง่ายมาก วิธีการแปลนั้นกำหนดโดยวิธีเขียนตัวเลขของเรา ยกตัวอย่างเลขฐานสองต่อไปนี้ 1011 ลองขยายมันเป็นกำลังสองกัน เราได้รับสิ่งต่อไปนี้:

    1011 = 1 * 2 3 + 0 * 2 2 + 1 * 2 1 + 1 * 2 0

    มาดำเนินการที่บันทึกไว้ทั้งหมดและรับ:

    1 * 2 3 + 0 * 2 2 + 1 * 2 1 + 1 * 2 0 = 8 + 0+ 2 + 1 = 11 ดังนั้นเราจึงได้ 1011 (ไบนารี่) = 11 (ทศนิยม) ความไม่สะดวกเล็กน้อยของระบบไบนารี่จะมองเห็นได้ทันที หมายเลขเดียวกันซึ่งเขียนในระบบทศนิยมโดยมีหนึ่งหลักในระบบไบนารี่ต้องใช้ตัวเลขสี่หลักในการบันทึก แต่นี่คือราคาของความเรียบง่าย (ไม่มีอะไรได้มาฟรีๆ) แต่ระบบไบนารี่ให้ประโยชน์อย่างมากในการดำเนินการทางคณิตศาสตร์ และเราจะเห็นสิ่งนี้ในภายหลัง

    จงแสดงเลขฐานสองต่อไปนี้เป็นทศนิยม

    ก) 10010 ข) 11101 ค) 1,010 ค) 1110 ง) 100011 จ) 1100111 ฉ) 1001110

    การบวกเลขฐานสอง

    โดยทั่วไปวิธีการบวกคอลัมน์จะเหมือนกับการเพิ่มเลขทศนิยม นั่นคือ การบวกจะดำเนินการในระดับบิต โดยเริ่มจากตัวเลขที่มีนัยสำคัญน้อยที่สุด หากเมื่อบวกสองหลัก SUM จะมากกว่าเก้า ดังนั้นหลัก = SUM - 10 จะถูกเขียน และส่วนทั้งหมด (SUM / 10) จะถูกเพิ่มด้วยหลักที่สำคัญที่สุด (บวกตัวเลขสองสามตัวในคอลัมน์ จำไว้ว่าต้องทำอย่างไร) เช่นเดียวกับเลขฐานสอง บวกทีละตัว โดยเริ่มจากหลักต่ำสุด หากผลลัพธ์มากกว่า 1 แสดงว่า 1 จะถูกเขียนลงไปและเพิ่ม 1 เข้าไปในหลักที่สำคัญที่สุด (พวกเขาพูดว่า "ไม่อยู่ในหัวของฉัน")

    ลองทำตัวอย่าง: 10011 + 10001

    หมวดหมู่แรก: 1+1 = 2 เราเขียน 0 และ 1 ตามที่อยู่ในใจ

    ประเภทที่สอง: 1+0+1(หน่วยที่จดจำ) =2. เราเขียนลงไปว่า 0 และ 1 มันก็นึกขึ้นมาได้

    ประเภทที่สาม: 0+0+1(หน่วยที่จดจำ) = 1. เขียน 1.

    หมวดที่สี่ 0+0=0. เราเขียน 0

    หมวดที่ห้า 1+1=2. เราเขียน 0 และเพิ่ม 1 เข้าไปในหลักที่หก

    ลองแปลงตัวเลขทั้งสามเป็นระบบทศนิยมและตรวจสอบความถูกต้องของการบวก

    10011 = 1*2 4 + 0*2 3 + 0*2 2 + 1*2 1 + 1*2 0 = 16 + 2 + 1 =19

    10001 = 1*2 4 + 0*2 3 + 0*2 2 + 0*2 1 + 1*2 0 = 16 + 1 = 17

    100100 = 1*2 5 + 0*2 4 + 0*2 3 + 1*2 2 + 0*2 1 + 0*2 0 =32+4=36

    17 + 19 = 36 ความเท่าเทียมกันที่ถูกต้อง

    ตัวอย่างสำหรับโซลูชันอิสระ:

    ก) 11001 +101 =

    ข) 11001 +11001 =

    ค) 1,001 + 111 =

    จ) 10011 + 101 =

    จ) 11011 + 1111 =

    จ) 11111 + 10011 =

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

    ในการแปลงเลขทศนิยมเป็นเลขฐานสอง จะต้องขยายเป็นเลขยกกำลังสอง แต่หากได้รับการขยายตัวยกกำลัง 10 ในทันที วิธีการขยายกำลัง 2 ต้องใช้ความคิดเพียงเล็กน้อย ขั้นแรก มาดูวิธีการทำสิ่งนี้โดยใช้วิธีการเลือก ลองใช้เลขทศนิยม 12 กัน.

    ขั้นตอนแรก. 2 2 = 4 นี่ไม่พอ 2 3 = 8 ยังไม่เพียงพอ แต่ 2 4 = 16 ก็เยอะมากแล้ว เลยเหลือ 2 3 = 8 12 - 8 = 4 ตอนนี้คุณต้องแทนมันเป็นกำลังของ 2 4

    ขั้นตอนที่สอง 4 = 2 2 .

    จำนวนของเราคือ 12 = 2 3 + 2 2 หลักสูงสุดจะมีเลข 4 ระดับสูงสุด = 3 ดังนั้น ต้องมีพจน์ที่ยกกำลัง 1 และ 0 สองตัว แต่เราไม่ต้องการมัน ดังนั้น เพื่อกำจัดองศาที่ไม่จำเป็นออกไปและเหลือองศาที่จำเป็นไว้ เราเขียนตัวเลขดังนี้: 1*2 3 + 1* 2 2 +0*2 1 + 0*2 0 = 1100 - นี่คือการแสดงเลขฐานสองของเลข 12 จะสังเกตได้ง่ายว่าแต่ละยกกำลังต่อเนื่องนั้นคือ กำลังที่ใหญ่ที่สุดของสองซึ่งน้อยกว่าเลขสลายตัว หากต้องการรวมวิธีการนี้ ลองดูอีกตัวอย่างหนึ่ง หมายเลข 23.

    ขั้นตอนที่ 1 กำลังที่ใกล้ที่สุดของสองคือ 2 4 = 16 23 -16 = 7

    ขั้นตอนที่ 2 ยกกำลังที่ใกล้ที่สุดของสอง 2 2 = 4 7 - 4 = 3

    ขั้นตอนที่ 3 ยกกำลังที่ใกล้ที่สุดของสอง 2 1 = 2 3 - 2 = 1

    ขั้นตอนที่ 4 กำลังที่ใกล้ที่สุดของสองตัว 2 0 =1 1 - 1 =0

    เราได้รับส่วนขยายต่อไปนี้: 1*2 4 + 0*2 3 +1*2 2 +1*2 1 +1*2 0

    และเลขฐานสองที่เราต้องการคือ 10111

    วิธีการที่กล่าวถึงข้างต้นสามารถแก้ปัญหาที่ได้รับมอบหมายได้ดี แต่มีวิธีการที่อัลกอริทึมดีกว่ามาก อัลกอริทึมสำหรับวิธีนี้เขียนไว้ด้านล่าง:

    ตราบใดที่ NUMBER มากกว่าศูนย์ ให้ทำ

    NEXT DIGIT = เศษของ NUMBER หารด้วย 2

    NUMBER = ส่วนจำนวนเต็มของ NUMBER หารด้วย 2

    เมื่ออัลกอริทึมนี้ทำงานเสร็จสิ้น ลำดับของ NEXT DIGITS ที่คำนวณได้จะแสดงเป็นเลขฐานสอง ตัวอย่างเช่น เรามาทำงานกับเลข 19 กันดีกว่า

    อัลกอริทึมเริ่มต้น NUMBER = 19

    หลักถัดไป = 1

    หลักถัดไป = 1

    หลักถัดไป = 0

    หลักถัดไป = 0

    หลักถัดไป = 1

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

    แปลงเลขทศนิยมเป็นไบนารีได้สองวิธี

    ก) 14 b) 29 ค) 134 ง) 158 ฉ) 1190 ก) 2019

    วิธีแปลงเศษส่วนให้เป็นเลขทศนิยม

    เป็นที่ทราบกันว่าจำนวนตรรกยะใดๆ สามารถแสดงเป็นทศนิยมและเศษส่วนสามัญได้ เศษส่วนสามัญซึ่งก็คือเศษส่วนในรูปแบบ A/B สามารถเป็นเศษส่วนปกติและไม่เหมาะสมได้ เศษส่วนจะเรียกว่าเหมาะสมถ้า A<В и неправильной если А>ใน.

    ถ้าจำนวนตรรกยะแสดงด้วยเศษส่วนเกิน และตัวเศษของเศษส่วนถูกหารด้วยตัวส่วน จำนวนตรรกยะนี้จะเป็นจำนวนเต็ม ในกรณีอื่นๆ ทั้งหมด เศษส่วนจะปรากฏขึ้น เศษส่วนมักเป็นจำนวนที่ยาวมากและยังเป็นอนันต์ (เศษส่วนเป็นคาบไม่สิ้นสุด เช่น 20/6) ดังนั้นในกรณีของเศษส่วน เราไม่เพียงมีหน้าที่ในการแปลการแทนค่าหนึ่งเป็นอีกค่าหนึ่งเท่านั้น แต่ยังแปลด้วย ความแม่นยำบางอย่าง

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

    ตอนนี้เรามาลองหากฎการแปลกันก่อน มาดูตัวอย่างที่ 5,401 กัน

    สารละลาย:

    เราจะได้ส่วนจำนวนเต็มตามกฎที่เราทราบอยู่แล้วและเท่ากับเลขฐานสอง 101 และเราจะขยายส่วนที่เป็นเศษส่วนด้วยกำลัง 2

    ขั้นตอนที่ 1: 2 -2 = 0.25; 0.401 - 0.25 = 0.151 - นี่คือส่วนที่เหลือ

    ขั้นตอนที่ 2:ตอนนี้เราต้องแทน 0.151 เป็นกำลังสอง ลองทำสิ่งนี้: 2 -3 = 0.125; 0.151 - 0.125 = 0.026

    ดังนั้นเศษส่วนดั้งเดิมสามารถแสดงเป็น 2 -2 +2 -3 สิ่งเดียวกันสามารถเขียนเป็นเลขฐานสองนี้ได้: 0.011 เศษส่วนตัวแรกคือศูนย์ เนื่องจากในส่วนขยายของเราไม่มีกำลัง 2 -1

    จากขั้นตอนแรกและขั้นตอนที่สอง เป็นที่ชัดเจนว่าการนำเสนอนี้ไม่ถูกต้อง และอาจเป็นที่พึงปรารถนาที่จะดำเนินการขยายต่อไป มาดูกฎกันดีกว่า มันบอกว่าเราต้องการสัญญาณ M มากมาย โดยที่ 10 3 น้อยกว่า 2 M นั่นคือ 1,000<2 M . То есть в двоичном разложении у нас должно быть не менее десяти знаков, так как 2 9 = 512 и только 2 10 = 1024. Продолжим процесс.

    ขั้นตอนที่ 3:ตอนนี้เรากำลังทำงานกับหมายเลข 0.026 กำลังที่ใกล้เคียงที่สุดของสองกับจำนวนนี้คือ 2 -6 = 0.015625; 0.026 - 0.015625 = 0.010375 ตอนนี้เลขฐานสองที่แม่นยำกว่าของเราคือ: 0.011001 หลังจุดทศนิยมมีหกตำแหน่งแล้ว แต่ยังไม่เพียงพอ ดังนั้นเราจึงดำเนินการอีกหนึ่งขั้นตอน

    ขั้นตอนที่ 4:ตอนนี้เรากำลังทำงานกับหมายเลข 0.010375 กำลังที่ใกล้เคียงที่สุดของสองกับจำนวนนี้คือ 2 -7 = 0.0078125;

    0,010375 - 0,0078125 = 0,0025625

    ขั้นตอนที่ 5:ตอนนี้เรากำลังทำงานกับหมายเลข 0.0025625 กำลังที่ใกล้เคียงที่สุดของสองกับจำนวนนี้คือ 2 -9 = 0.001953125;

    0,0025625 - 0,001953125 = 0,000609375

    ผลเศษสุดท้ายที่ได้จะน้อยกว่า 2 -10 และหากเราต้องการประมาณตัวเลขเดิมต่อไป เราก็ต้องใช้ 2 -11 แต่เกินความแม่นยำที่ต้องการอยู่แล้ว ดังนั้นการคำนวณจึงสามารถหยุดลงได้และการแทนเลขฐานสองขั้นสุดท้ายของ เศษส่วนสามารถเขียนลงไปได้

    0,401 = 0,011001101

    อย่างที่คุณเห็น การแปลงเศษส่วนของเลขฐานสิบเป็นเลขฐานสองนั้นซับซ้อนกว่าการแปลงจำนวนเต็มเล็กน้อย ตารางยกกำลังสองท้ายการบรรยาย

    ตอนนี้เรามาเขียนอัลกอริทึมการแปลงกัน:

    ข้อมูลเริ่มต้นของอัลกอริทึม: ผ่าน A เราจะแสดงเศษส่วนทศนิยมที่เหมาะสมดั้งเดิมที่เขียนในรูปแบบทศนิยม ให้เศษส่วนนี้มีอักขระ N ตัว

    อัลกอริทึม

    การดำเนินการ 1. กำหนดจำนวนเลขฐานสองที่ต้องการ M จากความไม่เท่าเทียมกัน 10 N< 2 M

    การดำเนินการ 2: วงจรสำหรับการคำนวณเลขฐานสอง (ตัวเลขหลังศูนย์) ตัวเลขหลักจะแสดงด้วยสัญลักษณ์ K

    1. ตัวเลขหลัก = 1
    2. ถ้า 2 -K > A

    จากนั้นเราบวกศูนย์เข้ากับเลขฐานสอง

      • เพิ่ม 1 เข้ากับเลขฐานสอง
      • ก = ก - 2 -เค
    1. เค = เค + 1
    2. ถ้า K > M
    • จากนั้นอัลกอริทึมจะเสร็จสมบูรณ์
    • มิฉะนั้นไปที่จุดที่ 2

    แปลงเลขทศนิยมให้เป็นเลขฐานสอง

    ก) 3.6 ข) 12.0112 ค) 0.231 ง) 0.121 ง) 23.0091

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

    ประเภทแรก. 1 - 0 =1. เราเขียนลงไป 1.

    ประเภทที่สอง 0 -1. หนึ่งหายไป เราครอบครองมันในประเภทอาวุโส หน่วยจากหลักอาวุโสจะเข้าไปอยู่ในหน่วยรอง เช่น สองหน่วย (เนื่องจากหลักหลักแทนด้วย 2 ของระดับที่สูงกว่า) 2-1 = 1 เราเขียนลงไป 1.

    ประเภทที่สาม. เราครอบครองหน่วยของอันดับนี้ ดังนั้นตอนนี้ในอันดับ 0 จึงมีความจำเป็นในการครอบครองหน่วยที่มีอันดับสูงสุด 2-1 = 1 เราเขียนลงไป 1.

    ลองตรวจสอบผลลัพธ์ในระบบทศนิยม

    1101 - 110 = 13 - 6 = 7 (111) ความเท่าเทียมกันที่ถูกต้อง

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

    กฎการลบผ่านส่วนเสริมของสองระบุว่าการลบสามารถแทนที่ได้ด้วยการบวก ถ้าตัวลบถูกแทนที่ด้วยตัวเลขในส่วนเติมเต็มของสอง

    ตัวอย่าง: 34 - 22 = 12

    ลองเขียนตัวอย่างนี้ในรูปแบบไบนารี่ 100010 - 10110 = 1100

    รหัสเพิ่มเติมของหมายเลข 10110 จะเป็นเช่นนี้

    01001 + 00001 = 01010 จากนั้นตัวอย่างเดิมสามารถแทนที่ได้ด้วยการบวกดังนี้: 100010 + 01010 = 101100 ถัดไป คุณต้องละทิ้งหนึ่งหน่วยในหลักที่สำคัญที่สุด ถ้าเราทำเช่นนี้เราจะได้ 001100 ลองทิ้งศูนย์ที่ไม่มีนัยสำคัญและรับ 1100 นั่นคือตัวอย่างได้รับการแก้ไขอย่างถูกต้อง

    ดำเนินการลบ ด้วยวิธีปกติและในโค้ดเพิ่มเติม โดยก่อนหน้านี้ได้แปลงเลขทศนิยมเป็นไบนารี่แล้ว:

    ตรวจสอบโดยการแปลงผลลัพธ์ไบนารี่เป็นระบบเลขฐานสิบ

    การคูณในระบบเลขฐานสอง

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

    ตัวอย่าง. 10101 * 10 = 101010

    การตรวจสอบ.

    10101 = 1*2 4 + 0*2 3 + 1*2 2 + 0*2 1 +1*2 0 = 16 + 4 + 1 = 21

    101010 =1*2 5 + 0*2 4 + 1*2 3 + 0*2 2 +1*2 1 +0*2 0 = 32 + 8 + 2 = 42

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

    1,011 * 101 การคูณนี้สามารถลดลงเป็นผลรวมของการคูณสามหลัก:

    1,011 * 1 + 1,011 * 0 + 1,011 * 100 = 1,011 +101100 = 110111 สามารถเขียนสิ่งเดียวกันในคอลัมน์ดังนี้:

    การตรวจสอบ:

    101 = 5 (ทศนิยม)

    1,011 = 11 (ทศนิยม)

    110111 = 55 (ทศนิยม)

    5*11 = 55 ความเท่าเทียมกันที่ถูกต้อง

    ตัดสินใจด้วยตัวเอง

    ก) 1101 * 1110 =

    ข) 1,010 * 110 =

    จ) 101011 * 1101 =

    จ) 10010 * 1,001 =

    หมายเหตุ: อย่างไรก็ตาม ตารางสูตรคูณในระบบไบนารี่จะมีเพียงรายการเดียวคือ 1 * 1 = 1

    การหารในระบบเลขฐานสอง

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

    เราเลือกไปทางขวา (จากหลักที่มีนัยสำคัญที่สุด) จำนวนหลักที่ตัวเลขผลลัพธ์มีขนาดเล็กที่สุดเท่าที่จะเป็นไปได้และในเวลาเดียวกันก็มากกว่าตัวหาร 2 น้อยกว่าตัวหาร ดังนั้นจำนวนที่เราต้องการคือ 23 จากนั้นเราหารจำนวนผลลัพธ์ด้วยตัวหารด้วยเศษ เราได้รับผลลัพธ์ดังต่อไปนี้:

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

    ตัวอย่าง: 10010111 / 101

    เรากำลังมองหาตัวเลขที่มีหลักแรกมากกว่าตัวหาร นี่คือตัวเลขสี่หลัก 1001 โดยเน้นไว้ ตัวหนา. ตอนนี้คุณต้องหาตัวหารสำหรับตัวเลขที่เลือก และที่นี่เราชนะอีกครั้งเมื่อเปรียบเทียบกับระบบทศนิยม ความจริงก็คือตัวหารที่เลือกนั้นจำเป็นต้องเป็นตัวเลข และเรามีเพียงตัวเลขสองตัวเท่านั้น เนื่องจาก 1001 มากกว่า 101 อย่างชัดเจน ดังนั้นทุกอย่างชัดเจนเมื่อมีตัวหาร: 1. มาดำเนินการตามขั้นตอนกัน

    ดังนั้น ส่วนที่เหลือของการดำเนินการที่เสร็จสมบูรณ์คือ 100 ซึ่งน้อยกว่า 101 ดังนั้นในการดำเนินการขั้นตอนการหารที่สอง คุณต้องเพิ่มหลักถัดไปเป็น 100 นี่คือหลัก 0 ตอนนี้เรามีตัวเลขดังต่อไปนี้:

    1,000 มากกว่า 101 ดังนั้นในขั้นตอนที่สอง เราจะบวกเลข 1 เข้ากับผลหารอีกครั้ง และได้ผลลัพธ์ดังต่อไปนี้ (เพื่อประหยัดพื้นที่ เราจะละเว้นหลักถัดไปทันที)

    ขั้นตอนที่สาม ผลลัพธ์ที่ได้คือ 110 มากกว่า 101 ดังนั้นในขั้นตอนนี้เราจะเขียน 1 ลงในผลหาร จะได้ดังนี้:

    ผลลัพธ์ที่ได้คือเลข 11 น้อยกว่า 101 เราจึงเขียนเลข 0 ลงในผลหารและลดเลขถัดไปลง ปรากฎดังนี้:

    จำนวนผลลัพธ์มากกว่า 101 ดังนั้นเราจึงเขียนเลข 1 ลงในผลหารและดำเนินการอีกครั้ง ปรากฎภาพนี้:

    1

    0

    ผลหารที่เหลือ 10 น้อยกว่า 101 แต่เราไม่มีหลักในการจ่ายเงินปันผล ดังนั้น 10 จึงเป็นเศษที่เหลือสุดท้าย และ 1110 คือผลหารที่ต้องการ

    เรามาตรวจสอบเลขทศนิยมกัน

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

    ภารกิจที่ 1: ดึงตัวอย่างทั้งหมด

    บ่อยครั้งมีปัญหาที่คุณต้องสร้างชุดค่าผสมที่เป็นไปได้ทั้งหมดจากชุดของวัตถุที่กำหนด ตัวอย่างเช่น งานนี้:

    ให้กองหินกองใหญ่เรียงก้อนหินออกเป็นสองกองเพื่อให้มวลของกองหินทั้งสองเท่ากันมากที่สุด

    งานนี้สามารถกำหนดได้ดังนี้:

    ค้นหาก้อนหินจำนวนหนึ่งจากกองขนาดใหญ่โดยให้มวลรวมแตกต่างน้อยที่สุดจากครึ่งหนึ่งของมวลกองใหญ่

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

    ตัวอย่าง: (0, 0, 1); (0, 1, 0); (0, 1, 1); (100); (1, 0, 1); (1, 1, 0); (1, 1, 1);

    หากตำแหน่งที่มีตัวเลขถัดไปเป็นหนึ่ง นั่นหมายความว่ามีองค์ประกอบที่มีตัวเลขเท่ากับตำแหน่งนี้อยู่ในส่วนที่เลือก และหากมีศูนย์ แสดงว่าไม่มีองค์ประกอบนั้น ตัวอย่างเช่น ตัวอย่าง (0, 1, 0); ประกอบด้วยองค์ประกอบหนึ่งที่มีหมายเลข 2 และส่วนที่เลือกคือ (1, 1, 0) ประกอบด้วยสององค์ประกอบที่มีหมายเลข 1 และ 2

    ตัวอย่างนี้แสดงให้เห็นชัดเจนว่าตัวอย่างสามารถแสดงเป็นเลขฐานสองได้ นอกจากนี้ เป็นเรื่องง่ายที่จะเห็นว่าเลขฐานสองหนึ่ง สอง และสามหลักที่เป็นไปได้ทั้งหมดเขียนไว้ด้านบน ลองเขียนใหม่ดังต่อไปนี้:

    001; 010; 011; 100; 101; 110; 111

    1; 10; 11; 100; 101; 110; 111

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

    ข้อมูลอินพุตอัลกอริทึม

    ให้ชุดวัตถุ N - ชิ้น ต่อไปนี้เราจะเรียกชุดนี้ว่าชุดขององค์ประกอบเริ่มต้น ลองกำหนดหมายเลของค์ประกอบทั้งหมดของชุดดั้งเดิมตั้งแต่ 1 ถึง N สร้างเลขฐานสองจากศูนย์ที่ไม่มีนัยสำคัญ N 0000… 0 N เลขฐานสองศูนย์นี้จะแสดงถึงตัวอย่างที่เป็นศูนย์ซึ่งจะเริ่มกระบวนการสุ่มตัวอย่าง ตัวเลขของตัวเลขจะนับจากขวาไปซ้าย กล่าวคือ ตัวเลขซ้ายสุดจะมีนัยสำคัญที่สุด

    เรามาตกลงที่จะแสดงเลขฐานสองนี้ด้วยตัวพิมพ์ใหญ่ BINARY

    อัลกอริทึม

    ถ้าเลขฐานสองประกอบด้วยเลขทั้งหมด

    จากนั้นเราก็หยุดอัลกอริทึม

      • เราบวกหนึ่งเข้ากับเลขฐานสองตามกฎของเลขคณิตไบนารี
      • จากผลลัพธ์ของเลขฐานสอง เราจะสร้างตัวอย่างต่อไป ตามที่อธิบายไว้ข้างต้น

    ปัญหาที่ 2: การค้นหาจำนวนเฉพาะที่มีค่ามาก

    ก่อนอื่น ให้เราจำไว้ว่าจำนวนเฉพาะคือจำนวนธรรมชาติที่หารด้วย 1 และตัวมันเองเท่านั้น ตัวอย่างจำนวนเฉพาะ: 1, 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31

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

    บันทึก. การเข้ารหัสที่แข็งแกร่งคือการเข้ารหัสที่ใช้เวลานานมากในการถอดรหัส

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

    สามารถรับรหัสที่ค่อนข้างเชื่อถือได้หากคุณใช้รหัสง่ายๆ เช่น 150 ตัวอักษร อย่างไรก็ตามการค้นหาสิ่งที่เรียบง่ายนั้นไม่ใช่เรื่องง่าย สมมติว่าจำเป็นต้องตรวจสอบจำนวน A (ขนาดใหญ่มาก) เพื่อหาความเป็นลำดับแรก ก็เหมือนกับการหาตัวหาร หากเราสามารถหาตัวหารได้ในช่วงตั้งแต่ 2 ถึงรากที่สองของ A ก็แสดงว่าไม่ใช่จำนวนเฉพาะ ลองประมาณจำนวนตัวเลขที่ต้องทดสอบความสามารถในการหารจำนวน A กัน

    สมมติว่าเลข A มี 150 หลัก รากที่สองของมันจะมีอักขระอย่างน้อย 75 ตัว ในการแจกแจงตัวหารที่เป็นไปได้จำนวนหนึ่ง เราจำเป็นต้องมีมาก คอมพิวเตอร์ที่ทรงพลังและใช้เวลานานมากซึ่งหมายความว่าปัญหานั้นไม่สามารถแก้ไขได้ในทางปฏิบัติ

    วิธีจัดการกับสิ่งนี้

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

    พวกมันเรียบง่ายและมีความน่าจะเป็นสูง

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

    2 1 - 1 = 1 ; 2 2 -1 = 3 ; 2 3 - 1 = 7 ; 2 4 - 1 = 15; 2 5 - 1 = 31 ; 2 6 -1 = 63;

    2 7 - 1 =127 ; 2 8 -1 = 255; 2 9 - 1 = 511;

    ตัวเลขเฉพาะจะถูกทำเครื่องหมายด้วยตัวหนา มีเลขเด่น 5 ตัวสำหรับเลขเมอร์เซน 9 ตัว โดยคิดเป็นเปอร์เซ็นต์ นี่คือ 5/9*100 = 55.6% ในเวลาเดียวกัน ทุก ๆ 1,000 จำนวนธรรมชาติตัวแรก จะมีจำนวนเฉพาะเพียง 169 ตัวเท่านั้น โดยคิดเป็นเปอร์เซ็นต์ คือ 169/1000*100 = 16.9% นั่นคือในพันแรกในแง่เปอร์เซ็นต์ จำนวนเฉพาะของตัวเลข Mersen มักพบบ่อยกว่าจำนวนธรรมชาติธรรมดาเกือบ 4 เท่า

    ___________________________________________________________

    ทีนี้ลองหาเลขเมอร์เซนเฉพาะเจาะจง เช่น 2 4 - 1 มาเขียนเป็นเลขฐานสองกัน

    2 4 - 1 = 10000 - 1 = 1111

    ลองใช้หมายเลข Mersen ต่อไปนี้ 2 5 -1 แล้วเขียนเป็นเลขฐานสอง เราได้รับสิ่งต่อไปนี้:

    2 5 -1 = 100000 - 1 = 11111

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

    การแปลงทศนิยมอย่างรวดเร็วเป็นไบนารี

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

    วิธีการนี้คิดค้นโดย Legendre นักคณิตศาสตร์ชาวฝรั่งเศส ตัวอย่างเช่น กำหนดหมายเลข 11183445 เราหารมันด้วย 64 เราได้เศษของ 21 และผลหารคือ 174741 เราหารตัวเลขนี้อีกครั้งด้วย 64 เราได้เศษของ 21 และผลหารของ 2730 สุดท้ายนี้ , 2730 หารด้วย 64 ให้เศษเหลือ 42 และผลหารของ 42 แต่ 64 ในไบนารี่คือ 1000000, 21 ในไบนารี่คือ 10101 และ 42 คือ 101010 ดังนั้น ตัวเลขเดิมจึงเขียนเป็นไบนารีดังนี้

    101010 101010 010101 010101

    เพื่อให้ชัดเจนยิ่งขึ้น นี่เป็นอีกตัวอย่างหนึ่งที่มีจำนวนน้อยกว่า ลองแปลงการแทนค่าไบนารีของตัวเลข 235 หาร 235 ด้วย 64 ด้วยเศษ เราได้รับ:

    ปริมาณ = 3, ไบนารี 11 หรือ 000011

    ส่วนที่เหลือ = 43, ไบนารี่ 101011

    จากนั้น 235 = 11101011 ลองตรวจสอบผลลัพธ์นี้:

    11101011 = 2 7 + 2 6 + 2 5 + 2 3 + 2 1 + 2 0 = 128+64+32+8+2+1 = 235

    หมายเหตุ:

    1. สังเกตได้ง่ายว่าเลขฐานสองสุดท้ายรวมเศษทั้งหมด และในขั้นตอนสุดท้ายรวมทั้งเศษที่เหลือและผลหารด้วย
    2. ผลหารจะถูกเขียนก่อนเศษที่เหลือ
    3. ถ้าผลหารหรือเศษผลลัพธ์มีตัวเลขน้อยกว่า 6 หลักในการแทนค่าไบนารี่ (ศูนย์ 6 ตัวมีค่าแทนเลขฐานสองของจำนวน 64 = 1000000) ก็จะเติมเลขศูนย์ที่ไม่มีนัยสำคัญลงไป

    และตัวอย่างที่ซับซ้อนอีกตัวอย่างหนึ่ง หมายเลขคือ 25678425

    ขั้นตอนที่ 1: 25678425 หารด้วย 64

    ส่วนตัว = 401225

    ที่เหลือ = 25 = 011001

    ขั้นตอนที่ 2: 401225 หารด้วย 64

    ผลหาร = 6269

    ส่วนที่เหลือ = 9 = 001001

    ขั้นตอนที่ 3: 6269 หารด้วย 64

    ผลหาร = 97

    ที่เหลือ = 61 = 111101

    ขั้นตอนที่ 4: 97 หารด้วย 64

    ผลหาร = 1 = 000001

    ที่เหลือ = 33 = 100001

    ผลลัพธ์ตัวเลข = 1.100001.111101.001001.011001

    ในจำนวนนี้ ผลลัพธ์ขั้นกลางที่รวมอยู่ในนั้นจะถูกคั่นด้วยจุด

    แปลงตัวเลขเป็นตัวแทนไบนารี:

    ภาคผนวก: ตารางที่ 1

    0,015625

    0,0078125

    0,00390625

    0,001953125

    0,0009765625

    0,00048828125

    0,000244140625

    0,0001220703125

    0,00006103515625

    0,000030517578125

    0,0000152587890625

    0,00000762939453125

    0,000003814697265625

    0,0000019073486328125

    0,00000095367431640625

    0,000000476837158203125

    การดำเนินการทางคณิตศาสตร์ในระบบเลขตำแหน่งใด ๆ จะดำเนินการตามกฎเดียวกันกับที่ใช้ในระบบเลขฐานสิบ

    เช่นเดียวกับในระบบเลขฐานสิบ ในการดำเนินการทางคณิตศาสตร์ คุณจำเป็นต้องรู้ตารางการบวก (การลบ) และตารางสูตรคูณ

    ตารางการบวก ลบ และคูณของระบบเลขฐานสอง

    การบวกเลขฐานสอง

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

    ตัวอย่าง: 1011,1 2 + 1010,11 2

    สถานการณ์ยังน่าสนใจเมื่อมีการบวกตัวเลขมากกว่าสองตัว ในกรณีนี้สามารถโอนได้หลายหลัก
    ตัวอย่าง: 111,1 2 + 111 2 + 101,1 2

    เมื่อบวกเข้าที่ (บิต 0) จะมี 4 อัน ซึ่งเมื่อรวมกันแล้วจะได้ 100 2 . ดังนั้นจากเลขศูนย์ถึงหลักแรกจึงจะถูกโอน 0 และในวินาที- 1 .
    สถานการณ์ที่คล้ายกันเกิดขึ้นในหลักที่สองโดยเมื่อคำนึงถึงหน่วยที่โอนสองหน่วยแล้วจะได้รับหมายเลขดังกล่าว 5 = 101 2 . 1 ยังคงอยู่ในประเภทที่สอง 0 โอนไปยังที่สามและ 1 ย้ายไปที่สี่

    การลบเลขฐานสอง

    ในกรณีที่มีหน่วยของประเภทอาวุโสเข้าร่วม ก็จะให้หน่วยของประเภทจูเนียร์สองหน่วย หากมีการศึกษาหน่วยการเรียนรู้หลายหมวดหมู่ ก็จะให้หนึ่งหน่วยในหมวดหมู่ศูนย์กลางทั้งหมดและอีกสองหน่วยในหมวดหมู่ที่ถูกศึกษา
    ตัวอย่าง: 10110,01 2 — 1001,1 2

    การดำเนินการทางคณิตศาสตร์ในระบบตัวเลขตำแหน่งทั้งหมดจะดำเนินการตามกฎเดียวกันกับที่คุณทราบดี

    ส่วนที่เพิ่มเข้าไป.ลองพิจารณาบวกตัวเลขในระบบเลขฐานสองกัน ขึ้นอยู่กับตารางสำหรับการบวกเลขฐานสองหลักเดียว :

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

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

    ตัวอย่าง เพิ่มเลขฐานสอง 110 2 และ 11 2 ลงในคอลัมน์ :

    ลองตรวจสอบความถูกต้องของการคำนวณโดยการเพิ่มในระบบเลขฐานสิบ ลองแปลงเลขฐานสองเป็นระบบเลขฐานสิบแล้วบวกเข้าไป:

    110 2 =1*2 2 + 1*2 1 + 0*2 0 = 6 10 ;

    11 2 = 1*2 1 + 1*2 0 = 3 10 ;

    6 10 + 3 10 = 9 10 .

    ทีนี้ลองแปลงผลลัพธ์ของการบวกเลขฐานสองเป็นเลขทศนิยม:

    1001 2 = 1*2 3 +0*2 2 + 0*2 1 + 1*2 0 = 9 10 /

    ลองเปรียบเทียบผลลัพธ์กัน - ดำเนินการเพิ่มอย่างถูกต้อง

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

    การลบเลขฐานสองหลายบิตเกิดขึ้นตามตารางการลบด้านบน โดยคำนึงถึงการยืมที่เป็นไปได้จากบิตที่สำคัญที่สุด ตามตัวอย่าง ลองลบเลขฐานสอง 110 2 และ 11 2:

    การคูณการคูณจะขึ้นอยู่กับตารางสูตรคูณสำหรับเลขฐานสองหลักเดียว:

    การคูณเลขฐานสองหลายหลักเกิดขึ้นตามตารางสูตรคูณข้างต้นตามรูปแบบปกติที่ใช้ในระบบเลขฐานสิบพร้อมการคูณตามลำดับของตัวคูณด้วยหลักของตัวคูณ เป็นตัวอย่าง ลองคูณเลขฐานสองและ:

    แผนก.การดำเนินการหารจะดำเนินการโดยใช้อัลกอริทึมที่คล้ายคลึงกับอัลกอริทึมสำหรับการดำเนินการหารในระบบเลขฐานสิบ ตามตัวอย่าง ลองหารเลขฐานสอง 110 2 และ 11 2: