Innholdsfortegnelse:
Video: Quantum Computers Explained – Limits of Human Technology 2025
Heldigvis behøver du ikke programmere en hvilken som helst digital enhet ved å skrive lavt nivå kode, vende brytere eller lodding ledninger. Det er fordi dagens C-programmering skjer på et høyere nivå. Men fortsatt, dypt inne i maskinen, fortsetter den typen av lavnivåkoding. Du er bare isolert fra den primordiske suppen av de og nuller fra hvilken all programvare stiger.
Introduksjon til binær
De binære tallene, eller bits , er 1 og 0. Alene er de svake; men i grupper måler de stor makt. Digital lagring bruker disse bitene i grupper.
Term | C Variabel | Biter | Verdiområde Utilegnet | Verdiområde Signert |
---|---|---|---|---|
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 med å gruppere biter i byte, ord og så videre er at det gjør dem enklere å håndtere. Prosessoren kan bedre håndtere informasjon i biter. Hvordan biter får sine verdier er basert på krefter på 2. |
Ekspresjon
Binær verdi | 2 | 0 |
---|---|---|
1 1 > 2 | 1 | 2 |
10 2 | 2 | 4 |
100 2 | 3 | 8 |
1000 2 | 4 | 16 |
10000 2 | 5 | 32 |
100 000 2 | 6 | 64 |
1000000 2 > 7 | 128 | 10000000 |
|
Faktisk finner du 256 mulige verdier for en byte, som inkluderer all-null-permutasjonen. Det er også en verdi. | Nedenfor vises hvordan styrken til 2 kart i binær lagring. Akkurat som desimaler i en base øker 10-tallet med 10 krafter, biter i et binært tall med 2 styrke, leser fra høyre til venstre. |
5, 2
3
, 2 1 og 2 < 0 . Når du multipliserer disse verdiene ved deres desimale motparter og så totaler dem opp, får du desimalrepresentasjonen av binær 00101011, som er 43. Det er alt bra og bra, men vær så snill å husk det! Ikke bekymre deg for å oversette binær til desimalverdier; datamaskinen gjør den jobben for deg hele tiden. Faktisk ser datamaskinen bare binær og viser deretter desimaltall som en høflighet for dine menneskelige øye.Men når du manipulerer binære verdier, hjelper det å vite hva som skjer. Endre bitens verdi til 1 refereres til som innstilling av bit. Endre litt verdi til 0 er referert til som
tilbakestille litt.
-
Slik viser du binære verdier
-
For å få best mulig forståelse for C-språkets binære manipulasjonsoperatører, hjelper det å se et binært nummer i aksjon. Funksjonen printf () mangler et binært konverteringskarakter, og C-biblioteket er ikke vert for en binærutgangsfunksjon. Nei, for å se et binært tall må du lage din egen funksjon. Funksjonen
-
binbin () presenterer en binærutgangsfunksjon kalt binbin (). Funksjonen binbin (), på linje 15 i funksjonen
binbin ()
, svelger en int-verdi. Dens utgang er en streng som representerer den int-verdien i binære sifre.
THE BINBIN () FUNKSJON #include char * binbin (int n); int main () {int input; printf ("Skriv inn en verdi 0 til 255:"); scanf ("% d", & input); printf ("% d er binær% sn", input, binbin (input)); returnere (0);} char * binbin (int n) {statisk karbon [9]; int x; for (x = 0; x <8; x ++) {bin [x] = n & 0x80? '1': '0'; n << = 1;} bin [x] = "; return (bin);} Generelt ser innholdet i binbin () -funksjonen seg ut som en mystisk. Det er greit.
Øvelse 1 : Skriv kildekoden fra
binbin ()
Funksjonen til et nytt prosjekt. Bygg og kjør det et par ganger for å se hvordan heltall vises som binære tall.
Som skrevet i binbin () Funksjonen binbin () viser bare 8 biter data, men int variabel typen lagrer vanligvis mange flere biter. Trening 2:
Endre binbin () -funksjonen fra < binbin () Funksjon slik at den viser 16 biter av int-verdien. (Vel, teknisk, 16 biter er kort int.) For å gjøre det, må du endre disse elementene: Linje 9: Endre teksten slik at 65535 er spesifisert i stedet for 255.
Linje 17: Endre størrelsen på arrayet til 17 for å tegne 16 tegn i utgangen pluss (null tegn) på slutten av strengen. Linje 20: Juster den umiddelbare verdien 8 i koden til 16 for å tegne alle 16 tegn inn utgangen. Linje 22: Erstatt verdien 0x80 med 0x8000. Denne endringen gjør bitfeltet større. Build Exercise 2. Kjør det et par ganger for å se hvordan bitfeltet ser ut til større verdier.
