9 poin oleh xguru 2022-02-10 | 1 komentar | Bagikan ke WhatsApp
  • Menjumlahkannya lalu membaginya dengan 2 dapat menyebabkan overflow

→ (a + b) / 2

  • Jika mengetahui mana angka yang lebih besar, kita juga bisa mengambil selisih kedua nilai, menambahkannya ke angka yang lebih kecil, lalu membaginya dengan 2

→ low + (high - low) / 2

  • Algoritme yang tetap bisa dipakai meski tidak tahu mana angka yang lebih besar, patennya berakhir pada 2016

→ (a / 2) + (b / 2) + (a & b & 1)

  • SWAR : SIMD within a register

→ (a & b) + (a ^ b) / 2

  • Jika compiler mendukung 64-bit, lakukan casting

→ ((unsigned long long)a + b) / 2

  • Lalu setelah itu ada kode assembly untuk tiap prosesor.. silakan lihat artikel aslinya

1 komentar

 
xguru 2022-02-10

Blog Raymond Chen, The Old New Thing, membahas beragam topik, mulai dari kisah di balik pengembangan Windows hingga topik lainnya.

Di Korea pernah terbit buku terjemahan berjudul "282 Kisah Pengembangan Windows oleh Raymond Chen", tetapi saat ini sudah tidak lagi dicetak.