Generelt. Forskning. Teknologi

Hvordan fungerer din computers RAM?

Alle data på computeren er nuller og dem. Teksten, som du læser lige nu, blev overført fra vores server direkte til din computer og optaget i hukommelsen - det er en række nuller og dem. Lige nu ser du på din skærm, der består af pixels og viser vores websted. Et billede er også nuller og dem. Videoer er nuller og dem. Musik er nuller og dem. Alt tilgængeligt indhold på din computer kan repræsenteres som nuller og dem. Men hvordan?

RAM er en kompleks enhed, og alle kender sit arbejde.

Det er værd at starte med det faktum, at computeren forstårkun binær notation. I livet bruger vi decimal, da vi har 10 fingre, og det er simpelthen mere praktisk for os, men computeren har ikke 10 fingre - det kan kun fungere med logiske enheder, der kun fungerer i to tilstande - til eller fra, der er strøm eller ingen strøm strøm. Hvis den logiske enhed er aktiv, er der en strømforsyning, og biten er lig med en, hvis der ikke er nogen strømforsyning, så er biten nul. Bit er den mindste måleenhed. 1 bit kan kun have to tilstande 1 og 0. 1 byte er 8 bit. Så hvis vi sorterer gennem alle mulige kombinationer af nuller og en, får vi, at 256 bytes-kombinationer eller 2 til styrken af ​​8 kan gemmes i 1 byte, for eksempel “0000001”, “0000010” eller “10110010” - ethvert bogstav i det engelske alfabet kan repræsenteres i som 8 bit (1 byte).

Binær kode ser nøjagtigt sådan ud!

Takket være forskellige kodninger kan vigive enhver information i binær form. Det samme gælder vores programmer skrevet på forskellige programmeringssprog. For at køre ethvert program skal det samles til binær kode. I binær form kan du således repræsentere både data og instruktioner (kode) til arbejde med disse data. Tolkbare sprog findes også (JavaScript, Python), i dette tilfælde, når programmet kører, analyserer tolken koden og samler den til et sprog, der er forståeligt for vores computer, det vil sige i en række nuller og sådanne, i hvilket tilfælde det ikke er nødvendigt at kompilere programmet hver gang ønske om at køre det.

Hvordan fungerer processoren?

Du kan ikke tale om hukommelse uden at sige et par ord omprocessoren. Processoren og RAM er meget ens, da der i begge tilfælde bruges logiske enheder, der kun kan tage to tilstande. Processoren udfører imidlertid beregningsopgaver. For at gøre dette har han en kontrolenhed - det er vores instruktioner, som han modtager, en aritmetisk-logisk enhed - han er ansvarlig for alle aritmetiske operationer (tilføjelse, subtraktion osv.) Og registre.

Foruden RAM har computeren en cachehukommelse. Hvis du er interesseret i dette emne, kan du studere vores nyere materiale.

Da instruktionerne kommer til processoren,arbejde med data fra hukommelsen, disse data skal gemmes et eller andet sted. Det er for længe at tage dem konstant fra RAM, så processoren har sin egen hukommelse præsenteret i form af flere registre - det er den hurtigste hukommelse på computeren.

Hvad er et register? Registeret i processoren præsenteres i form af en trigger, der kan gemme 1 bit information. En trigger er et af mange logiske elementer i mikrochips. Takket være dens logik er det i stand til at gemme information. Sådan ser D-triggeren ud:

Dette er en D-trigger, og det er i stand til at gemme information. Hver enkleste logiske enhed, inklusive en D-trigger, består af logiske operationer. På billedet ovenfor kan du se “&” -tegnet - dette er en logisk AND

Sandhedstabellen for den logiske "OG"

Den øverste switch “D” i D-triggeren ændresværdien af ​​bit, og den nedre “C” aktiverer eller deaktiverer dens lagring. Du spekulerer sandsynligvis på, hvordan denne “D-trigger” fungerer. Du kan lære mere om betjeningen af ​​triggere i videoen herunder:

Foruden D-trigger er der også RS-trigger,JK-trigger og andre. Denne bog er dedikeret til mere end en bog; du kan selv studere de logiske enheder på mikrochips. Det ville være dejligt at gå i dybden med kvanteprocessorer, fordi det er indlysende, at fremtiden ligger hos dem.

Hvad består RAM af?

Nu tilbage til vores hukommelse repræsenterer deten stor gruppe af registre, der lagrer data. Der er SRAM (statisk hukommelse) og DRAM (dynamisk hukommelse). I statisk hukommelse præsenteres registre i form af triggere og i dynamisk hukommelse i form af kondensatorer, som kan miste ladning over tid. I dag bruger RAM nøjagtigt DRAM, hvor hver celle er en transistor og kondensator, som i mangel af strøm mister alle data. Derfor slettes RAM'en, når vi slukker for computeren. Computeren gemmer alle drivere og andre vigtige programmer i slukket tilstand på SSD, og ​​når den er tændt, gemmer den de nødvendige data i RAM.

Du vil sandsynligvis være interesseret i at kende typer RAM. Vi har fremragende materiale om dette emne.

Dynamisk hukommelsescelle, som alleredeDet blev sagt ovenfor, at den består af en kondensator og en transistor, den gemmer 1 bit information. Mere præcist lagrer kondensatoren informationen, og transistoren er ansvarlig for at skifte tilstand. Vi kan præsentere kondensatoren i form af en lille spand, der er fyldt med elektroner, når strøm påføres. Vi undersøgte driften af ​​dynamisk tilfældig adgangshukommelse mere detaljeret for 7 år siden. Siden da har lidt ændret sig i principperne for sit arbejde. Hvis kondensatoren er fyldt med elektroner, er dens tilstand enhed, det vil sige, at udgangen har vi 1 bit information. Hvis ikke, så er nul.

Hvordan gemmer en computer data i RAM?

Sekvensen af ​​bit eller 1 byte "01000001",skrevet i RAM, kan betyde noget - det kan være tallet "65", bogstavet "A" eller farven på billedet. Så operativsystemet kan forstå, hvad disse bits betyder, blev forskellige kodninger for forskellige datatyper opfundet: MP3, WAV, MPEG4, ASCII, Unicode, BMP, Jpeg. Lad os for eksempel prøve at skrive det kyrilliske bogstav "p" i vores hukommelse. For at gøre dette skal du først oversætte det til formatet til et Unicode-tegn (hexadecimalt tal). "P" i Unicode-tabellen er "0440". Dernæst skal vi vælge i hvilken kodning vi vil gemme nummeret, lad det være UTF-16. I det binære system vil derefter Unicode-tegnet have formen "00000100 01000000". Og allerede denne værdi kan vi skrive i RAM. Det består af to byte. Men hvis vi tog de engelske “s”, i binær form, ville det se sådan ud som “01110011”.

Faktum er, at det engelske alfabet kun tager1 byte, da det i UTF-kodning passer ind i en række numre fra 0 til 255. 256 kombinationer indeholder tal fra 0 til 9 og det engelske alfabet, men resten af ​​tegnene er væk, så for eksempel er der behov for 2 byte til russiske tegn , og for japanske eller kinesiske tegn har vi allerede brug for 3 eller endda 4 byte.

Så vi regnede ud, hvordan RAM fungerer, og hvordan du kan skrive data til det. Kan du lide de ting? Del det med dine venner, og lad os diskutere det i vores chat.