Het korte antwoord
Binair is grondtal 2: elk cijfer (bit) is 0 of 1, en elke positie vertegenwoordigt een macht van twee. 1010 in binair getal is gelijk aan 1×8 + 0×4 + 1×2 + 0×1 = 10 in decimaal getal. Deze rekenmachine verwerkt binaire rekenkunde, bitsgewijze logica (AND, OR, XOR, NOT), bitverschuivingen en onmiddellijke conversie naar decimaal, hex en octaal.
Belangrijkste afhaalrestaurants
- Waarden zijn beperkt tot het bereik van 32-bits gehele getallen met teken (-2.147.483.648 tot 2.147.483.647). Binaire tekenreeksen buiten dat bereik worden afgewezen in plaats van stilletjes afgekapt.
- Bitsgewijs AND/OR/XOR vergelijken getallen bit voor bit en zijn niet hetzelfde als rekenkundige optelling of vermenigvuldiging: 1010 AND 0110 is gelijk aan 0010, niet 16.
- Een verschuiving naar links met n komt overeen met vermenigvuldigen met 2ⁿ; een verschuiving naar rechts door n is gelijk aan een gehele (vloer) deling door 2ⁿ.
- Elk hexadecimaal cijfer verwijst naar precies 4 binaire bits, waardoor de conversie van hexadecimaal naar binair mechanisch wordt zodra u de 16 patronen van vier bits kent.
Hoe binaire plaatswaarde werkt
Net zoals de decimale plaatswaarde machten van tien gebruikt, gebruikt binaire plaatswaarde machten van twee. Het 8-bits getal 10110101 van rechts naar links lezen:
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
|---|---|---|---|---|---|---|---|
| 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 |
Tel de positiewaarden op waar een 1 staat: 128 + 32 + 16 + 4 + 1 = 181. Dus binair 10110101 is gelijk aan decimaal 181.
Bitsgewijze bewerkingen versus rekenkundige bewerkingen
| Operatie | Wat het doet | Voorbeeld |
|---|---|---|
| AND (&) | Alleen 1 als beide bits 1 zijn | 1010 & 0110 = 0010 |
| OR (|) | 1 waarbij elk bit 1 is | 1010 | 0110 = 1110 |
| XOR (^) | 1 waar de bits verschillen | 1010 ^ 0110 = 1100 |
| Links verschuiven (<<) | Bits naar links verschuiven, vullen met 0 (×2ⁿ) | 0011 << 2 = 1100 |
| Rechterverschuiving (>>) | Verschuivingsbits naar rechts (÷2ⁿ, naar beneden afgerond) | 1100 >> 2 = 0011 |
Bitsgewijze bewerkingen vergelijken of verschuiven individuele bits - ze worden niet tussen posities overgedragen zoals optelling dat doet, en daarom komen 1010 EN 0110 op 0010 terecht in plaats van op iets dat op een som lijkt.
Veelgemaakte fouten die u moet vermijden
- Door EN/OF bitsgewijze te behandelen alsof het een rekenkundige optelling of vermenigvuldiging is, werken ze stukje bij beetje zonder dat er iets mee hoeft te worden gedaan.
- Het vergeten van de 32-bit ondertekende bereiklimiet: een binaire reeks van meer dan 31 enen zal het ondersteunde bereik overschrijden en een fout retourneren.
- Verwachten dat bitsgewijze de afgedrukte cijfers NIET zomaar worden omgedraaid - in de twee-complementrepresentatie levert het NIET-aangeven van een positief getal een negatief getal op, en niet een eenvoudige omkering van cijfers.
- Ervan uitgaande dat de rondes naar rechts verschuiven, wordt deze afgekapt (vloeren) in de richting van negatief oneindig voor negatieve getallen, dus 7 >> 1 = 3, niet 3,5 of 4.
Gerelateerde rekenmachines
- Hex-rekenmachine — werk rechtstreeks in hexadecimaal met dezelfde conversies en bewerkingen.
- Exponent rekenmachine — controleer de machten van twee achter elke bitpositie en -verschuiving.
- Rekenmachine voor grote getallen — ga verder dan het 32-bits bereik met rekenkunde met willekeurige precisie.
- Wetenschappelijke rekenmachine — omgaan met algemene wiskunde die verder gaat dan conversies op basis van getallen.