Huis Persoonlijke financiën Basisbegrippen van binair voor C-programmering - dummies

Basisbegrippen van binair voor C-programmering - dummies

Inhoudsopgave:

Video: Binair Rekenen - Vermenigvuldigen 2024

Video: Binair Rekenen - Vermenigvuldigen 2024
Anonim

Gelukkig hoef je geen digitaal apparaat te programmeren door low-level code, flipping-schakelaars of soldeerdraden. Dat komt omdat de C-programmering van vandaag op een hoger niveau plaatsvindt. Maar toch, diep in de machine, gaat dat type low-level codering door. Je bent gewoon geïsoleerd van de oersoep van enen en nullen waaruit alle software opstijgt.

Inleiding tot binair

De binaire cijfers of bits zijn 1 en 0. Alleen zijn ze zwak; maar in groepen verzamelen ze grote macht. Digitale opslag gebruikt deze bits in groepen.

Binaire groeperingen

Term C-variabele Bits Waardebereik niet ondertekend Waardebereik ondertekend
Bit _Bool 1 > 0 tot 1 0 tot 1 Byte
tekens 8 0 tot 255 -128 tot 127 woorden
korte int 16 > 0 tot 65, 535 -32, 768 tot 32, 767 Lang lang int
32 0 tot 4, 294, 967, 295 -2, 147, 483, 648 tot 2, 147, 483, 647
Het voordeel van het groeperen van bits in bytes, woorden, enzovoort, is dat ze gemakkelijker te gebruiken zijn. De processor kan beter informatie in brokken verwerken. Hoe brokken hun waarden krijgen, is gebaseerd op de macht van 2.
Bevoegdheden van 2

Expressie

Decimale waarde

Binaire waarde 2 0
1 1 > 2 1 2
10 2 2 4
100 2 3 8
1000 2 4 16
10000 2 5 32
100000 2 6 64
1000000 2 > 7 128 10000000
U ziet het bereik van waarden dat kan worden opgeslagen in 8 bits of 1 byte. Het is hetzelfde bereik dat u zou vinden in een C-taal char variable. Inderdaad, als u Kolom 2 totaliseert, krijgt u 255, het aantal bits in een byte.
In feite vindt u 256 mogelijke waarden voor een byte, die de all-zero permutatie omvat. Dat is ook een waarde. Hieronder ziet u hoe de bevoegdheden van 2 worden toegewezen aan binaire opslag. Net zoals decimalen in een base 10-getal toenemen met machten van 10, nemen bits in een binair getal toe met machten van 2, waarbij van rechts naar links wordt gelezen.
Elke bit die is ingesteld of de waarde 1 heeft, vertegenwoordigt een macht van twee: 2

5, 2

3

, 2 1 , en 2 < 0 . Wanneer u deze waarden vermenigvuldigt met hun decimale tegenhangers en ze vervolgens optelt, krijgt u de decimale weergave van binair 00101011, dat is 43. Dat is allemaal goed en wel, maar onthoud het alsjeblieft niet! Maak uzelf geen zorgen over het vertalen van binaire naar decimale waarden; de computer doet die klus altijd voor je. Inderdaad, de computer ziet alleen binair en toont vervolgens decimale getallen als een beleefdheid voor uw menselijke oogbollen.Maar als u binaire waarden manipuleert, helpt het om te weten wat er aan de hand is. Als u de waarde van een bit naar 1 wijzigt, wordt de bit genoemd. Het wijzigen van de waarde van een bit in 0 wordt aangeduid als waarbij een beetje wordt gereset.

Binaire waarden weergeven

  • Om de binaire bewerkingsexploitanten van de C-taal zo goed mogelijk te begrijpen, helpt het om een ​​binair getal in actie te zien. De functie printf () mist een binair conversieteken en de C-bibliotheek host geen binaire uitvoerfunctie. Nee, om een ​​binair getal te bekijken, moet je je eigen functie maken.

  • De binbin () functie presenteert een binaire uitvoerfunctie genaamd binbin (). De binbin () -functie, op regel 15 in De binbin ()

  • Functie, slikt een int-waarde in. De uitvoer is een tekenreeks die die int-waarde in binaire cijfers vertegenwoordigt. DE

BINBIN ()

FUNCTION

# include char * binbin (int n); int main () {int input; printf ("Typ een waarde van 0 tot 255:"); scanf ("% d", & invoer); printf ("% d is binair% sn", invoer, binbin (invoer)); return (0);} char * binbin (int n) {statische char bin [9]; int x; for (x = 0; x <8; x ++) {bin [x] = n & 0x80? '1': '0'; n << = 1;} bin [x] = "; return (bin);} Over het algemeen lijkt de inhoud van de binbin () -functie nogal mysterieus. Dat is oke. Oefening 1 : Typ de broncode uit de binbin ()

-functie van in een nieuw project.Bouw en voer het een paar keer uit om te zien hoe gehele getallen als binaire getallen worden weergegeven. Zoals beschreven in The

binbin ()

Functie binbin () geeft slechts 8 bits aan gegevens weer, hoewel het type int variabele meestal veel meer bits opslaat.

Oefening 2: Wijzig de functie binbin () van < binbin () Functie zodat 16 bits van de int-waarde worden weergegeven. (Nou, technisch gezien is 16 bits een korte int.) Hiervoor moet u deze items wijzigen: Regel 9: Wijzig de tekst zodat 65535 wordt opgegeven in plaats van 255. <17> Lijn 17: wijzig de grootte van de array in 17 om rekening te houden met 16 tekens in de uitvoer plus het (nul-teken) aan het einde van de reeks.

Regel 20: Pas de directe waarde 8 in de code aan naar 16 om alle 16 tekens in te verwerken het resultaat. Regel 22: vervang de waarde 0x80 door 0x8000. Deze wijziging maakt het bitveld groter. Bouw Oefening 2. Voer een paar keer uit om te zien hoe het bitveld eruit ziet voor grotere waarden.

Basisbegrippen van binair voor C-programmering - dummies

Bewerkers keuze

Tien Helpbronnen voor Junos OS - dummies

Tien Helpbronnen voor Junos OS - dummies

Dit is een top-tien lijst met bronnen die u moet zoeken meer informatie over softwarebewerkingen, training en ondersteuning voor Junos - alle extra details die u mogelijk nodig heeft om Junos OS te kunnen configureren en bedienen in uw eigen netwerkimplementaties. CLI Help-commando's Bent u op zoek naar meer achtergrondinformatie over hoe een bepaalde functie ...

De functie van de drie vlakken van Junos netwerk OS - dummies

De functie van de drie vlakken van Junos netwerk OS - dummies

De architectuur van de Junos opererende systeem verdeelt de functies van besturing, services en doorsturen op verschillende niveaus. Elk van de vlakken van Junos OS biedt een kritieke set van functionaliteit in de werking van het netwerk. Besturingsvlak van het Junos-netwerkbesturingssysteem (NOS) Alle functies van het besturingsvlak lopen op ...

De basisprincipes van BGP-routebealing - dummy's

De basisprincipes van BGP-routebealing - dummy's

Het configureren van Border Gateway Protocol (BGP) kan nogal lastig zijn, vooral met grote aantallen peersessies die handmatig moeten worden geconfigureerd. In feite kan in een groot netwerk de full-mesh-vereiste voor IBGP een provisioning-nachtmerrie zijn. BGP's antwoord op de IBGP-paring-configuratie-nachtmerrie die het volledige maaswerk is, wordt routeberefening genoemd. Route ...

Bewerkers keuze

Noodzakelijke elementen voor SEO om hoge trefwoorden te krijgen - dummies

Noodzakelijke elementen voor SEO om hoge trefwoorden te krijgen - dummies

Als de allerbeste locatie op het web staat op de pagina een van de zoekmachines, je moet de SEO-elementen kennen die je daar kunnen brengen. Een goede plek om te beginnen is met zoekwoorden. Zoekmachines gebruiken geavanceerde processen om zoekwoordgebruik en andere factoren te categoriseren en analyseren om erachter te komen ...

Persberichten als bron van SEO-inhoud - dummies

Persberichten als bron van SEO-inhoud - dummies

Het leuke aan persberichten is dat u ze zonder toestemming op uw website kunt gebruiken, en sommige zullen al voor de zoekmachine zijn geoptimaliseerd. Het doel van een persbericht is om het uit te sturen en te zien wie het ophaalt. U hoeft geen contact op te nemen met de eigenaar van het persbericht, omdat ...

Kies een domeinnaam die geoptimaliseerd is voor zoekmachines - dummies

Kies een domeinnaam die geoptimaliseerd is voor zoekmachines - dummies

Zelfs de domeinnaam van uw site moet geoptimaliseerd voor zoekmachines. Zoekmachines lezen uniforme resource locators (URL's), op zoek naar sleutelwoorden erin. Bijvoorbeeld als u een website heeft met de domeinnaam knaagdierracen. com en iemand zoekt Google op knaagdierenraces, Google ziet rodent-racing als een wedstrijd; omdat er een streepje verschijnt tussen de twee ...

Bewerkers keuze

Praxis Elementair onderwijs Examen-Economie - dummies

Praxis Elementair onderwijs Examen-Economie - dummies

U zult enkele basisconcepten van de economie voor de Praxis moeten kennen Elementair onderwijs examen. Elementaire economie onderzoekt de wens voor, de productie van en de verkoop en het gebruik van geld, zowel lokaal als wereldwijd. Het onderwijzen van economie omvat concepten zoals behoeften versus behoeften, kosten en meer tot nadenken stemmende onderwerpen, zoals de volgende: ...

Praxis Elementair onderwijs voor Dummy's Cheat Sheet - dummies

Praxis Elementair onderwijs voor Dummy's Cheat Sheet - dummies

Het Praxis basisonderwijs: Curriculum, instructie en beoordeling examen (5017) bestrijkt een breed scala van wat u moet weten over basisonderwijs. Als u het Praxis Elementary Education: Content Knowledge-examen (5018) neemt, moet u zich ervan bewust zijn dat het de dekking beperkt tot de inhoud van de vier hoofdonderwerpen die een elementaire leraar is ...

Praxis Core For Dummies Cheat Sheet - dummies

Praxis Core For Dummies Cheat Sheet - dummies

Voordat je te opgewonden raakt, begrijp dat de informatie die volgt niet klopt eigenlijk niet over het bedriegen van de Praxis. Het gaat echt meer om de meest efficiënte manieren om je voor te bereiden op het examen. Maar "voorbereidingsblad" heeft niet helemaal dezelfde reden. Trouwens, vals spelen is niet nodig als je weet wat je aan het doen bent, en ...