Det er alle 1s og 0s: Hvordan Datamaskiner Kartlegge Den Fysiske Verden

tallet «12» er ikke verdien 12 i en kartong med egg. Ordet «rock» er ikke klippen du kommer over utenfor. I stedet er de bare symboler, opprettet fra en samling av andre symboler, som representerer spesifikke konsepter som kartlegger godt til verden rundt oss. De er verktøy som gir oss muligheten til å bryte ned verden, en masse materie, i håndterbare biter. Vi bruker dem, ikke fordi de er objektivt «sanne», men fordi de er nyttige for å møte våre mål gitt et sett med fysiske restriksjoner.i hovedsak er datamaskiner bruk av binær ikke mer komplisert enn det. Bare en annen menneskeskapte system laget for å oppnå noen mål med et bestemt sett av restriksjoner i tankene.

Før du tenker på hvordan datamaskiner bruker det binære systemet, er det nyttig å tenke på hvorfor vi bruker denarsystemet. Vårt mål er å kunne representere numeriske verdier og formidle disse verdiene til andre. Vi kan forestille oss et system der vi hadde et nytt tegn for hvert tall som er tenkelig. For eksempel vil 156 faktisk være en type snirklete linje med en krok på toppen, må ikke forveksles med symbolet for 38, som ville være representert ved en sirkel med en linje over toppen. Det ville være den mest effektive måten å representere verdier på, da du bare trenger ett tegn om gangen for å representere selv de største tallene, i stedet for en kjede av tegn. Men det ville ikke være det mest praktiske. Tenk deg en 1. Klasse lærer som tester elevene sine på forskjellen mellom tegnet som representerer 1,589 og tegnet som representerer 2,000,478 og alle tegnene i mellom.Det Er Klart At det Er en grense for hvor mange tegn vi vil ha tilgjengelig i vårt representasjonssystem. Så hva med den motsatte enden av spekteret: et tally system med en enkelt tilgjengelig karakter? Visst, det er mulig — vis meg nå 2.000.478 ved hjelp av et base-1-system. Klart, dette er også upraktisk.plutselig er base-10-systemet fornuftig som ikke det eneste tilgjengelige numeriske systemet, men en god passform gitt vårt behov for praktisk, eleganse og effektivitet. Med bare 10 tilgjengelige tegn kan jeg enkelt representere tallet 2.000.478 ved å multiplisere den numeriske verdien av denne kolonnen med den neste effekten på 10 som vist nedenfor:

  • 2 x 10 fremover= 2.000.000
  • 0 x 10signatur= 0
  • 0 x 102= 400
  • li>

  • 7 x 101= 70
  • 8 x 10⁰ = 8

sum = 2 000 478

for et flott system for å representere verdier. Så hvorfor bruker ikke datamaskiner dette systemet?

Fra Denær Til Binær

elektriske strømmer kjører enten (åpen / på) eller de er ikke (lukket / av), noe som betyr at vi har to verditegn tilgjengelig for oss: 1 og 0. Gitt disse restriksjonene, kan vi bruke samme metode som vi pleide å velge base-10-systemet for å finne et representasjonssystem som datamaskiner kan bruke.Med bare to stater tilgjengelig for å representere forskjellige tegn, ville det eneste andre alternativet til binær være et tally system. Men for å representere verdien 255 i et tally system trenger vi 255 sifre. Det er 255″ på » transistorer for å representere et relativt lite tall. Binary trenger bare 8 for å oppnå det samme målet.

her er hvordan binary gjør det.et base 2-system fungerer på samme måte som base-10-systemet, men i stedet for å multiplisere verdien av hver kolonne med neste multiplum av 2, blir de i stedet multiplert med neste multiplum av 2. For eksempel kan det binære tallet 10100 oversettes til et grunntall på 10 ved ganske enkelt å legge sammen de beregnede verdiene nedenfor:

  • 1 x 22 = 1
  • 1 x 22 = 4
  • 0 x 21 = 0
  • 0 x 2⁰ = 0

Fra Biter til Byte

herfra, vi kan begynne å bygge en konvensjon for hvordan du bruker dette numeriske systemet til å kartlegge verden rundt oss på elektriske pulser av på og av. Først, la oss gi våre tegn et navn: Binære sifre eller Biter for kort, den minste dataenheten i en datamaskin.

Neste bestemmer vi hvor mange biter det vil ta for å representere en ikke-numerisk verdi, som et brev eller spesialtegn. Denne prosessen er så konstruert som prosessen med å plukke et numerisk system for å representere verdi. Vi har visse mål, visse forhåndsdefinerte verktøy og et generelt ønske om eleganse og effektivitet. Det er 101 tegn på et tastatur, noe som betyr at vi må representere 101 i binær som maksimal verdi. Viser seg 101 i base-10 er tallet 01100101 i binær. Det er et baseline krav på 7 tilgjengelige transistorer hvis vi vil kartlegge hver nøkkel til en bestemt numerisk verdi. Men hva om det er andre tegn vi ønsker å representere? Med 7, alt på, representerer vi bare opp til tallet 127 i base-10. Kan også gi oss litt mer å jobbe med.

og dermed har vi byte, baseline-enheten for måledata, som sies å representere et minimum, et enkelt tegn. Vi kan nå representere verdiene fra 0-255 (00000000-1111111).

som datamaskiner kan bare forstå tall, American Standard Code For Information Interchange (ASCII) ble etablert for å tildele hvert tegn på tastaturet en bestemt numerisk verdi som vist nedenfor:

som et eksempel, her er hvordan du vil representere uttrykket «hei verden!»i binær:

  • Tekst: Hei, Verden !
  • ASCII-Tall: 072 101 108 108 111 032 087 111 114 108 100 033
  • Binær: 00110000 00110111 00110010 00100000 00110001 00110000 00110001 00100000 00110001 00110000 00111000 00100000 00110001 00110000 00111000 00100000 00110001 00110001 00110001 00100000 00110000 00110011 00110010 00100000 00110000 00111000 00110111 00100000 00110001 00110001 00110001 00100000 00110001 00110001 00110100 00100000 00110001 00110000 00111000 00100000 00110001 00110000 00110000 00100000 00110000 00110011 00110011

som tekst må bilder også konverteres til binær. Vi kan representere bilder i binær ved å dele et bilde opp i et rutenett av piksler og bryte ned hver piksler farge i en kombinasjon av 3 farger (rød, grønn og blå), vanligvis referert til som piksler RGB-verdi. Maksverdien hver av disse fargene kan ha individuelt er 255 og minimum er 0, noe som betyr at hver fargeverdi for hver piksel kan representeres av 1 byte for totalt 3 byte per piksel.

som et eksempel kan vi representere skyggen av den grønne pikselen vist ovenfor på plassering (1,0) i rgb og binær nedenfor:

  • rgb-verdier: (6, 250, 7)
  • Binær: 00000110, 11111010, 00000111

Til Slutt kan vi representere lyddata i binær også ved hjelp av «sampling». Ved å tegne opp lydbølgene til en innspilt lyd og notere verdiene til bølgehøydene med jevne mellomrom, kan vi konvertere disse verdiene til binære og deretter gjenskape lydbølgen ved hjelp av de binære verdiene på et senere tidspunkt.

for eksempel har lydbølgen ovenfor en desimalverdi på 8 ved tidsintervallet 1, noe som gir den en byte-verdi på 00001000.

Fra Binær Til Logikk

det er mange forskjellige måter å lagre binære data, inkludert stansede kort, magnetisert tape, optiske plater, etc. Alle bruker denne konvensjonen til å representere verdier i et base-2-system. Imidlertid representerer verden i binær bare halvparten av kampen. Den andre halvparten opererer på den. Skriv inn bitvis operatører.Bitvis operatorer opererer på individuelle bits og er de grunnleggende aritmetiske operasjonene SOM EN CPU bruker. Hver bitvis operatør har et sett med forhåndsbestemte regler som gir en viss utgang gitt to innganger.

Bitvis operatører og deres tilsvarende utganger

du kan gjenkjenne disse verktøyene som de som er en del av et system vi har brukt lenge før elektrisitet ble oppdaget: logikk. Mens en bitvis operatør kan virke utenlandsk, er de avledet fra logiske operatører og som numeriske systemer bruker vi logiske operatører som bitvis operatører fordi de tjener våre formål effektivt og elegant gitt våre nåværende fysiske begrensninger.

Vårt mål Er å ta to forskjellige verdier representert ved to mulige tegn produsere en ny verdi i henhold til et sett av deterministiske regler. Du kan se hvordan vårt system med proposisjonell logikk oversetter godt inn i beregningslogikk nedenfor:

Tenk PÅ og-operatøren i sammenheng MED denne setningen: «Bob spiste lunsj og Bob gikk på kino.»Hvis den første setningen er sann og den andre setningen er falsk, er setningen falsk.

T & F = F

Men hvis den første setningen er sant og den andre setningen er sant, er setningen sant.

T & T = t

hva med or operatør: «Bob spiste lunsj Eller Bob gikk på kino». Hvis den første setningen er sann og den andre setningen er falsk, er setningen fortsatt sant.

T v F = T

Men hvis begge er falske, er setningen falsk.

f v F = F

nå erstatte T og F med 1 og 0 og vi har byggesteinene for å manipulere binære å skape nye strenger av binære og derfor nye representasjoner av verdier. Vi bruker disse bitvis operatører i logiske porter, elektroniske brytere som bruker denne logikken til å produsere nye verdier. Bilde følgende scenario:

du må lyse opp nederst til høyre LED i en kalkulator for å begynne å vise tallene 0, 1, 3, 4, 5, 6, 7, 8, 9, men ikke 2. Det betyr de binære tallene 00, 01, 100, 101 110, 111, og 1001 men ikke 10 trenger å produsere en enkelt på signal (1). For å slå de elektriske signalene til et ENKELT på signal for DEN LED kan vi kjede 3 eller logiske porter OG EN IKKE-logisk gate sammen for å sikre at disse verdiene resulterer i enten en 1 eller en 0. Nedenfor kan du se et eksempel på tallet 7 representert i binær (1110) som resulterer i et enkelt på signal, noe som resulterer i led-belysning nederst til høyre.

Quantum Computing

The only exception to this rule of representing the world in 1’s and 0’s in computers lies in Quantum computing.

Quantum computing attempts to use the «spooky” nature of sub-atomic particles to represent represent data. Fotoner, for eksempel, har vist seg å vise tilsynelatende motstridende oppførsel, som representerer flere tilstander samtidig. Multi-state atferd gir oss ekstra verdier å spille med i tillegg til den typiske på / av som vi vanligvis får med elektriske signaler. I stedet for å bruke litt til å lagre data, bruker kvante datamaskiner qubits, som kan være enten 1 eller 0 eller begge deler samtidig.



Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.