Operator ^ (xor) di Java bukan untuk Membuat Pangkat!
Sebuah kekeliruan saya temukan ketika memeriksa kode program milik teman. Dia mengimplementasikan rumus berikut ke dalam kode java.
y = x2 + 3
Potongan kode program yang dia tulis.
int x = 3;int y = x^2 + 3;
Hasilnya pun 6; tidak sesuai harapan. Seharusnya menghasilkan 12.
Operator ^ (Exclusive Or), disingkat xor, merupakan operator bitwise. Operator bitwise merupakan operator untuk memanipulasi bilangan biner.
Contoh konversi bilangan desimal ke biner (8bit):
0 = 0000 00001 = 0000 00012 = 0000 00103 = 0000 00114 = 0000 01005 = 0000 01016 = 0000 01107 = 0000 01118 = 0000 10009 = 0000 100110 = 0000 1010
Kita tinjau lagi perhitungan kode di atas:
y = x^2 + 3y = 3^2 + 3y = 6
Pada operasi 3^2 akan menghasilkan 1 (0000 0001). Kemudian ditambah 3 akan menghasilkan 6. Mengapa bisa menghasilkan 6, bukannya 1 + 3 = 4. Aneh ‘kan?
Operator bitwise xor akan menhasilkan bilangan biner. Oleh sebab itu, penjumlahan yang dilakukan pada operasi di atas adalah penjumlahan bilangan biner, bukan penjumlahan bilangan desimal. Jadi 1 + 3 = 6 itu sama dengan 00000001 + 00000011 = 000000110.
Memahami operator ^ (xor)
Jadi, megnapa 3^2 menghasilkan 1? Silahkan tinjau lagi pelajaran logika matematika (xor).
| a | b | a or b | a xor b |
|---|---|---|---|
| 1 | 1 | 1 | 0 |
| 1 | 0 | 1 | 1 |
| 0 | 1 | 1 | 1 |
| 0 | 0 | 0 | 0 |
Sehingga,
3 = 0000 0011
2 = 0000 0010
————— ^ (xor)
3^2 = 0000 0001
Bagaimana membuat pangkat di Java?
Pangkat dapat dibuat dengan fungsi Math.pow(). Fungsi ini memiliki dua parameter. Parameter pertama adalah bilangan yang akan dipangkatkan. Parameter kedua adalah bilangan pangkatnya. Contoh: 32.
Math.pow(3, 2);
Akan menghasilkan 9.\
Kesimpulan
Operator bitwise ^ (xor) bukan operator untuk pemangkatan. Operator bitwise ^ (xor) digunakan untuk operasi bilangan biner.
Gimana? Sudah paham kan bagaimana penggunaan operator bitwise ^ (xor)? Yuk pelajari lebih lanjut pemrograman Java pada artikel-artikel berikut!
Baca juga: Menghitung Akar Kuadrat dan Akar Kubik dengan Java | Apa Fungsi String[] args pada Pemrograman Java? | Cara Membaca dan Menulis File di Java
Read More
Startup AI China “INF Tech” Akses 2.300 GPU Nvidia Blackwell Lewat Indonesia: Sinyal Baru Peta Persaingan AI Global
alya 16/11/2025 0Jakarta, Dunia kecerdasan buatan kembali diguncang oleh laporan terbaru: INF Tech, startup AI berbasis di Shanghai, dikabarkan berhasil mengakses 2.300 GPU Nvidia Blackwell seri GPU…
Microsoft Ingin Latih 500 Ribu Talenta AI di Indonesia Lewat Program Microsoft Elevate: Akselerasi Kompetensi Digital hingga 2026
alya 16/11/2025 0Jakarta, Microsoft mengumumkan target ambisius: melatih 500 ribu orang di Indonesia untuk menjadi talenta kecerdasan…
Khawatir Gelembung AI? Saham Semikonduktor & Teknologi Asia Anjlok Tajam
alya 16/11/2025 0vIndeks saham Asia kembali terguncang setelah gelombang aksi jual besar-besaran menghantam saham semikonduktor dan perusahaan…
Baidu Resmikan Chip AI M100 & M300: Lompatan Besar Tiongkok Menuju Kemandirian Teknologi dan Komputasi Masa Depan
alya 16/11/2025 0Baidu, perusahaan teknologi raksasa asal Tiongkok yang dikenal sebagai pionir dalam pengembangan kecerdasan buatan (AI),…
Austrade Bawa 10 Perusahaan Teknologi Australia ke Jakarta: Memperkuat Transformasi Digital Indonesia Lewat Program Landing Pad Inovasi
alya 16/11/2025 0Jakarta, Dalam langkah strategis yang memperkuat hubungan teknologi antara Australia dan Indonesia, Australian Trade and…
Categories
- Business (158)
- Company Profile (3)
- Developer Connect (126)
- HR and L&D (23)
- Human Reasearch and Development (15)
- Landing Page (2)
- Marketing (31)
- Media Relations (72)
- News (53)
- Public Relations (48)
- Story (8)
- technology (1)
- Technology (983)
- Tips and Trick (74)
- Toko Online (2)
- Uncategorized (64)
- Video & Tips (13)
- Wesclic (77)
Popular Tags
