Логическая структура основной памяти. Каждая ячейка памяти имеет свой уникальный, т. Логическое строение оперативной памяти в графическом виде

Скачать на Телефон 23.07.2019
Скачать на Телефон

Общая структурная схема процессора

Принцип фон Неймана

Лекция 3

Принцип фон Неймана. АЛУ. Программа как последовательность кодов команд. Адрес ячейки памяти. Регистры процессора. Как процессор складывает два числа.

Большинство современных ЭВМ строится на базе принципов, сформулированных американским ученым, одним из отцов кибернетики Джоном фон Нейманом. Впервые эти принципы были опубликованы фон Нейманом в 1945 г. в его предложениях по машине EDVAC. Эта ЭВМ была одной из первых машин с хранимой программой, т.е. с программой, запомненной в памяти машины, а не считываемой с перфокарты или другого подобного устройства. В целом эти принципы сводятся к следующему:

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

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

3) Алгоритм представляется в форме последовательности управляющих слов, которые определяют смысл операции. Эти управляющие слова называются командами. Совокупность команд, представляющая алгоритм, называется программой.

4) Программы и данные хранятся в одной и той же памяти. Разнотипные слова различаются по способу использования, но не по способу кодирования.

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

Компьютеры, построенные на этих принципах, называются машинами фон‑Неймановского типа.

Процессор - центральная микросхема ЭВМ, осуществляющая операции по обработке информации и управляющая работой остальных устройств ЭВМ.

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

Изобретателем микропроцессора как схемы, в которую собрана практически вся основная электроника компьютера, стала американская фирма INTEL, выпустившая в 1970 году процессор 8008. С их появления и началась история ЭВМ четвертого поколения.

В своей работе процессор использует регистры - ячейки памяти, находящиеся внутри процессора. На рисунке приведена общая схема процессора.

Общая структурная схема процессора

Процессор разделен на две части:

операционное устройство (ОУ) и шинный интерфейс (ШИ) .


Назначение ОУ - выполнение команд, а ШИ подготавливает команды и данные для выполнения. ОУ содержит:

арифметико-логическое устройство (АЛУ) - "отвечает" за выполнение команд,

устройство управления (УУ) - осуществляет выборку команд из памяти, пересылку их на АЛУ и перемещение полученных результатов в требуемую ячейку памяти;

10 регистров - применяются при вычислениях.

Эти устройства обеспечивают выполнение команд, арифметические вычисления и логические операции.

Три элемента ШИ - блок управления шиной, очередь команд и сегментные регистры - осуществляют следующие функции:

передачу данных на ОУ, в память и на внешние устройства ввода/вывода ;

адресацию памяти с помощью четырех сегментных регистров ;

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

Компьютер имеет два типа внутренней памяти. Постоянная память (ПЗУ или ROM - read-only memory). Она представляет собой специальную микросхему, из которой возможно только чтение, так как данные в ней специальным образом "прожигаются" и не могут быть модифицированы. Ее основное назначение: поддержка процедур начальной загрузки, выполнение различных проверок и т.д. Для целей программирования наиболее важным элементом ПЗУ является BIOS (Basic Input/Output System) - базовая система ввода/вывода.

Память, с которой имеет дело программист, называется ОЗУ (RAM - random access memory) - оперативное запоминающее устройство. Ее содержимое доступно как для чтения, так и для записи. Здесь хранятся программы и данные во время работы компьютера.

Основным устройством обработки информации в ЭВМ является арифметико-логическое устройство (АЛУ). Его основой является электронная схема, составленная из большого числа транзисторов, называемая сумматором. Сумматором выполняются простейшие логические и арифметические операции над данными, представленными в виде двоичных кодов (нулей и единиц). К логическим операциям относятся логическое умножение (операция "И"), логическое сложение (операция "ИЛИ") и логическое отрицание (операция "НЕ"). Результатом операции логического умножения является 1, если все переменные, являющиеся исходными данными равны 1, и 0, если хотя бы одна из них равна 0. Вспоминая, что 1 моделируется электрическим сигналом, а 0 - отсутствием сигнала, можно сказать, что на выходе устройства будет электрический сигнал тогда и только тогда, когда сигнал будет иметься на каждом входе:

Результатом операции логического сложения является 0, если все исходные переменные равны нулю, и 1, если хотя бы одна из них равна 1. Результатом операции логического отрицания является 1, если на входе- 0, и 0, если на входе -1.

На основе этих трех операций можно производить арифметические действия над числами, представленными в виде нулей и единиц. Теоретической основой для этого являются законы, разработанные еще в 1847 году ирландским математиком Джорджем Булем, известные как Булева алгебра, в которой используются только два числа- 0 и 1. Ранее считалось, что эти работы Буля никому не нужны, и их автор подвергался насмешкам. Однако, в 1938 году американский инженер Клод Шеннон положил Булеву алгебру в основу теории электрических и электронных переключательных схем- сумматоров, создание которых и привело к появлению ЭВМ, способных автоматически производить арифметические вычисления.

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

В современных ЭВМ арифметико-логическое устройство объединяется с управляющими устройствами в единую схему - процессор .

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

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

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

Архитектура каждого компьютера накладывает собственные ограничения на величину адресов. Наибольший возможный адрес определяет объем адресного пространства компьютера или то, какой объем памяти он может использовать. Обычно компьютер использует память меньшего объема, чем допускается его возможностями адресации. Если архитектура компьютера предусматривает наибольшее адресное пространство, это накладывает суровые ограничения на возможности такого компьютера. Адреса в 8088 имеют длину 20 бит, следовательно, процессор позволяет адресовать два в двадцатой степени байта или 1024 К.

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

Пример 3.5. Процессор Intel 8086 (1978 г.) имел кодовую шину адреса разрядности 20 бит. В этом случае может быть непосредственно адресовано 2 20 ячеек емкостью 1 байт каждая. Следовательно, адресное пространство будет равно 2 20 байт = 1 Мб.

Процессор Intel 80486 (1989 г.) имел кодовую шину адреса разрядности 32 бита. Его адресное пространство было равным 2 32 байт = 2 2 ·2 30 байт = 2 2 Гб = 4 Гб.

Начиная с процессора Intel Pentium Pro (1995 г.) появилась возможность использования режима Physical Address Extension (PAE), в котором для адресации используется 36 бит. В этом случае может быть адресовано 2 36 байт = 2 6 ·2 30 байт = 2 6 Гб = 64 Гб.

В компьютерах существуют два способа адресации памяти – реальный режим и защищенный режим. Реальный режим применялся в операционной системе MS DOS. Вычисление физического адреса в реальном режиме выполняется по правилу

CS 16 · 10 16 + IP 16 ,

где CS, IP – значения сегмента и смещения, заданные в соответствующих регистрах процессора.

Таким образом, максимальный физический адрес равен

FFFF 16 ·10 16 + FFFF 16 = FFFF0 16 + FFFF 16 = 10FFEF 16 = 1114095 10 ,

а адресное пространство – 1114096 байт = 1 Мб + 64 Кб – 16 байт.

Кроме того, это адресное пространство может быть ограничено разрядностью кодовой шины адреса процессора Intel 8086, т. е. числом 2 20 байт = 1Мб.

Та часть оперативной памяти, которая не может быть адресована непосредственно, называется расширенной памятью .

Пример 3.6. Компьютер на базе процессора Intel 80486 имеет оперативную память емкостью 16 Мб. Процессор может непосредственно адресовать 1 Мб + 64 Кб – 16 байт оперативной памяти. Тогда расширенная память будет составлять 16 Мб –
–(1 Мб + 64 Кб – 16 байт) = 15 Мб – 64 Кб + 16 байт.

Таким образом, соотношение между непосредственно адресуемой и расширенной памятью будет следующим:

1 114 096 байт: 15 663 120 байт или 6,64: 93,36.

Следовательно, в реальном режиме работы более 90% оперативной памяти компьютера будут недоступны.

Существуют два способа доступа к расширенной памяти в реальном режиме работы компьютера. Однако они возможны лишь при использовании специальных программ – драйверов по спецификациям XMS и EMS.

Драйвер – специальная программа, управляющая работой оперативной памяти или внешнего устройства компьютера и организующая обмен информацией между процессором, оперативной памятью и внешними устройствами.

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

Доступ к расширенной памяти согласно спецификации XMS (eXtended Memory Specification ) организуется при использовании драйверов типа XMM (например, HIMEM.SYS). Согласно спецификации EMS (Expanded Memory Specification ) доступ к расширенной памяти реализуется путем отображения по мере необходимости отдельных ее полей в определенную область непосредственно адресуемой памяти. При этом хранится не обрабатываемая информация, а лишь адреса, обеспечивающие доступ к ней. Для организации памяти по спецификации EMS используются драйверы EMM386.EXE или Quarterdeck EMM.

В защищенном режиме работы компьютера может быть непосредственно адресована память большей емкости, чем в реальном, за счет изменения механизма адресации. Благодаря защищенному режиму, в памяти может храниться только та часть программы, которая необходима в текущий момент времени. Остальная часть может храниться во внешней памяти компьютера, например, на жестком диске. При обращении к той части программы, которой в данный момент нет в памяти, операционная система приостанавливает работу программы, загружает из внешней памяти требуемый фрагмент программного кода, а затем возобновляет выполнение программы. Эта процедура называется подкачкой данных с жесткого диска. Таким образом, в защищенном режиме становится доступным выполнение программ, размер кода которых превосходит объем оперативной памяти компьютера.

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

■ индекс дескриптора (13 бит) в таблице дескрипторов;

■ флаг (1 бит), определяющий, к какой из двух таблиц дескрипторов (локальной или глобальной) будет выполняться обращение;

■ запрашиваемый уровень привилегий (2 бита).

В соответствии со значением селектора происходит обращение к нужной таблице дескрипторов и находящемуся в ней дескриптору. Из дескриптора извлекается адрес сегмента, его размер и права доступа. Затем адрес сегмента складывается со смещением из регистра IP процессора. Полученная сумма и будет являться физическим адресом ячейки оперативной памяти.

Использование защищенного режима позволило адресовать процессором Intel 80286 (1982 г.) 2 24 байт = 2 4 · 2 20 байт = 16 Мб памяти, в то время как в реальном режиме адресное пространство по-прежнему ограничивалось 1 Мб.

Кроме увеличения адресного пространства, в защищенном режиме возможно параллельное исполнение нескольких программ (многозадачный режим ). Многозадачный режим организуется с помощью многозадачной операционной системы (например, Microsoft Windows), которой процессор предоставляет мощный и надежный механизм защиты задач друг от друга с помощью четырехуровневой системы привилегий (рис. 3.7).

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

Рис. 3.7. Уровни привилегий при использовании многозадачного режима

Страница 4

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

Нумерацию разрядов в ячейке принято вести справа налево, самый правый разряд имеет порядковый номер 0. Это младший разряд ячейки памяти, старший разряд имеет порядковый номер (n-1) в n-разрядной ячейке памяти. Содержимым любого разряда может быть либо 0, либо 1.

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

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

Машинное слово для конкретной ЭВМ – это всегда фиксированное число разрядов. Данное число является одной из важнейших характеристик любой ЭВМ и называется разрядностью машины.

Например, самые современные персональные компьютеры являются 64-разрядным, то есть машинное слово и соответственно, ячейка памяти, состоит из 64 разрядов или битов.

Бит - минимальная единица измерения информации.

Каждый бит может принимать значение 0 или 1. Битом также называют разряд ячейки памяти ЭВМ. Стандартный размер наименьшей ячейки памяти равен восьми битам, то есть восьми двоичным разрядам. Совокупность из 8 битов является основной единицей представления данных – байт.

Байт (от английского byte – слог) – часть машинного слова, состоящая из 8 бит, обрабатываемая в ЭВМ как одно целое. На экране – ячейка памяти, состоящая из 8 разрядов – это байт. Младший разряд имеет порядковый номер 0, старший разряд – порядковый номер 7.

Для записи чисел также используют 32-разрядный формат (машинное слово), 16-разрядный формат (полуслово) и 64-разрядный формат (двойное слово).

Для измерения объема хранимой информации используются более крупные единицы объема памяти:

1 Килобайт (Кбайт) = 1024 байт = 210 байт;

1 Мегабайт (Мбайт) = 1024 Кбайт = 220 байт;

1 Гигабайт (Гбайт) = 1024 Мбайт = 230 байт;

1 Терабайт (Тбайт) = 1024 Гбайт = 240 байт;

1 Петабайт (Пбайт) = 1024 Тбайт = 250 байт.

Число 1024 как множитель при переходе к более высшей единице измерения информации имеет своим происхождением двоичную систему счисления (1024 - это десятая степень двойки).

Общие сведения о системах счисления

Система счисления - это совокупность правил записи чисел с помощью определенного набора символов.

Для записи чисел могут использоваться не только цифры, но и буквы (запись римскими цифрами).

В зависимости от способа изображения чисел системы счисления делятся на позиционные и непозиционные.

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

В непозиционной системе счисления цифры не изменяют своего значения при изменении их расположения в числе. * Римская система счисления I(1), V(5), X(10), L(50), C(100), D(500), M(1000).

Величина числа в римской системе счисления определяется как сумма или разность цифр в числе. Если меньшая цифра стоит слева от большей, то она вычитается, если справа - прибавляется.

Пример:CCXXXII=232 или IX =9

Основание системы счисления – количество различных символов, используемых для изображения числа в позиционной системе счисления. (Р).

Максимальное число, записанное в восьми разрядах ячейки соответствует восьми единицам и равно:

111111112 = 1*27 + 1*26 + 1*25 + 1*24 + 1*23 + 1*22 + 1*21 + 1*20 = 255.

Знаковые положительные числа в байте можно представить только

от 0 до 127.

Старший (левый) разряд отводится под знак числа, остальные

7 разрядов под само число. Максимальное число в знаковом представлении соответствует семи единицам и равно:

Информация о ообразовании:

Методические особенности организации семинарского занятия
При разработке методики семинарских занятий важное место занимает вопрос о взаимосвязи между семинаром и лекцией, семинаром и самостоятельной работой студентов, о характере и способах такой взаимосвязи. Семинар не должен повторять лекцию, и, вместе с тем, его руководителю необходимо сохранить связь...

Качество подготовки специалистов
Требования при приёме. Порядок приема молодежи на обучение определяется законом "Об образовании" РФ, типовым положением об учреждении НПО, Уставом ГОУ НПО ПУ № 73, внутриучилищным локальным актом "Правила приема в училище и отчисления из училища". Внутренний локальный акт приним...

Как преодолевать проблемы
Будьте готовы к тому, что время от времени у вас будут возникать проблемы. Это могут быть проблемы разного рода – личные, связанные с учебой, со взаимоотношениями между людьми – с подобными проблемами встречается каждый. Можно сказать, что если у вас есть проблемы, значит вы живете нормальной жизнь...

Министерство образования и науки нижегородской области

Государственное бюджетное образовательное учреждение

среднего профессионального образования

«Борский Губернский колледж»

Специальность 230701 Прикладная информатика (по отраслям)

Реферат

На тему: Структура оперативной памяти.

По дисциплине: Операционные системы и среды.

Выполнил:

студент гр. ИТ-41

Родов А.Е.

Проверил:

Марков А.В.

Городской округ города Бор

201 5

Введение

Оперативной памяти (от англ. Random Access Memory ) память с произвольным доступом. ОЗУ (оперативное запоминающее устройство) — энергозависимая часть системы компьютерной памяти , в которой во время работы компьютера хранится выполняемый машинный код (программы ), а также

Изм.

Лист

№ докум.

Подпись

Дата

Лист

ППП ПИ 23.00.00 ТО

входные, выходные промежуточные данные, обрабатываемые процессором.

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

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

  1. Сегментная модель памяти

Когда-то давно, на заре рождения компьютерной техники, оперативная память была очень маленькой и для ее адресации использовались 2 байта (так называемое «слово»). Такой подход позволял адресовать 64 Кб памяти, и адресация была линейной - для указания адреса использовалось одно-единственное число. Позже, с усовершенствованием техники, производители поняли, что имеется возможность поддерживать большие объемы памяти, но для этого нужно сделать размер адреса больше. Для совместимости с уже написанным программным обеспечением было решено сделать так: адресация теперь двухкомпонентная (сегмент и смещение), каждая из которых 16-битная, а старые программы как использовали одну 16-битную компоненту и ничего не знают о сегментах, так и продолжают работать

Изм.

Лист

№ докум.

Подпись

Дата

Лист

ППП ПИ 23.00.00 ТО

Логическое строение оперативной памяти

Адресное пространство – это набор адресов, который может формировать процессор. Зачем? Хороший вопрос. Дело в том, что каждая ячейка памяти имеет адрес. И что бы считать (или записать) хранимую в ней информацию, надобно к ней обратится по ее адресу. Адреса делятся на виртуальные (логические) и физические. Физические адреса – это реальные адреса реальных ячеек памяти. Программам глубоко параллельно до таких адресов, так как они оперируют символьными именами, которые затем транслятором преобразовываются в виртуальные адреса. Потом виртуальные адреса преобразовываются в физические.

Логические адреса представляются в шестнадцатеричной форме и состоят из двух частей. Логически оперативная память разделена на сегменты. Так вот первая часть логического адреса – начало сегмента, а вторая – смещение от этого начала (сегмент, смещение)

Логическое строение делится на 5 зон:

1. Conventional memory – основная память;

Начинается с адреса 00000 (0000:0000) и до 90000 (9000:0000). Это занимает 640 Кбайт. В эту область грузится в первую очередь таблица векторов прерываний, начиная с 00000 и занимает 1 Кбайт, далее следуют данные из BIOS (счетчик таймера, буфер клавиатуры и т. д.), а затем уж всякие 16 разрядные программы DOS (для них 640 Кбайт – барьер, за который могут выскочить только 32 разрядные программы). На данные BIOS ’а отводится 768 байт.
2. UMA (Upper Memory Area ) – верхняя память;

Начинается с адреса А0000 и до FFFFF . Занимает она 384 Кбайт. Сюда грузится информация, связанная с аппаратной частью компьютера. UMA можно разделить на 3 части по 128 Кбайт. Первая часть (от А0000 до BFFFF ) предназначена для видеопамяти. В следующую часть (от C 0000 до DFFFF ) грузятся программы BIOS адаптеров. Последняя часть (от E 0000 до FFFFF ) зарезервирована для системной BIOS . Дело в том, что последние 128 Кбайт не полностью используются. В большинстве случаев под BIOS задействованы только последние 64 Кбайт. Свободная же часть UMB управляется драйвером EMM 386. EXE и используется для нужд операционной системы.
3. HMA (High Memory Area) – область верхней памяти ;

Изм.

Лист

№ докум.

Подпись

Дата

Лист

ППП ПИ 23.00.00 ТО

История появления области HMA тянется аж к 80286 процессору, а точнее к ошибке в его схеме. Я уже говорил, что процессоры 8086 и 8087 имели 20 разрядную адресную шину, работали в реальном режиме и могли максимально обратится по адресу FFFFF (FFFF :000 F ). А вот 80286 процессор имел уже 24 разрядную шину адреса, работал в реальном и защищенном режимах и мог адресовать до 16 Мбайт памяти.
4. XMS (eXtended Memory Specification ) – дополнительная память;

Что бы работать в XMS используя DOS , для процессоров был разработан еще один режим – виртуальный. DOS не может переплюнуть барьер в 640 Кбайт, виртуальный режим позволяет разбить дополнительную память на части по

1 Мбайту. В каждую часть грузится по программе DOS и там они варятся в реальном режиме но уже не мешая друг другу выполнятся одновременно. 32 разрядным приложениям на барьер в 640 Кбайт все равно. XMS отвечает за перевод режимов процессора драйвер EMM 386. EXE , а за организацию самой области – HIMEM . SYS . Посмотреть, что творится у Вас в XMS можно с помощью SysInfo из набора Norton Utilities.
5. EMS (Expanded Memory Specification) – расширенная память;

Находится эта область в верхней памяти и занимает порядка 64 Кбайт. Использовалась она лишь в старых компах с оперативной памятью до

1 Мбайта. В силу своей спецификации это достаточно медленная область. Дело в том, что расширенная память – это один из многих коммутируемых сегментов. После того, как сегмент заполнится, происходит смена использованного сегмента новым. Но работать можно только с одним сегментом, а это, Вы сами должны понимать, не совсем хорошо, удобно и быстро. Как правило первый сегмент EMS находится по адресу D 000.

Логическое строение оперативной памяти в графическом виде.

Изм.

Лист

№ докум.

Подпись

Дата

Лист

ППП ПИ 23.00.00 ТО

4. DRAM – Dynamic Random Access Memory

DRAM - это очень старый тип микросхем оперативной памяти, который сейчас уже давно не применяется. По другому DRAM – это динамическая память с произвольным порядком выборки. Минимальной единицей информации при хранении или передаче данных в компьютере является бит. Каждый бит может быть в двух состояниях: включен (да, 1) или выключен (нет, 0). Любой объем информации в конечном итоге состоит из включенных и выключенных битов. Таким образом, что бы сохранить или передать какой либо объем данных, необходимо сохранить или передать каждый бит, не зависимо от его состояния, этих данных.

Для хранения битов информации в оперативной памяти есть ячейки. Ячейки состоят из конденсаторов и транзисторов. Вот примерная и упрощенная схема ячейки DRAM:

Каждая ячейка способна хранить только один бит. Если конденсатор ячейки заряжен, то это означает, что бит включен, если разряжен – выключен. Если необходимо запомнить один байт данных, то понадобится 8 ячеек (1 байт = 8 битам). Ячейки расположены в матрицах и каждая из них имеет свой адрес, состоящий из номера строки и номера столбца.

Изм.

Лист

№ докум.

Подпись

Дата

Лист

ППП ПИ 23.00.00 ТО

Теперь рассмотрим, как происходит чтение. Сначала на все входы подается сигнал RAS (Row Address Strobe) – это адрес строки. После этого, все данные из этой строки записываются в буфер. Затем на регистр подается сигнал CAS (Column Address Strobe) – это сигнал столбца и происходит выбор бита с соответствующим адресом. Этот бит и подается на выход. Но во время считывания данные в ячейках считанной строки разрушаются и их необходимо перезаписать взяв из буфера.

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

Следует учесть то, что матрицы с ячейками расположены вот таким вот образом:

Изм.

Лист

№ докум.

Подпись

Дата

Лист

ППП ПИ 23.00.00 ТО

Это означает, что за один раз будет считан не один бит, а несколько. Если параллельно расположено 8 матриц, то сразу считан будет один байт. Это называется разрядностью. Количество линий, по которым будут передаваться данные от (или на) параллельных матриц, определяется разрядностью шины ввода/вывода микросхемы.
Говоря о работе DRAM необходимо учитывать один момент. Все заключается в том, что конденсаторы не могут бесконечно долго хранить заряд и он в конце концов «стекает», Поэтому конденсаторы необходимо перезаряжать. Операция перезарядки называется Refresh или регенерацией. Происходит эта операция примерно каждые 2 мс и порой занимает до 10 % (а то и больше) рабочего времени процессора.

Важнейшей характеристикой DRAM является быстродействие, а проще говоря продолжительность цикла + время задержки + время доступа, где продолжительность цикла – время, затраченное на передачу данных, время задержки – начальная установка адреса строки и столбца, а время доступа – время поиска самой ячейки. Измеряется эта фигня в наносекундах (одна миллиардная доля секунды). Современные микросхемы памяти имеют быстродействие ниже 10 мс.

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

Изм.

Лист

№ докум.

Подпись

Дата

Лист

ППП ПИ 23.00.00 ТО

А теперь поняв как работает оперативная память, разберемся, зачем же она вообще нужна. После процессора, оперативную память можно считать самым быстродействующим устройством. Поэтому основной обмен данными и происходит между этими двумя девайсами. Вся информация в персональном компьютере хранится на жестком диске. При включении компа в ОЗУ (Оперативное Запоминающее Устройство) с винта записываются драйвера, специальные программы и элементы операционной системы. Затем туда будут записаны те программы – приложения, которые Вы будете запускать. При закрытии этих программ они будут стерты из ОЗУ. Данные, записанные в оперативной памяти, передаются в CPU (Central Processing Unit), там обрабатываются и записываются обратно. И так постоянно: дали команду процессору взять биты по таким то адресам, как то их там обработать и вернуть на место или записать на новое – он так и сделал.

Все это хорошо, до тех пор, пока ячеек ОЗУ хватает. А если нет? Тогда в работу вступает файл подкачки. Этот файл расположен на жестком диске и туда записывается все, что не влезает в ячейки оперативной памяти. Поскольку быстродействие винта значительно ниже ОЗУ, то работа файла подкачки сильно замедляет работу системы. Кроме этого, это снижает долговечность самого жесткого диска.

Увеличение объема памяти не приводит к увеличению ее быстродействия. Изменение объема памяти ни как не повлияет на ее работу. А вот если рассматривать работу системы, то тут дело другое. В том случае, если Вам хватает объема оперативной памяти, то увеличение объема не приведет к увеличению скорости работы системы. Если же ячеек ОЗУ не хватает, то увеличение их количества (проще говоря добавление новой или замене старой на новую с большим объемом линейки памяти) приведет к ускорению работы системы.

Изм.

Лист

№ докум.

Подпись

Дата

Лист

ППП ПИ 23.00.00 ТО

Изм.

Лист

№ докум.

Подпись

Дата

Лист

ППП ПИ 23.00.00 ТО

Интернет ресурсы

http://nikesina.ucoz.ru/

http://www.whatis.ru/

http://wiki.mvtom.ru/

http://www.teryra.com/

http://smartronix.ru/

http://allrefs.net/

http://sonikelf.ru/

http://beginpc.ru/

Список литературы

Практическое руководство системного администратора. (2012)

Эндрю Таненбаум, Тодд Остин - Архитектура компьютера (2013)

Адресация операндов в командах программы может быть:

l непосредственной;

l косвенной;

l ассоциативной;

l неявной.

Непосредственная адресация заключается в указании в команде самого значения операнда, а не его адреса.

Прямая адресация состоит в указании в команде непосредственно абсолютного или исполнительного адреса операнда. Прямая адресация регистра состоит в указании его имени.

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

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

Неявная адресация - адреса операнда в команде не указано, но он подразумевается кодом операции.

Адресация ячеек основной памяти ПК имеет две важных разновидности: относительную и стековую.

Относительная адресация

Абсолютный (A инд) адрес формируется как сумма адресов исполнительного (Aисп) и сегментного (A сегм):

A абс = A сегм + A исп.

A сегм - 20-битовый начальный адрес сегмента , который является увеличенным в 16 раз (сдвинутым на 4 бита влево) 16-битовым адресом сегмента A" сегм, хранящемся в одном из 16-битовых сегментных регистров. Начальный адрес сегмента в таком варианте всегда кратен 16 байтам, и он может быть полностью идентифицирован значением A" сегм (сегмент всегда состоит из целого числа параграфов, а параграф равен 16, то есть:

A сегм = 16 · A" сегм = A" сегм 0000.

16-битовый исполнительный адрес может в ПК представлять собой сумму 3-х адресов:

A исп = A смещ [+A баз ][+A инд ]

l A смещ - 16-битовый адрес смещения относительно начала сегмента (или относительно базы, если есть A баз);



l A баз - 16-битовый адрес смещения базы адреса операнда относительно начала сегмента;

l A инд - адрес индекса (или просто индекс) - дополнительная составляющая адреса операнда, использующаяся часто при программировании циклических процессов с массивами и таблицами. Индекс должен быть непосредственно задан в соответствующем регистре МПП.

При адресации данных могут использоваться все составляющие адреса:

A абс данных = A сегм + A исп = A сегм + A смещ [+A баз ][+A инд ]

A сегм = 16 A" сегм, A" сегм берется из регистра DS по умолчанию или из регистра ES, если это указано в программе. A баз и A инд берутся, соответственно, из регистров BX и индексных (SI или DI), а A смещ в явном или неявном виде указываются в программе.

При адресации команд программы могут использоваться только две составляющие адреса:

A абс команд = A сегм + A исп = A сегм + A смещ

A" сегм берется из регистра CS, а A смещ - из регистра IP.

Стековая адресация

В стековой памяти (стеке) доступ к ячейкам памяти не произвольный, а по принципу «последний записанный операнд первым считывается» (FILO).

A абс стека = A сегм + + A смещ

16-битовый адрес сегмента A" сегм берется из регистра SS, смещения относительно начала сегмента стека автоматически считываются из регистров BP (смещение базы стека - A баз) и SP (смещение активной ячейки стека, в которую записывается или из которой считывается информация, - «вершины стека» относительно базы - A смещ).

В защищенном (многопрограммном) режиме работы микропроцессора начальные адреса сегментов хранятся в таблицах дескрипторов и имеют длину 24 или 32 бита (в зависимости от типа МП) В сегментных регистрах в этом режиме хранятся селекторы, содержащие адресные ссылки на соответствующие таблицы дескрипторов.

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

1. Сформулируйте основные свойства алгоритма.

2. Рассмотрите способы записи алгоритма.

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

4. Рассмотрите возможные структуры машинных команд.

5. Поясните назначение системного и прикладного программного обеспечения.

6. Назовите основные режимы работы компьютеров и дайте им краткую характеристику.

7. Что такое прерывания работы программы и каково их назначение?

8. Назовите и поясните виды прерываний.

9. Рассмотрите последовательность действий машины при выполнении прерывания.

10. Назовите виды и особенности адресации ячеек памяти в ПК.

11. Напишите формулу для расчета абсолютного адреса данных.

12. Какие регистры микропроцессорной памяти используются для адресации данных?

13. Напишите формулу для расчета абсолютного адреса команды программы.

14. Какие регистры микропроцессорной памяти используются для адресации команд программы?

15. Напишите формулу для расчета адреса стека.

16. Какие регистры микропроцессорной памяти используются для адресации ячеек стековой памяти?


Глава 19.Элементы программирования на языке Ассемблер

После изучения главы студент должен знать:

· -назначение и области использования языка Ассемблера;

· -основные компоненты языка;

· -основные команды, директивы, модификаторы;

· -адресацию регистров МПП и ячеек памяти в ассемблере;

· -программирование процедур вывода информации на дисплей и ввода информации с клавиатуры;

· -структуру ассемблерной программы;

· -процедуры формирования программы формата EXE;

· -назначение, команды и варианты использования отладчика программ Debug.

Пользователь компьютера, равно как и прикладной программист, программы составляет, как правило, на машинно-независимом алгоритмическом языке высокого уровня (Basic, Pascal, FORTRAN, C, PROLOG и др.), однако иметь представление об основах программирования и на машинно-ориентированных языках грамотному пользователю весьма полезно для:

l лучшего понимания архитектуры ПК и более грамотного использования компьютеров; для разработки более рациональных структур алгоритмов и программ решения прикладных задач;

l возможности просмотра и корректировки исполняемых программ с расширениями EXE и COM, компилированных с любых языков высокого уровня, в случае утраты исходных программ (вызвав указанные программы в отладчик программ DEBUG и деассемблировав их, можно получить их отображение на языке Ассемблера);

l составления программ решения наиболее ответственных задач (машинная программа, подготовленная на машинно-ориентированном языке, обычно эффективнее (короче и быстрее на 30–60%) программ, полученных в результате трансляции с языков высокого уровня) и для реализации процедур, включаемых в основную программу в виде отдельных фрагментов в том случае, если они не могут быть реализованы ни на используемом языке высокого уровня.

Основные компоненты языка ассемблер

Алфавит языка

Алфавит языка составляют символы ASCII:

l буквы от А до Z (или от а до z, строчные и прописные буквы в ассемблере не различаются);

l цифры от 0 до 9;

l специальные символы: @, $, ?, ., _,–, +, *, ", “, ; ,: и др.

Из букв, цифр и символов: @, $, ?, .,_ формируются:

l простые сообщения: имена (идентификаторы) процедур (подпрограмм), переменных, директив, команд (метки), значения констант и переменных;

l составные сообщения: команды (операторы);

l директивы (псевдооператоры);

l модификаторы (операции).

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

Константы (числа и строки)

Только целые числа

Различают:

l двоичные числа; заканчиваются буквой В;

l десятичные числа; без специального окончания или заканчиваются буквой D;

l шестнадцатеричные числа; заканчиваются буквой Н.

Для обозначения цифр 10, 11, 12, 13, 14, 15 в шестнадцатеричной системе счисления используются, соответственно, буквы A, B, C, D, E, F; но начинаться шестнадцатеричные числа должны обязательно с цифры, например: выражение F19Н - не число, а идентификатор, правильно число надо записать так: 0F19Н.

Запись отрицательных чисел:

l десятичные числа записываются обычным образом, просто со знаком: –32, –32D;

l двоичные числа записываются только в дополнительном модифицированном коде: –32D ® 11.100000B, –19D ® 11.01101B;

l шестнадцатеричные числа записываются только в дополнительном коде:

l –32D выглядит как 1.E0H, –119D - как 1.89H.

Строки (литералы)

Строки символов: включают в себя любые буквы, цифры и символы, но заключаются в кавычки: "ПК IBM PC с микропроцессором Pentium D ".

Команды (операторы)

Формат команды:

[Метка [:]] КОП [Операнд] [,Операнд] [;Комментарий].

Между элементами команды вставлены пробелы. Здесь и далее элементы, заключенные в квадратные скобки, необязательны.

КОП (Код ОПератора) - мнемокод команды (состоит из 2–6 букв). Может быть до 256 различных кодов (в ассемблере IBM PC их число изменяется в зависимости от типа МП).

Операнд - явно заданный адрес (прямой или косвенный); имя метки, переменной; само значение переменной; ассоциативный признак. Количество необходимых в команде операндов ассемблер узнает по КОП. В большинстве двухадресных команд присутствуют операнды приемника (dst - destination) и источника (src - source); источник не изменяет своего содержания, в приемнике 1-е число, участвующее в операции, заменяется результатом.



Рекомендуем почитать

Наверх