Kalkulator Bitwise
Jalankan AND, OR, XOR, NOT, left shift atau right shift pada dua bilangan bulat dan lihat hasil yang tepat dalam desimal, heksadesimal, dan biner — menggunakan aritmatika BigInt dengan presisi arbitrer, tanpa pemotongan 32-bit.
Input
Untuk Left Shift / Right Shift, ini adalah jumlah pergeseran (0–1024). Tidak digunakan untuk NOT.
Output
| Properti | Nilai |
|---|---|
| No data yet | |
Panduan
Kalkulator bitwise menerapkan operasi logika langsung pada representasi biner dari angka, bit per bit, daripada memperlakukannya sebagai nilai desimal biasa. Alat ini menjalankan AND, OR, XOR, NOT, left shift, dan right shift pada dua bilangan bulat dan menampilkan hasilnya sebagai desimal, heksadesimal, dan biner — berguna untuk debugging bendera bit, masker izin, subnet jaringan, bidang protokol tingkat rendah, atau belajar cara kerja logika biner.
Cara menggunakannya
Masukkan Bilangan A (desimal, misalnya 42, atau heks, misalnya 0x2A — awalan - diperbolehkan), pilih Operasi, dan masukkan Bilangan B — operand kedua untuk AND/OR/XOR, atau jumlah pergeseran untuk Left/Right Shift (tidak digunakan untuk NOT, yang bekerja pada Bilangan A saja). Hasil diperbarui secara otomatis sebagai desimal, heksadesimal, dan biner.
Operasi-operasi
| A | B | AND | OR | XOR |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 |
- AND (
&) — sebuah bit adalah1hanya jika kedua bit input adalah1. - OR (
\|) — sebuah bit adalah1jika paling tidak satu bit input adalah1. - XOR (
^) — sebuah bit adalah1jika bit input berbeda. - NOT (
~) — membalik setiap bit dari satu bilangan (unary — Bilangan B diabaikan). Untuk bilangan bulatn,~nsama dengan-(n + 1); misalnya~5adalah-6. - Left Shift (
<<) — menggeser bit A ke kiri sebanyak B posisi, mengisi dengan nol di sebelah kanan. Setara denganA × 2^B. - Right Shift (
>>) — menggeser bit A ke kanan sebanyak B posisi, membuang bit yang rendah. Setara dengan pembagian bilangan bulat oleh2^B, pembulatan menuju negatif tak terhingga (bekerja dengan benar untuk bilangan negatif juga).
Contoh
12 AND 10: 12 adalah 1100 dalam biner, 10 adalah 1010. Membandingkan bit per bit: 1100 & 1010 = 1000, yaitu 8 dalam desimal. Dua bilangan yang sama dengan OR memberikan 1110 (14), dan dengan XOR memberikan 0110 (6).
Mengapa BigInt daripada angka biasa
Banyak kalkulator bitwise memaksa angka menjadi bilangan bulat bertanda 32-bit sebelum menjalankan operasi, karena itulah yang dilakukan operator bitwise JavaScript asli (&, |, ^, ~, <<, dan >>) pada nilai Number biasa — apa pun yang lebih besar dari sekitar 2,1 miliar (2^31) diam-diam dipotong menjadi nilai yang salah. Alat ini menggunakan tipe BigInt JavaScript sebagai gantinya, yang operator bitwise-nya tidak memiliki lebar tetap, sehingga hasil tetap tepat tidak peduli seberapa besar operandnya.
FAQ
Mengapa NOT menghasilkan bilangan negatif? Bilangan bulat secara konseptual adalah suatu aliran tak terbatas dari 1 terkemuka (negatif) atau 0 (positif) dalam bentuk komplemen dua, sehingga membalik setiap bit dari bilangan non-negatif selalu menghasilkan bilangan negatif. Perilaku komplemen dua standar, bukan bug.
Apakah ada unsigned right shift (>>>)? Tidak. Unsigned shift hanya masuk akal untuk lebar bit tetap (mengisi nol daripada sign-extend), dan bilangan alat ini tidak memiliki lebar tetap — itulah yang memungkinkannya menangani nilai yang besar secara sewenang-wenang dengan benar.
Berapa jumlah pergeseran terbesar yang diizinkan? Jumlah pergeseran dibatasi pada 1024 untuk menjaga setiap hasil dapat dikomputasi secara instan; pergeseran yang besar sudah menghasilkan hasil lebih dari 1000 bit panjang.
Bisakah saya menggunakan input heksadesimal? Ya — awali salah satu bilangan dengan 0x (misalnya 0xFF). Output selalu ditampilkan dalam desimal, heks, dan biner terlepas dari format mana yang Anda ketik.
Privasi
Semua perhitungan dijalankan secara lokal di browser Anda menggunakan JavaScript standar — apa pun yang Anda masukkan tidak diunggah atau disimpan.
Use it from code
From 3 credits per callREST API
curl -X POST https://api.iotools.cloud/v1/tool/bitwise-calculator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"numberA": "12",
"operation": "and",
"numberB": "10"
}'Swap in your own key from your account. The tool's fields are the body — no wrapper.
Ask an AI agent
Use the IOTools `bitwise-calculator` tool (Bitwise Calculator) on this input:
YOUR_INPUT_HEREPaste this at any agent connected to the IOTools MCP server, then add your input.