Хранение информации

В цифровых вычислительных машинах можно выделить три основ-

ных вида запоминающих устройств: сверхоперативная, оперативная и

внешняя память.

Сверхоперативная память строится обычно на регистрах. Ре-

гистры используются для временного хранения и преобразования ин-

формации. Некоторые из наиболее важных регистров содержатся в

центральном процессоре компьютера. Центральный процессор содержит

регистры (иногда называемые аккумуляторами), в которые помещаются

аргументы (т.е. операнды) арифметических операций. Сложение, вы-

читание, умножение и деление занесенной в аккумуляторы информации

выполняется с помощью очень сложных логических схем. Кроме того,

с целью проверки необходимости изменения нормальной последова-

тельности передач управления в аккумуляторах могут анализировать-

ся отдельные биты. Кроме запоминания операндов и результатов

арифметических операций, регистры используются также для времен-

ного хранения команд программы и управляющей информации о номере

следующей выполняемой команды.

Оперативная память предназначена для запоминания более пос-

тоянной по своей природе информации. Важнейшим свойством опера-

тивной памяти является адресуемость. Это означает, что каждая

ячейка памяти имеет свой идентификатор, однозначно идентифицирую-

щий ее в общем массиве ячеек памяти. Этот идентификатор называет-

ся адресом. Адреса ячеек являются операндами тех машинных команд,

которые обращаются к оперативной памяти. В подавляющем большинс-

тве современных вычислительных систем единицей адресации является

байт - ячейка, состоящая из 8 двоичных разрядов. Определенная

ячейка оперативной памяти или множество ячеек могут быть связаны

с конкретной переменной в программе. Однако для выполнения ариф-

метических вычислений, в которых участвует переменная, необходи-

мо, чтобы до начала вычислений значение переменной было перенесе-

но из ячейки памяти в регистр. Если результат вычисления должен

быть присвоен переменной, то результирующая величина снова должна

быть перенесена из соответствующего регистра в связанную с этой

переменной ячейку оперативной памяти.

Во время выполнения программы ее команды и данные в основном

размещаются в ячейках оперативной памяти. Полное множество эле-

ментов оперативной памяти, часто называют основной памятью.

Внешняя память служит прежде всего для долговременного хра-

нения данных. Характерным для данных на внешней памяти является

то, что они могут сохраняться там даже после завершения создавшей

их программы, и могут быть впоследствии многократно использованы

той же программой при повторных ее запусках или другими програм-

мами. Внешняя память используется также для хранения самих прог-

рамм, когда они не выполняются. Поскольку стоимость внешней памя-

ти значительно меньше оперативной, а объем значительно больше, то

еще одно назначение внешней памяти временное хранение тех кодов и

данных выполняемой программы, которые не используются на данном

этапе ее выполнения. Активные коды выполняемой программы и обра-

батываемые ею на данном этапе данные должны обязательно быть раз-

мещены в оперативной памяти, так как прямой обмен между внешней

памятью и операционными устройствами (регистрами) невозможен.

Как хранилище данных, внешняя память обладает в основном те-

ми же свойствами, что и оперативная, в том числе и свойством ад-

ресуемости. Поэтому в принципе структуры данных на внешней памяти

могут быть теми же, что и в оперативной, и алгоритмы их обработки

могут быть одинаковыми. Но внешняя память имеет совершенно иную

физическую природу, для нее применяются (на физическом уровне)

иные методы доступа, и этот доступ имеет другие временные харак-

теристики. Это приводит к тому, что структуры и алгоритмы, эффек-

тивные для оперативной памяти, не оказываются таковыми для внеш-

ней памяти. Поэтому структуры и алгоритмы для внешней памяти

обычно выделяют в отдельный раздел курса.