Manipulasi bit

Manipulasi bit

Ingat bahwa sebuah bilangan bulat dapat ditulis dalam bentuk desimal, biner, atau heksadesimal:

13 (desimal) = 0b1101 = 0xd

> Fungsi binString dan hexString dapat digunakan untuk memperoleh representasi biner dan heksadesimal dari sebuah bilangan bulat.

Manfaat menguasai manipulasi nilai biner adalah kemampuan mengoptimalkan langkah-langkah dalam perhitungan yang sering dilakukan, atau memanipulasi deretan boolean dengan cepat.

Apa itu bilangan biner

Sebuah bilangan biner dapat sekaligus mewakili sebuah angka dan sebuah array nilai boolean. Karena bilangan bulat berukuran 64 bit, kita dapat menyimpan 64 nilai boolean dalam satu bilangan bulat. Selanjutnya, kita anggap bit bernilai 1 sebagai nilai true, dan bit bernilai 0 sebagai false.

Operator dan fungsi yang tersedia

Operator biner di LeekScript adalah:

Fungsi-fungsi khusus juga mempermudah manipulasi bit demi bit: testBit, setBit, bitCount, bitLength, trailingZeros dan leadingZeros.

Untuk memanipulasi bilangan bulat yang lebih dari 64 bit, lihat BigInteger.

Mask biner

Mask biner digunakan untuk mengambil nilai sebuah bit atau sekelompok bit dari suatu bilangan.

Mengambil nilai bit pada indeks N

Untuk mengambil nilai pada indeks N:

Mengambil nilai N bit berurutan

Untuk mengambil nilai N bit terakhir:

Di mana 0b111...111 adalah bilangan biner dengan angka 1 sebanyak N kali, sehingga setara dengan 2**N-1.