Шпаргалки (двухсторонние) по курсу «Архитектура эвм»





НазваниеШпаргалки (двухсторонние) по курсу «Архитектура эвм»
страница7/11
Дата публикации21.08.2013
Размер1.25 Mb.
ТипДокументы
100-bal.ru > Информатика > Документы
1   2   3   4   5   6   7   8   9   10   11

29. Особенности уровня команд Pentium II
Архитектура Pentium II обеспечивает обратную совместимость вплоть до 16-битных процессоров Intel 8086/8088. Их последователь 80286 также был 16-разрядным, но имел 20-разрядную адресную шину и соответственно большее адресное пространство - 210. Оно не было линейным. Адрес состоял из 16-разрядного номера сегмента и 16-разрядного смещения. Для нахождения абсолютного адреса номер сегмента сдвигается влево на 4 разряда и складывается со смещением.

Процессор 80386 - первая 32-разрядная машина фирмы Intel.

Pentium II имеет три режима работы, в двух из которых он работает как 8086. В реальном режиме отключаются все особенности, добавленные к процессору со времен 8086/8088. Если программа совершает ошибку, то происходит полный отказ системы. На следующей ступени находится виртуальный режим 8086, в котором программы для 8086/8088 выполняются с защитой. Для запуска программы операционная система создает изолированную среду, в результате при программном сбое управление передается операционной системе.

Наконец, защищенный режим предоставляет программам все возможности системы команд. В этом режиме доступны 4 уровня привилегий, которые управляются битами в регистре флагов. Уровень 0 соответствует привилегированному режиму на других компьютерах и имеет полный доступ к машине. Он используется лишь операционной системой. Уровень 3 предназначен для пользовательских программ. Уровни 1,2 используются редко. Pentium II имеет огромное адресное пространство. Память разделена на 16384 сегмента, каждый из которых содержит адреса от 0 до 265-1. Однако большинство операционных систем (включая UNIX и все Windows) поддерживают только один сегмент, поэтому большинство прикладных программ видят линейное пространство в 232 байтов, часть которого занимает сама ОС. Слова состоят из 4-х байтов (не путать с типом WORD), байты в слове нумеруются справа налево.

Pentium II имеет ряд регистров. В компьютерах 8088 и 80286 были только 8- и 16-битные регистры, в 80386 появились 32-разрядные. Для поддержки совместимости каждый пользовательский 32-битный регистр содержит в своей младшей части свою 16-битную версию. Имя 32-битного регистра получается добавлением префикса E (Extended) к имени соответствующего 16-битного.

К ним в первую очередь относятся четыре 32-битных регистра EAX, EBX, ECX, EDX. Они являются РОН, но каждый имеет особенности: например, EAX - основной арифметический регистр; EBX предназначен для хранения указателей (адресов памяти); ECX связан с организацией циклов; EDX используется при умножении и делении - он совместно с EAX содержит 64-битные произведения и делимые.

Следующие три регистра также являются РОН, но имеют еще большую специализацию. Регистры ESI и EDI хранят указатели, особенно для команд манипулирования символьными цепочками. ESI указывает на входную цепочку, EDI - на выходную. Регистр EBP также содержит указатели. Обычно он используется для ссылки на текущий фрейм локальных переменных в стеке. (на обороте…)

30. Особенности уровня команд UltraSPARC II
Изначально система SPARC имела 32-разрядную архитектуру, но UltraSPARC - 64-разрядные машины. Структура памяти UltraSPARC II представляет собой линейный массив 264 байтов. Это настолько большое число, что в настоящее время реализовать такой объем памяти невозможно. Современные реализации имеют ограничения на объем памяти, к которой они могут обращаться (244 байтов у UltraSPARC II). Байты в слове нумеруются слева направо, но этот порядок можно изменить на противоположный, установив соответствующий бит в регистре флагов.

В системе UltraSPARC II имеется две группы 64-битных регистров по 32 в каждой: регистры общего назначения и регистры с плавающей точкой. Регистры общего назначения называются R0-R31, но в некоторых контекстах имеют другие названия. Все они, кроме R0, могут считываться и записываться с помощью различных команд. Их использование частично оговаривается соглашениями, частично основано на их обработке аппаратурой. Отклоняться от этих функций без необходимости не рекомендуется:

R0 (другое название - G0) всегда содержит значение 0;

R1-R7 (G1-G7) содержат глобальные переменные;

R8-R13 (O0-O5) содержат выходные параметры вызываемой процедуры;

R14 (SP) - указатель стека;

R15 (O7) - временный регистр;

И другие регистры.

В действительности процессор UltraSPARC II имеет более чем 32 РОН, но в каждый момент времени программе видны только 32 из них. Эта система регистровых окон предназначена для повышения эффективности вызова процедур. Основная ее идея - имитировать работу стека с помощью регистров. Существует несколько наборов регистров подобно нескольким фреймам в стеке. Специальный регистр CWP (Current Window Pointer) указывает на текущий набор РОН. Команда вызова процедуры скрывает старый набор регистров и путем изменения CWP предоставляет новый набор, который может использовать вызываемая процедура. Некоторые регистры переносятся из старого набора, меняя свои имена. Например, регистры R8-R15 старого набора становятся регистрами R24-R31 нового набора. Восемь глобальных регистров не меняются.

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

Имеющиеся в системе UltraSPARC II регистры с плавающей точкой могут содержать 32-битные (одинарная точность) или 64-битные (двойная точность) значения. Возможно также использование пар этих регистров для поддержки 128-битных значений. (на обороте…)

31. Особенности уровня команд JVM
Это 32-разрядная машина, ее память можно рассматривать как массив 4 294 967 296 байтов. Память содержит 4 основные области: набор констант, фрейм локальных переменных, стек операндов и область процедур. На эти области указывают соответственно регистры СРР (Constant Pool Pointer), LV (Local Variable), SP (Stack Pointer) и PC (Program Counter) или их аналоги. Доступ к памяти осуществляется только по смещению от одного из этих регистров; указатели (связано с безопасностью). Область набор констант загружается один раз при загрузке программы (или объекта) и после этого не меняется. Фрейм локальных переменных предназначен для хранения переменных во время выполнения процедуры. В его начале располагаются параметры процедуры. Очевидно, содержимое LV меняется при вызове процедур. Стек операндов содержит операнды и результаты выполняемых команд. Его размер не должен превышать определенного предела, который заранее вычисляется компилятором Java. В отличие от регистров СРР и LV, указатель стека операндов меняется во время выполнения процедуры, поскольку операнды команд помещаются в стек и выталкиваются из него. Область процедур содержит выполняющуюся программу. Ее указатель называется счетчиком команд. Область процедур представляет собой массив байтов, в то время как предыдущие участки памяти считаются массивами слов. Область локальных переменных меняется с каждой процедурой, поэтому каждая вызываемая процедура имеет собственные 64 Кбайт для своих локальных переменных. Точно так же набор констант распространяется только на определенный Java-класс, поэтому каждый из них имеет собственные 64 Кбайт. В JVM не предусмотрено статического места для больших массивов и других структур данных, например списков и деревьев. Именно поэтому в JVM имеется дополнительная область памяти – “куча” (Heep), специально предназначенная для хранения динамических объектов. Когда специальная система определяет, что “куча” почти заполнилась, она вызывает программу чистки памяти (сборщик мусора), которая ищет и освобождает ненужные объекты. JVM не содержит регистров общего назначения, которые могут загружаться или сохраняться пользовательской программой. В машине picoJava II имеются 25 32-битных регистров. Четыре из них по функциям соответствуют вышеупомянутым PC, LV, SP и СРР. Регистр OPLIM содержит определенное предельное значение для SP. Если значение SP вы­ходит за пределы OPLIM, то происходит прерывание. Регистр FRAME отмечает конец фрейма локальных переменных и указывает на слово, которое содержит счетчик команд вызывающей процедуры. Среди других регистров можно упомянуть слово состояния программы - это регистр, который следит, насколько заполнен 64-регистровый стековый кэш, и четыре регистра, которые используются для управления потоком выполнения. Кроме того, существуют 4 регистра для ловушек и прерываний и 4 регистра для вызова процедур и возвращения значений в командах, полученных трасляцией с С и C++ (они поддерживаются picoJava, но не JVM). PicoJava II не имеет виртуальной памяти. Поэтому для ограничения памяти, к которой может иметь доступ текущая программа на С или C++, используются два специальных регистра. JVM - машина со стековой организацией. Такая машина дает простую и легко компилируемую архитектуру команд. У машины со стековой организацией есть недостаток - потре­бность в большом количестве обращений к памяти. Как говорилось в разделе 4.4.3, эта проблема решается специальными средствами микроархитектурного уровня. Хороший эффект в этом плане дает также применение кэш-памяти.

32. Типы данных. Принципы разработки форматов команд
Компьютерные программы занимаются обработкой данных различных типов. Типы данных существуют не только на уровне пользовательских программ. Они в какой-либо форме должны быть представлены и на уровне архитектуры команд.

Среди числовых типов данных наиболее популярны целые числа. Они бывают различной длины - обычно 8, 16, 32 и 64 бита. В большинстве современных компьютеров целые числа хранят­ся в двоичной системе. Многие компьютеры поддерживают целые числа со знаком и без знака. В целом числе без знака все биты содержат данные. Например, 32-битное слово может содержать целое число от 0 до 232-1 включительно. Двоич­ное целое число со знаком может содержать числа только до 231-1, но зато включает и отрицательные числа.

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

Кроме того, важными являются значения булевой алгебры (истина и ложь). Теоретически эти значения может представлять один бит. Однако, поскольку отдельные биты не имеют собственных адресов, на практике используется байт или даже слово. Часто применяется следующее соглашение: 0 означает ложь, а все остальное - истину. Бывают ситуации, когда булево значение представляется 1 битом, - это когда имеется массив значений. Такая структура данных называется битовой картой.

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

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

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

33. Форматы команд профессора Pentium II
Форматы команд Pentium II сложны и нерегулярны. Они содержат до шести полей разной длины. Эта ситуация сложилась из-за того, что архитектура Intel развивалась на протяжении нескольких поколений, и в нее изначально были включены не самые удачные характеристики. Позднее их нельзя было изменить из-за требования обратной совместимос­ти.

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

Фиксированные биты в кодах операций процессора Pentium II дают мало информации о команде. В ряде команд информативными являются младший бит кода опера­ции, который задает длину операнда - байт или слово (b/w), а также соседний слева бит, который указывает, является ли адрес памяти (если он есть) источником (s) или приемником (d). Таким образом, в большинстве случаев код операции должен быть полностью декодиро­ван, чтобы установить, к какому классу относится текущая операция, и, следовательно, какова длина данной команды. Это снижает производительность, поскольку необходимо декодировать текущую команду, прежде чем удастся прочитать следующую.

В большинстве команд за байтом кода операции следует байт состояния (MODE), который сообщает информацию об адресации операндов. Эти 8 битов распределены в 2-битном поле MOD и двух 3-битных регистровых полях REG и R/M (иногда первые три бита этого байта используются для расширения кода операции). 2-битный размер поля MOD означает, что существует только 4 способа обращения к операндам. Один из операндов всегда должен быть регис­тром. Кроме того, правила кодирования команд запрещают некоторые комбинации регистров, поскольку они используются для особых случаев. В не­которых типах команд требуется дополнительный байт, называемый SIB (Scale, Index, Base - масштаб, индекс, база), который дает дополнительную специфи­кацию адреса операнда. Эта схема громоздка, но она является компромиссом между требованием обратной совместимости и желанием добавлять новые особенности, которые не были предусмотрены изначально.

Кроме сказанного, некоторые команды имеют 1, 2 или 4 дополнительных байта для определения адреса (смещение), а иногда еще 1, 2 или 4 байта, содер­жащих константу (непосредственный операнд).

34. Форматы команд процессора UltraSPARC II
Процессор UltraSPARC II имеет архитектуру выровненных в памяти 32-битных команд. Типичная команда содержит два регистра-операнда и один выходной регистр. Вместо одного из регистров может использоваться константа со знаком. При выполнении команды LOAD два регистра (или один регистр и 13-битная константа) складываются для определения считываемого адреса памяти. Данные из нее записываются в другой указанный регистр.

Изначально машина SPARC имела ограниченное число форматов команд. Со временем добавлялись новые, и их число уже превышает 30. Большинство новых форматов было получено путем изымания нескольких битов из какого-нибудь поля. Например, изначально для команд перехода использовался формат 3 с 22-битным смещени­ем. Когда были добавлены прогнозируемые переходы, 3 из 22 битов изъяли: один из них стал использоваться для прогнозирования (совершать или не совер­шать переход), а два оставшихся определяли, какой набор битов условного кода нужно использовать. В результате получилось 19-битное смещение.

Первые два бита каждой команды помогают определить формат команды и сообщают о местонахождении оставшейся части кода операции, если она есть. В формате 1а оба операнда-источника представляют собой регист­ры; в формате lb один источник - регистр, второй - константа в промежутке от -4096 до +4095. Бит 13 определяет один из этих двух форматов. В обоих случаях приемником всегда является регистр. Достаточный объем пространства кода операции обеспечен для 64 команд, некоторые из которых сохранены на будущее.

Поскольку все команды 32-битные, включить в команду 32-битную константу невозможно. Поэтому команда SETHI устанавливает 22 бита, оставляя пространство для другой команды, чтобы установить оставшиеся 10 битов. Это единственная команда, которая использует данный формат.

Для непрогнозируемых условных переходов используется формат 3, в котором поле УСЛОВИЕ определяет, какое условие нужно проверить. Прогнозируе­мые переходы используют тот же формат, но только с 19-битным смещением, как было сказано выше.

Последний формат применяется для команды вызова процедуры (CALL). Только в ней для определения адреса требуется 30 битов. Она имеет 2-битный код операции. Требуемый адрес - это целевой адрес, разделенный на четыре.
1   2   3   4   5   6   7   8   9   10   11

Похожие:

Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconУчебной дисциплины «Архитектура ЭВМ и вычислительных систем» предназначена...
Учебная дисциплина «Архитектура ЭВМ и вычислительных систем» является общепрофессиональной дисциплиной, формирующей базовый уровень...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconПеречень тем для реферата
Архитектура ЭВМ. Принцип Неймана. Основные устройства эвм, их назначение и характеристики
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» icon«архитектура ЭВМ и систем» Новосибирск сгга содержание
Эвм различных классов; параллельные системы понятие о многомашинных и многопроцессорных вычислительных системах; матричные и ассоциативные...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconУчебно-методический комплекс дисциплины архитектура компьютера (Архитектура...
Рындина Татьяна Николаевна, ст преподаватель кафедры Физики, информатики и информационных технологий
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconТемы рефератов по дисциплине: “Архитектура эвм”

Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconРеферат по курсу: Архитектура вс на тему: Архитектура квантовых компьютеров
Квантовые компьютеры на основе молекул органических жидкостей с косвенным скалярным взаимодействием между ними и методов ядерного...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconРеферат по курсу: Архитектура вс на тему: Архитектура квантовых компьютеров
Квантовые компьютеры на основе молекул органических жидкостей с косвенным скалярным взаимодействием между ними и методов ядерного...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconАрхитектура эвм, ос, вирусы
В программа, выполняющая тестирование компьютерной системы после включения компьютера
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconКонспект лекций по курсу "Микропроцессоры и микро-эвм в Персональной...
Целью настоящего курса является дать понятие о микропроцессорах и однокристальных микро-эвм, области их применения, дать основы функционирования...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» icon«Архитектура эвм»
Цель дисциплины: формирование систематизированных знаний в области архитектуры компьютера, организации компьютерных систем, программирования...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconТехническое обеспечение кит реферат
Сша и предназначалась для баллистических расчётов при стрельбе. Первая отечественная цифровая ЭВМ «мэсм» создана в 1950 г. Ход развития...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconАрхитектура ЭВМ и систем конспект лекций
Обучающие: Учить детей понимать эмоциональное состояние героев постановки, придавать физическим действиям куклы максимум выразительности...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconРеферата. Список элементов библиографической записи
Максимов, Н. В. Архитектура ЭВМ и вычислительных систем [Текст]: учеб для вузов / Н. В. Максимов, Т. Л. Партыка, И. И. Попов. — М.:...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconРабочая программа дисциплины «архитектура ЭВМ и вычислительных систем» (наименование дисциплины)
Составлена в соответствии с государственными требованиями к минимуму содержания и уровню подготовки выпускников по специальности...
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» iconПрограмма по формированию навыков безопасного поведения на дорогах...
При этом на первый план выдвинулась концепция их взаимодействия. Так возникло принципиально новое понятие архитектура ЭВМ
Шпаргалки (двухсторонние) по курсу «Архитектура эвм» icon“Внешние устройства персонального компьютера.”
Пу обеспечить поступление в ЭВМ из окружающей среды программ и данных для обработки, а также выдачу результатов работы ЭВМ в виде,...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск