Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Часть 1: хранение данных в компьютере.

Лекция 1: введение в программирование. | Часть 1: основные операторы и их приоритеты. | Часть 2: функции. | Лекция 5: Функция main, функции ввода-вывода, препроцессор. | Лекция 6: массивы и строки, библиотечные функции ввода-вывода. | Лекция 7: операторы выбора, безусловный переход, циклы. | Лекция 8: структуры и объединения. | Лекция 9: связные списки. | Часть 2: бинарные деревья. | Часть 3: динамическое программирование. |


Читайте также:
  1. A) именная часть составного сказуемого
  2. BITMAPFILEHEADER – эта структура содержит информацию о типе, размере и представлении данных в файле. Размер 14 байт.
  3. C 4 redo группами по 2 файла, 2 control-файлами, табличным пространством system, имеющим 2 файла данных по 50 мб
  4. Cities-65: Радомышль. Часть 1. Вокзал и задворки центра
  5. Cтуденческий банк данных
  6. Hearthlab часть 5: Исступление
  7. I ЧАСТЬ ВТОРАЯ

На предыдущей лекции были подробно рассмотрены способы представления информации в приемлемом для компьютера виде. Теперь встаёт вопрос, как именно информация хранится в компьютере. Все запоминающие устройства компьютера можно разделить на следующие группы: устройства долговременного хранения, постоянные запоминающие устройства, оперативная память, регистры процессора.

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

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

Серьёзного рассмотрения достойны, прежде всего, регистры процессора. Процессоры x86 и x64 имеют в своём составе 8 ячеек памяти, называемых регистрами. Один регистр может хранить 4 (в архитектуре x86) или 8 (в x64) байт. Первоначально регистры, как и процессоры, были 16-битными и назывались AX, BX, CX, DX, SP, BP, IP, SI. В 32-разрядных процессорах к названию регистра приписывается буква E (EAX, EBX и т.д.), а в 64-разрядных – буква R (RAX, RBX и т.д.). Регистры SP, BP, IP и SI называют специальными регистрами, разговороб их назначении лежит в области низкоуровневого программирования, и в данном курсе не рассматривается. Регистры AX, BX, CX и DX называются регистрами общего назначения, в них можно хранить любую информацию. Регистры общего назначения имеют следующую структуру (на примере AX):

RAX 64 бита
  EAX 32 бита
  AX 16 бит
AH AL 8 бит
         

Иными словами, AL – это 8 младших, а AH – 8 старших бит AX, AX – 16 младших бит EAX, EAX – 32 младших бита RAX. AL, AH, AX, EAX, RAX – это всё самостоятельные регистры, к которым можно обращаться по отдельности. Аналогичная структура верна для всех регистров общего назначения. Обращение к регистрам может происходить до десяти раз быстрее, чем к оперативной памяти, поэтому регистры целесообразно использовать при осуществлении вычислений, требующих максимальной скорости. Также регистры применяются для обмена данными между программой и прерываниями.

Основным накопителем информации, используемым в программировании, является оперативная память. Оперативная память представляет собой набор однобайтовых ячеек, каждой из которых присвоен свой индивидуальный номер, называемый адресом. Нумерация начинается с 1, поскольку номер ячейки памяти 0 зарезервирован как «пустой» адрес. На самом деле, в реальном адресном пространстве работает только операционная система. Для прикладных программ операционные системы реализуют плоскую (линейную) модель памяти (flat). В этой модели памяти каждая программа «видит», что ей предоставлена вся память, которая только может существовать в рамках данной архитектуры (4 гигабайта в архитектуре x86 и 1048576 терабайт в архитектуре x64). Это достигается за счёт применения двух основных инструментов: файл подкачки и виртуальное адресное пространство.

Файл подкачки (swap) – это место на жёстком диске, выделенное для записи информации, не помещающейся в оперативную память. Операционная система перехватывает все обращения к памяти от прикладных программ и переадресует их таким образом, чтобы запросы от разных программ попадали в непересекающиеся области оперативной памяти или файла подкачки, если оперативная память закончилась. Таким образом, программа даже не может определить, идёт ли обращение в оперативную память, или в файл подкачки. Это называется виртуальным адресным пространством.

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

Если же программе требуется ещё память, то она посылает запрос операционной системе, которая выбирает в оперативной памяти незанятый участок и начинает переадресовать запросы программы на него. При этом участок помечается как занятый, и адресация других программ на него невозможна. Как только программе этот участок памяти становится ненужным, она посылает запрос операционной системе, и он снова помечается как свободный. Такая схема называется динамическим распределением памяти, а память, выделенная таким способом – динамическая память.


Дата добавления: 2015-11-13; просмотров: 57 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Лекция 2: представление данных в компьютере.| Часть 2: типы данных языка Си.

mybiblioteka.su - 2015-2024 год. (0.006 сек.)