Hjem Personlig finansiering Basics of Binary til C Programmering - dummies

Basics of Binary til C Programmering - dummies

Indholdsfortegnelse:

Video: C Programming Tutorial for Beginners 2025

Video: C Programming Tutorial for Beginners 2025
Anonim

Du behøver ikke at programmere nogen digital enhed ved at skrive lavt niveau kode, flip switches eller lodning ledninger. Det skyldes, at dagens C-programmering sker på et højere niveau. Men stadig, dybt inde i maskinen fortsætter den type lavniveaukodning. Du er kun isoleret fra den primordiske suppe af dem og nuller, hvorfra alt software stiger.

Indledning til binære

De binære cifre eller bits er 1 og 0. Alene er de svage; men i grupper måler de stor magt. Digitalt lager bruger disse bits i grupper.

Binære grupperinger

Term C Variabel Bits Værdiinterval Uden signeret Værdiområde Signeret
Bit _Bool 1 > 0 til 1 0 til 1 Byte
char 8 0 til 255 -128 til 127 Word
kort int 16 > 0 til 65, 535 -32, 768 til 32, 767 Lang lang int
32 0 til 4, 294, 967, 295 -2, 147, 483, 648 til 2, 147, 483, 647
Fordelen ved at gruppere bits i byte, ord og så videre er, at det gør dem nemmere at håndtere. Processoren kan bedre håndtere information i klumper. Hvordan klumper får deres værdier er baseret på kræfter på 2.
Beføjelser til 2

Ekspression

Decimal værdi

Binær værdi 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
Du kan se rækkevidden af ​​værdier, der kan gemmes i 8 bit eller 1 byte. Det er det samme område, du vil finde i en C-sprog char variabel. Faktisk, hvis du samlede Kolonne 2, får du 255, hvilket er antallet af bits i en byte.
Faktisk finder du 256 mulige værdier for en byte, som omfatter all-nul permutationen. Det er også en værdi. Nedenfor vises, hvordan styrken af ​​2 kort til binær opbevaring. Ligesom decimaler i en base øges antallet af 10-værdier med 10-biters bit i et binært tal med 2 styrke, læsning fra højre til venstre.
Hver bit, der er angivet eller har værdien 1, repræsenterer en effekt på to: 2

5, 2

3

, 2 1 og 2 < 0 . Når du multiplicerer disse værdier med deres decimale modparter og derefter samlede dem op, får du decimaltallet af binær 00101011, hvilket er 43. Det er alt godt og godt, men husk ikke at huske det! Gør dig ikke bekymret over at oversætte binære til decimaltalværdier; computeren gør det job for dig hele tiden. Faktisk ser computeren kun binær og viser derefter decimaltal som et høflighed for dine menneskelige øjenbuer.Men når du manipulerer binære værdier, hjælper det med at vide, hvad der foregår. Ændring af en bits værdi til 1 betegnes som indstilling af bit. Ændring af en bits værdi til 0 betegnes som

nulstiller en smule.

  • Sådan vises binære værdier

  • For at gøre det bedst for C-sprogets binære manipulationsoperatorer, hjælper det med at se et binært tal i aktion. Funktionen printf () mangler et binært konverterings tegn, og C-biblioteket er ikke vært for en binær udgangsfunktion. Nej, for at se et binært tal skal du lave din egen funktion. Funktionen

  • binbin () viser en binær udgangsfunktion kaldet binbin (). Funktionen binbin (), i linje 15 i funktionen

binbin ()

, slukker en int-værdi. Dens output er en streng, der repræsenterer den int-værdi i binære cifre.

THE BINBIN () FUNKTION # inkluderer char * binbin (int n); int main () {int input; printf ("Skriv en værdi 0 til 255:"); scanf ("% d", & input); printf ("% d er binær% sn", input, binbin (input)); returnere (0);} char * binbin (int n) {static char bin [9]; int x; for (x = 0; x <8; x ++) {bin [x] = n & 0x80? '1': '0'; n << = 1;} bin [x] = "; return (bin);} Generelt forekommer indholdet af binbin () -funktionen ret mystisk. Det er okay.

Øvelse 1 : Indtast kildekoden fra

binbin ()

Funktionen til et nyt projekt. Bygg og kør det et par gange for at se, hvordan helt tal vises som binære tal.

Som skrevet i binbin () Funktionen binbin () viser kun 8 bits data, selvom int variabeltypen typisk gemmer mange flere bits. Øvelse 2:

Ændre binbin () -funktionen fra < binbin () Funktion, så den viser 16 bit af intværdien. (Teknisk er 16 bits en kort int.) For at gøre det skal du ændre disse elementer: Linje 9: Ændre teksten, så 65535 er angivet i stedet for 255.

Linje 17: Ændr størrelsen af ​​arrayet til 17 for at tegne 16 tegn i udgangen plus (null tegn) i slutningen af ​​strengen. Linie 20: Indstil den øjeblikkelige værdi 8 i koden til 16 for at tegne alle 16 tegn i udgangen. Linje 22: Udskift værdien 0x80 med 0x8000. Denne ændring gør bitfeltet større. Build Exercise 2. Kør det et par gange for at se, hvordan bitfeltet ser ud til større værdier.

Basics of Binary til C Programmering - dummies

Valg af editor

Microsoft Project 2010 Genvejstaster - dummies

Microsoft Project 2010 Genvejstaster - dummies

Microsoft Project 2010 maksimerer effektiviteten, når du administrerer projekter - men også genvejstaster i Project 2010 din tid på tastaturet: Her er nogle genvejstaster, du vil bruge hele tiden, når du bygger og arbejder med en projektplan. Indtastning af tastetryk Indsæt Indsætter ny opgave Ctrl + K Indsætter hyperlink F7 Starter stavekontrol Alt + F10 Tildeler ressourcer ...

Hvordan man ændrer gridlines i Project 2016 - dummies

Hvordan man ændrer gridlines i Project 2016 - dummies

Flere visninger i Project 2016 inkluderer gridlines for at angive visse elementer, f.eks. en pause mellem uger eller status dato (det vil sige den dato, hvor der er sporet fremskridt på et projekt). Disse linjer hjælper en person med at læse planen for at skelne mellem tidsintervaller eller brud på information; For eksempel kan netlinjer være ...

Projekt 2016 AutoFilter-funktion - dummier

Projekt 2016 AutoFilter-funktion - dummier

Projekt 2016 AutoFilter-funktionen er som standard tændt for alle nye tidsplanfiler. Pile vises i kolonneoverskrifterne i det viste ark. Når du klikker på pilen i kolonnen Ressourcenavne, er navnet på hver ressource, der er tildelt opgaver i projektet, angivet i alfabetisk rækkefølge sammen med ...

Valg af editor

Netværksadministration: Windows Command Omdirigering og piping - dummies

Netværksadministration: Windows Command Omdirigering og piping - dummies

Omdirigering og piping af Windows-kommandoer er relaterede teknikker. Omdirigering giver dig mulighed for at angive en alternativ destination for output, der vil blive vist med en kommando eller en alternativ kilde til input, der skal indtastes i en kommando. Du kan f.eks. Gemme resultaterne af en kommando ipconfig / all til en fil ved navn myconfig. txt ...

Netværksadministration: VPN Security - dummies

Netværksadministration: VPN Security - dummies

Udtrykket tunnel er nogle gange brugt til at beskrive en VPN, fordi VPN'en skaber en sikker tunnel mellem to steder, som kun kan indtastes fra begge ender. De data, der bevæger sig gennem tunnelen fra den ene ende til den anden, er sikre, så længe det er inden for tunnelen - det vil sige inden for ...

Netværksadministration: Windows Miljøvariabler - dummies

Netværksadministration: Windows Miljøvariabler - dummies

Windows-kommandoskallen giver flere miljøvariabler til kommandoer. Miljøvariabler begynder og slutter med procent tegn. Du kan bruge en miljøvariabel overalt i en kommando. For eksempel viser C:> echo% OS%, der kører på% PROCESSOR_IDENTIFIER% en linje som denne: Windows_NT kører på en x86 Familie 15 Model 2 Stepping 8, ...

Valg af editor

Sådan bruger du arv i PHP med objektorienteret programmering - dummier

Sådan bruger du arv i PHP med objektorienteret programmering - dummier

Objektorienteret programmering i PHP har en anden funktion, der gør det meget nyttigt til store projekter. Mange objekter er relateret til hinanden, og du kan bruge et familietræforhold til at forenkle din programmering. Hvordan man bygger en critter baseret på en anden critter Der er en ny critter i byen. Denne har den samme grundlæggende ...

Sådan bruges PHP til at lave en switch til HTML5 og CSS3 Programmering - dummies

Sådan bruges PHP til at lave en switch til HTML5 og CSS3 Programmering - dummies

Du kører ofte over en situation i HTML5 og CSS3 programmering, hvor du har et udtryk, der kan have mange mulige værdier. Du kan altid bruge strukturen til at klare denne situation, men PHP leverer en anden interessant mulighed. Koden til dette program anvender omskifterstrukturen. Tag et kig på, hvordan det er gjort: