Bittioperaattorit
AND, OR, XOR, NOT ja siirrot.
Bittioperaattorit on ilmainen Zig Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Zig Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Zig Academy-kurssilla on yhteensä 4 oppituntia.
Bittien tasolle
Jokainen kokonaisluku on pohjimmiltaan bittijono. Bittioperaattoreilla voitte käsitellä yksittäisiä ykkösiä ja nollia suoraan ilman pyöristystä tai väliin jäävää matematiikkaa.
Bittioperaattori AND
&-operaattori säilyttää bitin vain kohdissa, joissa molemmissa syötteissä on 1. Se on perinteinen työkalu niiden bittien peittämiseen, joita ette halua mukaan.
const masked = value & 0x0F;Bittikohtainen OR
|-operaattori asettaa bitin, jos jommassakummassa syötteessä on 1. Käyttäkää sitä tiettyjen lippujen kytkemiseen päälle vaikuttamatta muihin.
const withFlag = value | 0b0010;Bittikohtainen XOR
^-operaattori asettaa bitin vain kohdissa, joissa syötteet eroavat toisistaan. XOR on kätevä lipun vaihtamiseen tai kahden bittikuvion vertailuun.
const toggled = value ^ 0b0001;Bittikohtainen NOT
Yksipaikkainen ~-operaattori kääntää kaikki bitit kerralla: jokainen 1 muuttuu nollaksi ja jokainen 0 ykköseksi. Se muodostaa arvon komplementin.
const inverted = ~flags;Siirtäminen vasemmalle
<<-operaattori siirtää bittejä kohti suurempiarvoista päätä ja täyttää tyhjentyvät kohdat nollilla. Jokainen yhden bitin vasemmalle siirto kaksinkertaistaa etumerkittömän arvon.
const doubled = x << 1;Siirtäminen oikealle
>>-operaattori siirtää bittejä kohti pienempiarvoista päätä. Etumerkittömällä kokonaisluvulla jokainen yhden bitin oikealle siirto puolittaa arvon.
const halved = x >> 1;Maskilla bittien lukeminen
Yhdistä AND maskiin ja testaa, onko bitti asetettu. Jos value & mask on nollasta poikkeava, lippu on päällä; jos tulos on nolla, se on pois päältä.
const isSet = (value & mask) != 0;Asettaminen ja tyhjentäminen
OR-operaatiolla ja maskilla voitte asettaa bittejä ja käännetyllä maskilla tehdyllä AND-operaatiolla tyhjentää niitä. Yhdessä nämä antavat tarkan hallinnan jokaiseen lippuun.
const cleared = value & ~mask;Siirtomäärät tarkistetaan
Zig ei salli siirtämistä enempää kuin tyyppi pystyy sisältämään bittejä. Alueen ulkopuolinen siirtomäärä on määritelty virhe, ei hiljaista roskaa.
Miksi bitit ovat tärkeitä
Bittioperaatiot ovat lippujen, käyttöoikeuksien, laitteistorekisterien ja tiiviin datan perusta. Niiden avulla voitte tallentaa monta tosi tai epätosi -vastausta yhteen lukuun.
Pikatarkistus
Haluatte bitin olevan asetettuna vain, kun kaksi syötettä eroavat toisistaan. Mikä operaattori?
Kertaus: bittien hallinta
Osaatte nyt käyttää operaattoreita &, |, ^, ~ sekä siirtoja << ja >> bittien lukemiseen, asettamiseen, tyhjentämiseen ja siirtämiseen täysin hallitusti. ⚙️
Opi Zig tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 30
- Oppitunnit
- 120
Usein kysytyt kysymykset
Onko oppitunti ”Bittioperaattorit” ilmainen?
Kyllä – oppitunnin ”Bittioperaattorit” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Zig Academy-kurssin, päivitä CoddyKit PROhon. Zig Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Bittioperaattorit”?
AND, OR, XOR, NOT ja siirrot. Harjoittelet Zig Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Zig Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Zig Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”Bittioperaattorit”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Zig Academy-oppitunnilla?
Kyllä. Jokainen Zig Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Aritmeettiset ja vertailuoperaattorit
- Ylivuoto: +, +% ja +|
- Bittioperaattorit
- Boolen logiikka ja oikosulkuarviointi