Вычислительная машина - Память

Уже из самого названия ясно, что память — это часть, куда помещается информация для хранения, последующей выборки и использования системой. Под информацией могут пониматься программы, выполняемые устройством управления, обрабатываемые данные, строки символов, предназначенные для вывода на печать, различного рода таблицы,— другими словами, все, что можно пожелать хранить в памяти.

Память можно рассматривать как набор ячеек, предназначенных для хранения единиц информации (которые в дальнейшем мы будем называть байтами). Каждая ячейка имеет свой номер, называемый адресом. К содержимому любой ячейки можно обратиться с помощью ее адреса.

На рис. 1.3 изображен участок памяти и указано его возможное содержимое в некоторый момент. Для того чтобы определить содержимое некоторой ячейки, достаточно указать ее адрес. Таким образом, можно сказать, что числом, хранящимся по адресу 101, является 15, или, более строго, что содержимое ячейки 101 равно 15. Последнее выражение является общепринятым, мы будем им часто пользоваться. Символически сослаться на содержимое ячейки можно, заключив ее адрес в скобки. Следующие предложения эквивалентны:

1.Число, находящееся в данный момент в ячейке 103, есть 352.

2.Содержимое ячейки 103 — число 352.

3.(103)=352.

Рис. 1.3. Участок памяти и его возможное содержимое.

Важно хорошо понять разницу между адресом ячейки и ее содержимым. Продолжайте чтение лишь в случае, если вы поняли эту разницу.

Содержимое памяти остается неизменным до тех пор, пока в устройство управления не поступит команда на его изменение. Изменение содержимого ячейки памяти называется записью в ячейку. В команде записи необходимо указать две величины: то, что мы хотим записать, т. е. новое содержимое ячейки памяти, и величину, характеризующую место, куда мы хотим произвести запись, т. е. адрес ячейки. Допустим, что нам захотелось записать 0 по адресу 103. Что произойдет

со старым содержимым этой ячейки после выполнения команды записи? Оно будет уничтожено.

Если считать, что содержимое некоторой области памяти в данный момент выглядит так, как показано на рис. 1.3, то после записи числа 15 по адресу 103 содержимое этой же области будет выглядеть так:

Отметим, что при выполнении записи в произвольную ячейку содержимое остальных ячеек остается неизменным. Отметим также, что предыдущее содержимое ячейки 103 в процессе записи исчезло.

Таким образом, мы пока имеем память, способную хранить записанную в нее информацию, но не имеем способа получения этой информации из памяти для дальнейшего использования. Получить информацию можно, осуществив ее выборку из памяти. Для выборки содержимого некоторой ячейки необходимо указать ее адрес и затем запросить устройство управления получить содержимое ячейки с заданным адресом. Обратимся опять к рис. 1.3. В результате выборки информации из ячейки 101 мы получим число 15. Что же происходит с содержимым ячейки при выборке? Ничего. Содержимое ячейки после выборки из нее информации остается неизменным. Можно провести аналогию между выборкой содержимого определенной ячейки памяти и чтением одного из предложений данного текста. После чтения предложение не изменится.

Итак, память состоит из ячеек, предназначенных для хранения информации. Каждая ячейка имеет закрепленный за ней числовой адрес. Для обращения к некоторой ячейке необходимо только указать ее адрес. Содержимое ячейки остается неизменным до тех пор, пока не выполняется команда записи в эту ячейку. В дальнейшем записанная информация может быть получена с помощью команд выборки.

Некоторые авторы используют иную терминологию при описании работы с памятью. Например, иногда говорят: «Читать величину из ячейки 3000 и поместить результат по адресу 4000», что эквивалентно «Произвести выборку содержимого ячейки 3000 и записать результат по адресу 4000». Нам кажется более предпочтительным использовать термин читать для обозначения ввода информации с внешних носителей в память (см. разд. 1.1.4).



 
Статьи раздела