
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 0000
1 = 0000 0001
2 = 0000 0010
3 = 0000 0011
4 = 0000 0100
5 = 0000 0101
6 = 0000 0110
7 = 0000 0111
8 = 0000 1000
9 = 0000 1001
10 = 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
Recent Post
-
Bybit Diretas! Rp 23,8 Triliun Raib dalam Sekejap
-
Lagu Sukatani Diblokir tapi Tak Bisa Dibungkam!
-
Tagar Indonesia Gelap Trending, Gerakan Perlawanan di Media Sosial
-
Mau Bisnis Cepat Untung? Gini Cara Efisiensinya
-
6 Tren Marketing yang Wajib Anda Ketahui di tahun 2025
-
Duolingo Trending, Maskotnya Meninggal Demi Marketing?
-
Teknologi Mengubah Cara kita Belajar di Era Digital?
-
Mama-Bisa-Investasi
Categories
- Business (129)
- Company Profile (3)
- Developer Connect (126)
- HR and L&D (23)
- Human Reasearch and Development (15)
- Landing Page (2)
- Marketing (27)
- Media Relations (72)
- News (39)
- Public Relations (48)
- Story (8)
- Technology (221)
- Tips and Trick (59)
- Toko Online (2)
- Uncategorized (23)
- Video & Tips (13)
- Wesclic (30)
Tags
Read More
Bybit Diretas! Rp 23,8 Triliun Raib dalam Sekejap
titah 22/02/2025 0Keamanan dalam dunia kripto kembali diuji setelah Bybit, salah satu platform pertukaran mata uang digital terbesar, dikabarkan mengalami peretasan besar. Sebanyak $1,46 miliar dalam bentuk…
Lagu Sukatani Diblokir tapi Tak Bisa Dibungkam!
titah 21/02/2025 0Ketika musik dilarang, apakah benar akan hilang? Tidak juga. Justru sebaliknya, band Sukatani yang baru…
Tagar Indonesia Gelap Trending, Gerakan Perlawanan di Media Sosial
titah 19/02/2025 0Media sosial telah menjadi alat yang sangat berpengaruh di media sosial untuk mengekspresikan berbagai masalah…
Mau Bisnis Cepat Untung? Gini Cara Efisiensinya
titah 18/02/2025 0Bisnis yang efisien tidak hanya berfokus pada penghematan biaya tapi juga pada cara memaksimalkan waktu,…
6 Tren Marketing yang Wajib Anda Ketahui di tahun 2025
titah 17/02/2025 0Agar dapat bersaing dan berkembang di pasar, UMKM perlu menyesuaikan diri dengan strategi marketing yang…