Οι συμβολοσειρές bit επιτρέπουν στους προγραμματιστές να δουλεύουν αποτελεσματικά με δυαδικά δεδομένα.
Μπορείς να κατασκευάσεις συμβολοσειρές bit κομψά χρησιμοποιώντας την ειδική μορφή <<>>.
<<0b101::3>> == <<5::3>> and <<5::3>> == <<5::size(3)>>
# => true
first = <<0b110::3>>
second = <<0b001::3>>
combined = <<first::bitstring, second::bitstring>>
# => <<49::size(6)>>
Μπορείς να κάνεις αντιστοίχιση χρησιμοποιώντας τη μορφή <<>> και να αξιοποιήσεις αυτή την αντιστοίχιση για να αποδομήσεις περαιτέρω τα δυαδικά δεδομένα.
<<data_size::32, count::size(data_size)>> = <<8::32, 3::8>>
# => <<0, 0, 0, 8, 3>>
data_size
# => 8
count
# => 3
Μπορείς να κάνεις αντιστοίχιση στο υπόλοιπο της συμβολοσειράς bit χρησιμοποιώντας το ::bitstring.
<<_::32, remainder::bitstring>> = <<8::32, 3::8>>
# => <<0, 0, 0, 8, 3>>
remainder
# => <<3>>
Ο τύπος των δυαδικών δεδομένων είναι ένας ειδικός τύπος συμβολοσειράς bit όπου ο αριθμός των bit διαιρείται με το 8.
Η Elixir παρέχει συντακτική ζάχαρη για την εργασία με ακέραια κυριολεκτικά σε διάφορες μορφές:
0b1000001 = ?A = 65