Operator Bit dan Luapan
Manipulasi bit dan gunakan operator luapan seperti &+ dengan aman.
Operator Bit dan Luapan adalah pelajaran Swift Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Swift Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Swift Academy mencakup 4 pelajaran total.
Operator Bit
Operator bit bekerja pada setiap digit biner dari bilangan bulat. Swift menyediakan AND &, OR |, XOR ^, NOT ~, serta pergeseran << / >>.
let a: UInt8 = 0b1100
let b: UInt8 = 0b1010
print(a & b)
print(a | b)AND Bit
& menetapkan setiap bit hasil menjadi 1 hanya jika kedua bit masukan bernilai 1. Operator ini sering digunakan untuk menyamarkan bit.
let value: UInt8 = 0b10110101
let mask: UInt8 = 0b00001111
let low = value & mask
print(low)OR Bit
| menetapkan setiap bit hasil menjadi 1 jika salah satu bit masukan bernilai 1. Operator ini berguna untuk menggabungkan tanda.
let flagsA: UInt8 = 0b0001
let flagsB: UInt8 = 0b0100
let combined = flagsA | flagsB
print(combined)XOR Bit
^ menetapkan suatu bit menjadi 1 hanya jika kedua bit masukan berbeda. Melakukan XOR dengan nilai yang sama dua kali akan mengembalikan nilai original.
let original: UInt8 = 0b1010
let key: UInt8 = 0b0110
let encoded = original ^ key
let decoded = encoded ^ key
print(encoded, decoded)NOT Bit
~ uner membalik setiap bit. Untuk UInt8, semua 8 bit dibalik.
let bits: UInt8 = 0b00001111
let inverted = ~bits
print(inverted)Pergeseran ke Kiri
<< memindahkan bit ke kiri dan mengisinya dengan nol. Setiap pergeseran ke kiri sebanyak 1 mengalikan nilai unsigned dengan 2.
let n: UInt8 = 0b00000011
print(n << 1)
print(n << 2)Pergeseran ke Kanan
>> memindahkan bit ke kanan. Untuk bilangan bulat unsigned, operator ini mengisinya dengan nol, yang secara efektif membagi dengan pangkat dua.
let n: UInt8 = 0b00010000
print(n >> 1)
print(n >> 4)Luapan dengan Operator Biasa
Aritmetika standar mengalami jebakan saat terjadi luapan untuk menjaga program tetap safe: melebihi nilai maksimum suatu tipe biasanya menyebabkan program berhenti, bukan berputar diam-diam.
let maxByte = UInt8.max
print("Max UInt8:", maxByte)
let safe = Int(maxByte) + 1
print("Promoted sum:", safe)Penjumlahan Luapan &+
Jika Anda memang menginginkan perputaran nilai, gunakan operator luapan. &+ berputar melewati nilai maksimum kembali ke nilai minimum, bukan menyebabkan program berhenti.
let maxByte: UInt8 = 255
let wrapped = maxByte &+ 1
print(wrapped)Pengurangan dan Perkalian Luapan
&- dan &* berputar dengan cara yang sama. 0 &- 1 untuk UInt8 berputar menjadi 255.
let zero: UInt8 = 0
print(zero &- 1)
let big: UInt8 = 200
print(big &* 2)Kapan Menggunakan Operator Luapan
Gunakan &+ &- &* hanya jika perilaku berputar memang diinginkan, misalnya untuk hashing atau penghitung siklik. Jika tidak, pilih operator yang menghasilkan jebakan demi keamanan.
var counter: UInt8 = 254
for _ in 0..<4 {
counter = counter &+ 1
print(counter)
}Pemeriksaan Singkat
Jelaskan perilaku perputaran saat terjadi luapan.
Ringkasan: Operator Bit dan Luapan
Anda telah mempelajari operator bit & | ^ ~ dan pergeseran << >>, bahwa aritmetika biasa menghasilkan jebakan saat luapan demi keamanan, serta bahwa &+ &- &* sengaja berputar melampaui batas tipe.
let mask: UInt8 = 0b1111
let v: UInt8 = 0b10101010
print("Masked:", v & mask)
print("Wrap:", UInt8(0) &- 1)Pertanyaan yang Sering Diajukan
Apakah pelajaran “Operator Bit dan Luapan” gratis?
Ya — teks lengkap “Operator Bit dan Luapan” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Swift Academy, upgrade ke CoddyKit PRO. Kursus Swift Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Operator Bit dan Luapan”?
Manipulasi bit dan gunakan operator luapan seperti &+ dengan aman. Kamu berlatih Swift Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Swift Academy?
Tidak diperlukan pengalaman sebelumnya. Swift Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Operator Bit dan Luapan” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Swift Academy ini?
Ya. Setiap pelajaran Swift Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Operator Aritmetika dan Penugasan Gabungan
- Operator Perbandingan dan Identitas
- Operator Logika dan Hubung Singkat
- Operator Bit dan Luapan