Пристрій оперативної пам’яті комп’ютера

У цій статті пропоную розглянути пристрій оперативної пам'яті комп'ютера. Ви вже, напевно, знаєте, що програми, які ми з вами вчимося писати, після запуску завантажуються саме в оперативну пам'ять комп'ютера, а звідти вже процесор (прямо або через кеш) зчитує команди наших програм і виконує їх. Кожен програміст, який себе поважає, повинен знати пристрій оперативної пам'яті комп'ютера, щоб розуміти, як це все працює. Розуміючи, як відбувається процес роботи, ви зможете писати більш ефективні програми (програми).

Фізично-оперативна пам'ять виглядає як невелика плата з мікросхемами, яка вставляється в спеціально відведений для неї роз'єм на материнській платі.

пристрій

Невелике вступне слово. Оперативна пам'ять (або як її ще називають "динамічна пам'ять", "фізична пам'ять") комп'ютера відноситься до розряду швидкодіючої та енергозалежної пам'яті. Чому? Тому що дані зчитуються з неї набагато швидше, ніж з інших носіїв інформації (вінчестер, флеш-пам'ять і так далі). Після вимкнення комп'ютера вміст оперативної пам'яті не зберігається, тому вона енергозалежна. Для порівняння, вінчестер (або як його ще називають "жорсткий диск", "хард-диск") відноситься до енергонезалежного типу пам'яті. Після вимкнення комп'ютера дані не зникають, а продовжують існувати. У той же час зчитування з вінчестера відбувається набагато повільніше, ніж з оперативної пам'яті.

Тепер, перш ніж почати розглядати пристрій оперативної пам'яті комп'ютера, давайте пригадаємо, що мінімальною одиницею інформації при зберіганні, так і при передачі, є один біт. У біта може бути лише два стани: включений або вимкнений, у цифрах це буде 1 і 0, відповідно. Переходимо до пристрою: оперативнапам'ять комп'ютера складається з осередків, розміром один біт і розташовані ці осередки як матриці (матриця - це двовимірний масив). А, щоб пам'ять комп'ютера змогла запам'ятати інформацію у вигляді 1 байт, їй знадобиться 8 біт (т.к. 1 байт = 8 біт), тобто. 8 осередків пам'яті. Загальний пристрій оперативної пам'яті я спробую донести вам за допомогою малюнка

пристрій

У цій програмі ми резервуємо (виділяємо) пам'ять для змінної типу int (має можливість зберігати цілі числа в інтервалі від -2147483648 до 2147483647) і присвоюємо їй початкове значення - число 1000. Далі ми зробимо ось що:

Ось такі рядки коду нам потрібні для вирішення поставленого завдання:

Запустимо програму та подивимося результат роботи цих рядків:

пристрій

Як бачимо, для змінної типу int було виділено 4 байти у пам'яті комп'ютера. Можете поекспериментувати і з іншими типами даних, завдяки чому ви собі "наб'єте руку" і запам'ятаєте ці цифри, програміст повинен знати їх. У другому рядку все зрозуміло – ми просто вивели значення змінної. А ось третій рядок - це найцікавіше, тут ми справді переконалися у тому, що наші змінні розміщуються в оперативній пам'яті під час роботи програми.

Дані оперативної пам'яті зберігаються у двійковій системі числення, тобто. наше число 1000 буде виглядати як 11 1110 1000 і реально буде займати лише 10 осередків пам'яті з доступних 32. У такому разі, якщо ви заздалегідь знаєте, що розмір вашої змінної не зміниться і не вийде за межі -32768. 32767, можете використовувати тип даних short, який займає в пам'яті комп'ютера рівно 2 байти, що в 2 рази менше.