Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Pascal.doc
Скачиваний:
32
Добавлен:
12.03.2016
Размер:
3.29 Mб
Скачать
      1. Устройство и размеры оперативной памяти

Представьте себе тетрадный листок в клеточку. В каждую клетку вы имеете право записать карандашом какую-нибудь букву или цифру или знак + или вообще любой символ, который можно найти на клавиатуре. А можете и стереть ластиком и записать другой символ. Много ли букв можно записать на листе? Ровно столько, сколько на нем клеток.

Оперативная память компьютера устроена аналогично этому листу. Только размер ее гораздо меньше, чем у тетрадного листа, а клеточек гораздо больше, и каждая клеточка называется байтом. Для запоминания слова КОШКА понадобится 5 байтов. На странице вашего учебника около 1000 букв и других символов (включая запятые, точки и пробелы), значит, для запоминания страницы текста нужно 1000 байтов. Вы можете сами подсчитать, сколько текста может запомнить современный компьютер, если я скажу, что его память редко бывает меньше миллиона байтов. (Если запоминаются не текст, а числа, то место в памяти отводится немножко по другим правилам.)

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

      1. Взаимодействие программ в памяти

Этот параграф знать полезно, но пока не обязательно.

Важно помнить, что компьютер работает по программе не только тогда, когда выполняет нашу программу умножения из 2.1, но и до и после этого. Так уж он устроен. Спрашивается, по какой же программе он работает, когда не выполняет нашу. Рассмотрим поподробнее, что происходит в кратко описанный мной в 2.1 период между моментом включения компьютера и моментом начала выполнения нашей программы.

Внутри компьютера в специальном постоянном запоминающем устройственаходится программа самопроверки компьютера. Как только вы включаете компьютер, он всегда начинает выполнять именно ее. Если в результате ее выполнения компьютер решит, что его здоровье в порядке, он продолжает работу и обязательно переписывает в память с винчестера (о котором подробнее - позже) основную часть так называемойоперационной системы(ОС) - комплекса программ, предназначенного для того (скажем пока), чтобы обеспечить человеку и созданным им программам нормальную работу на компьютере. Переписав ОС, компьютер сразу же переходит к ее выполнению и в процессе выполнения останавливается на той ее команде, которая приказывает ему ждать указаний от человека, что ему делать дальше. Вы решаете, например, что вам нужно работать с Бэйсиком, вставляете в дисковод дискету с этим языком и нажатием нескольких клавиш указываете компьютеру запустить Бэйсик в работу. После этого процессор переходит к выполнению следующих команд ОС, которые “осознают” ваше указание и выполняют его, в результате чего переписывают (загружают) большую комплексную программу, которой является язык Бэйсик, с дискеты в память и запускают эту программу на выполнение.

Важно понимать, что запуск на выполнение целой программы - Бэйсика явился результатом выполнения очередной команды другой программы - ОС (говорят - ОС вызываетБэйсик илиуправление передаетсяБэйсику). От того, что начал выполняться Бэйсик, ОС не ушла в небытие, она осталась в памяти, притаилась и ждет, когда Бэйсик, как и положено каждой порядочной программе, решив поставленные человеком задачи, закончит свою работу и уступит место. В этот момент ОС как ни в чем не бывало продолжит свою работу с команды, которая следует сразу же за той, что запускала Бэйсик (говорят -управление возвращаетсяк ОС). Выполнив несколько следующих своих команд и поделав маленькие свои дела, ОС снова натыкается на свою команду, которая приказывает компьютеру ждать указаний от человека, что ему делать дальше. На этот раз человек может пожелать поиграть в какую-нибудь игру. ОС переписывает с дискеты или с винчестера в память и затем вызывает программу этой игры. После окончания игры управление снова возвращается ОС и т.д. Так и проходит с утра до вечера работа на компьютере: после выполнения очередного желания человека ОС получает управление, выполняет некоторую подготовительную работу (чистит память и т.п.) и снова ждет от человека новых пожеланий. Операционные системы бывают разные, самые популярные на персональных компьютерах - MS‑DOS и Windows.

А теперь рассмотрим подробнее период между запуском программы-Бэйсика и ее завершением. Получив управление, Бэйсик выполняет некоторые подготовительные действия и останавливается на той своей команде, которая ожидает ввода программы. Вы вводите с клавиатуры свою программу умножения, после чего Бэйсик продолжает работу и следующие его команды отправляют вашу программу с клавиатуры в память. Затем Бэйсик останавливается на другой своей команде, ждущей пожеланий человека. Здесь вы можете пожелать исправлять программу, запустить ее на выполнение, сохранить ее на диске и т.д. Предположим, вы приказываете выполнять программу. Тогда следующие команды Бэйсика, проанализировав ваш приказ, выполняют вашу программу, то есть происходит примерно то, что я подробно описал в 2.1.

Обратите внимание на то, сколько программ находится в этот момент в оперативной памяти. Во-первых, это ОС, которая ждет, когда вам надоест работать на Бэйсике. Во-вторых, это Бэйсик, который выполняет вашу программу, а выполнив, будет ждать от вас дальнейших приказов. И в-третьих, это сама ваша программа умножения. Это обычная практика работы всех компьютеров: в памяти может одновременно находиться от нескольких программ до нескольких десятков. Во многих из них есть команды, которые передают управление другим программам, а затем получают его обратно. Такая передача управления происходит очень часто и зачастую автоматически, без ведома человека. Начинающий программист может ничего этого и не знать. Ему достаточно знать те несколько клавиш, которые он должен нажать, и приказов, которые он должен отдать, чтобы добраться до своего языка программирования и производить там элементарные действия - ввод программы, ее исправление, запуск и т.п.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]