Hjem Personlig finansiering Ekspres binære tal i C ++-dummier

Ekspres binære tal i C ++-dummier

Indholdsfortegnelse:

Video: How to Make a Binary Converter in Visual Basic 2008 or 2010 2025

Video: How to Make a Binary Converter in Visual Basic 2008 or 2010 2025
Anonim

C ++-variabler lagres internt som såkaldte binære tal. Binære tal lagres som en sekvens af 1 og 0 værdier kendt som bits. For det meste behøver du ikke virkelig at håndtere hvilke bestemte bits du bruger til at repræsentere tal. Nogle gange er det imidlertid praktisk og praktisk at tinker med tal på bitniveauet - så C ++ giver et sæt operatører til det formål.

De såkaldte bitwise logiske operatorer opererer på deres argumenter på bitniveauet. For at forstå, hvordan de virker, skal du først undersøge, hvordan computere gemmer variabler.

Decimaltalsystemet

De tal, du har været bekendt med fra det tidspunkt du først kunne regne med fingrene, kaldes decimaler , fordi de er baseret på nummer 10. Generelt viser programmereren C ++-variabler som decimaltal. Således kan du angive værdien af ​​var som (sige) 123, men overvej konsekvenserne.

Et tal som 123 henviser til 1 * 100 + 2 * 10 + 3 * 1. Alle disse basisnumre - 100, 10 og 1 - er magt på 10.

123 = 1 * 100 + 2 * 10 + 3 * 1

Udtrykt på en lidt anderledes (men tilsvarende) måde, 123 ser sådan ud:

123 = 1 * 10 < 2 + 2 * 10 1 + 3 * 10 0 Husk at

nogen nummer til nulkraft er 1. Andre talesystemer

Nå, okay, ved at bruge 10 som basis (eller

base ) af vores tælle system stammer sandsynligvis fra de 10 menneskelige fingre, de oprindelige tælleværktøjer. En alternativ base for et telesystem kunne lige så nemt være 20.

Hvis vores nummereringsskema var blevet opfundet af hunde, kunne det godt være baseret på 8 (et ciffer i hver pot er ude af syne på benets bagside). Matematisk ville et sådant

oktal system have fungeret lige så godt: 123

10 = 1 * 8 2 + 7 * 8 1 < + 3 * 8 0 = 173 8 De små 10 og 8 henviser her til nummereringssystemet, 10 for decimal (base 10) og 8 for oktal (base 8). Et tælle system kan bruge en hvilken som helst positiv base. Det binære talesystem

Computere har stort set to fingre. Computere foretrækker at tælle ved hjælp af base 2. Nummeret 123

10

vil blive udtrykt på denne måde: 123 10

= 0 * 2 7 + 1 * 2 < 6 + 1 * 2 5 + 1 * 2 4 + 1 * 2 3 + 0 * 2 2 + 1 * 2 1 + 1 * 2 0 123 10 = 0 * 128 + 1 * 64 + 1 * 32 + 1 * 16 + 1 * 8 + 0 * 4 + 1 * 2 + 1 * 1 = 01111011 2 Computerkonventionen udtrykker binære tal ved at bruge 4, 8, 16, 32 eller endda 64 binære cifre, selvom de førende cifre er 0.Dette er også på grund af den måde, hvorpå computere er bygget internt. Eftersom udtrykket ciffer

refererer til et multiplum af 10, a

binært tal kaldes en bit (en forkortelse af binært tal >). En byte består af 8 bits. (At kalde et binært tal a byte-it virket ikke som en god ide.) Hukommelsen måles som regel i bytes (som ruller måles i enheder af bagerens dusin). Med en sådan lille base skal du bruge et stort antal bits til at udtrykke tal. Mennesker vil ikke have besværet med at bruge et udtryk som 011110112 for at udtrykke en sådan dagligdags værdi som 123 10

. Programmører foretrækker at udtrykke tal ved at bruge et lige antal bits. Det oktale system - der er baseret på 3 bits - var det standard binære system i de tidlige dage af C. Vi ser en vestige af dette selv i dag - en konstant der begynder med en 0 antages at være oktal i C ++. Således linjen: cout << "0173 =" << 0173 << endl; producerer følgende output: 0173 = 123

Imidlertid er oktal næsten fuldstændig erstattet af

hexadecimal

-systemet, der er baseret på 4-bit cifre.

Hexadecimal bruger de samme tal for tallene 0 til 9. For cifrene mellem 9 og 16 anvender hexadecimal de første seks bogstaver i alfabetet: A for 10, B for 11 og så videre. Således bliver 123

10 7B 16

som denne: 123 = 7 * 16 1 + B (dvs. 11) * 16 0

= 7B 16 Programmerne foretrækker at udtrykke hexadecimale tal i multipler med 4 hexadecimale cifre, selvom det førende tal i hvert tilfælde er 0. Endelig, hvem ønsker at udtrykke et hexadecimalt tal som 7B 16 ved at bruge et abonnement? Terminaler giver ikke engang

support

abonnementer. Selv på et tekstbehandlingsprogram er det en træk at ændre skrifttyper til og fra abonnenttilstand bare for at skrive to elendige cifre. Derfor bruger programmører (ingen idioter) de konventionen til at starte et hexadecimalt tal med en 0x. Således bliver 7B 0x7B. Ved hjælp af denne konvention er det hexadecimale tal 0x7B lig med 123 decimaler, mens 0x123 hexadecimalt er lig med 291 decimalt. Kodestykket cout << "0x7B =" << 0x7B << endl; cout << "0x123 =" << 0x123 << endl; producerer følgende output: 0x7B = 123 0x123 = 291

Du kan bruge alle de matematiske operatører på hexadecimale tal på samme måde som du vil anvende dem til decimaltal.

Hvis du virkelig vil, kan du skrive binære tal i C ++ '14 ved hjælp af præfikset '0b'. Således bliver 123 0b01111011.
Ekspres binære tal i C ++-dummier

Valg af editor

10 Transaktioner og funktioner, som de fleste oplysninger konverterer til i QuickBooks Online - dummies

10 Transaktioner og funktioner, som de fleste oplysninger konverterer til i QuickBooks Online - dummies

Følgende listen indeholder detaljer om transaktioner og funktioner, som de fleste data konverterer og sammenlignelige transaktioner og funktioner findes i QuickBooks Online (QBO). I nogle tilfælde findes undtagelser; Du finder specifikke noter i web-ekstraartikel & ldquo; Hvordan QuickBooks Desktop Lister Konverter til QuickBooks Online. & Rdquo; Og for flere oplysninger, besøg QuickBooks ofte stillede spørgsmål, og ldquo; Hvorfor ...

Der producerer betalingsopgørelser i MYOB-dummies

Der producerer betalingsopgørelser i MYOB-dummies

I slutningen af ​​hvert lønningsår (som slutter den 30. juni) kan bruge MYOB til at levere hver medarbejder med et betalingsoversigt. Et betalingsopsamling er et kort dokument, der opsummerer de bruttolønninger, skat og godtgørelser, som medarbejderen har modtaget i løbet af de sidste 12 måneder af ansættelsen. Opsætning af betalingsoversigter Til ...

15 Funktioner, der ikke konverteres og findes ikke i QuickBooks Online

15 Funktioner, der ikke konverteres og findes ikke i QuickBooks Online

Følgende oplysninger viser transaktioner og funktioner, som ikke konverteres fra desktop QuickBooks til QuickBooks Online (QBO) og heller ikke har nogen sammenlignelig funktion i QBO. Selv om en eller flere af disse transaktioner eller funktioner kan være afbrudte afbrydere, skal du huske at for mange af disse funktioner kan du bruge løsninger. Typen af ​​data eller funktional noter ...

Valg af editor

Sådan bruger du FREQUENCY-funktionen i Excel - dummier

Sådan bruger du FREQUENCY-funktionen i Excel - dummier

FREQUENCY-funktionen i Excel tæller værdierne i en array der falder inden for en rækkevidde eller bin. Funktionen bruger følgende syntaks: = FREQUENCY (data_array, bins_array) hvor data_array er det regnearkområde, der indeholder de værdier, du vil tælle, og bins_array er et regnearkområde, der identificerer værdierne eller bakkerne, der ...

Hvordan man bruger målsøgningsfunktionen i Excel 2013 - dummies

Hvordan man bruger målsøgningsfunktionen i Excel 2013 - dummies

, Når du skal analysere , bruger du Excel 2013s målsøgningsfunktion til at finde de indgangsværdier, der er nødvendige for at opnå det ønskede mål. Nogle gange, når du gør hvad-hvis analyse, har du et bestemt udgangspunkt i tankerne, såsom et mål salgsmængde eller vækstprocent. Hvis du vil bruge funktionen Målsøgning placeret på What-If ...

Hvordan man vælger Excel CHOOSE-funktionen i datamodeller - dummier

Hvordan man vælger Excel CHOOSE-funktionen i datamodeller - dummier

Selvom valgmuligheden måske ikke Se nyttige på overfladen, denne funktion kan dramatisk forbedre dine Excel-datamodeller. VÆLG-funktionen returnerer en værdi fra en bestemt liste over værdier baseret på et angivet positionsnummer. Hvis du f.eks. Indtaster formlerne VÆLG (3, "Rød", "Gul", "Grøn", "Blå") i en celle, returnerer Excel ...

Valg af editor

Indlæs en Workflow i SharePoint 2010 - dummies

Indlæs en Workflow i SharePoint 2010 - dummies

Konfigurere dit bibliotek til at bruge en workflow i SharePoint 2010 løser kun en del af problemet. Hvis du ikke har dit bibliotek konfigureret til at kick-off automatisk, skal en person manuelt starte workflowen. Start manuelt en arbejdsgang ved at følge disse trin: Gennemse det element, du vil godkende, klik på rullelisten og vælg Workflows. ...

Bibliotek / Liste Generelle indstillinger Område i SharePoint 2010 - dummies

Bibliotek / Liste Generelle indstillinger Område i SharePoint 2010 - dummies

Bibliotekets generelle indstillinger / listen er blevet udvidet i SharePoint 2010 til at omfatte flere nye indstillinger, herunder validering, kolonne standardværdi (for biblioteker), vurdering, metadata navigation, visningsvisning og formular (for lister). Her er et overblik for at se, hvad du kan gøre med hver af disse muligheder. Generelle indstillinger Konfigurationsindstillinger Indstillingsnavn ...

Importer et regneark som en liste i SharePoint 2010 - dummies

Importer et regneark som en liste i SharePoint 2010 - dummies

Har allerede data i et regneark, som du Vil du være en SharePoint 2010 liste? Du er halvvejs derhen! Før du starter, skal du sørge for at gøre følgende: Rens listen. Sørg for, at din liste ligner et bord uden tomme kolonner eller rækker. Sørg for, at din liste har overskrifter. Alle kolonner skal have en ...