Chapter_04 (1110556), страница 3

Файл №1110556 Chapter_04 (Книга с сайта Баулы по главам) 3 страницаChapter_04 (1110556) страница 32019-04-28СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 3)

Это приводит к существенному усложнению центрального процессора, который отныне должен поддерживать значительно бόльшееколичество операций. Однако преимущества архитектуры с адресуемыми регистрами настолько очевидны, что её имеют большинство современных машин.В архитектуре с адресуемыми регистрами мы встречаемся с командами разного формата (и, соответственно, разной длины). Как говорится, современные ЭВМ обладают многообразием форматов команд. Например, на широко распространённых персональных компьютерах реализовано около десяти форматов команд, а длина команд составляет от 1 до 6 и более байт.Разумеется, с развитием вычислительной техники в компьютерах появилось и много новых особенностей, некоторые из которых мы рассмотрим далее в нашем курсе.4.4. Способы адресацииПерейдём теперь к изучению другого важного в архитектуре ЭВМ понятия.

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

Нам остаётся разобраться со способами адресации явных операндов.Для лучшего усвоения этого очень важного понятия модифицируем описанную нами ранее одноадресную учебную ЭВМ УМ-1, введя в её язык команды сложения целых чисел с разными способами адресации. Мнемоника кодов операций сложения будет указывать на способ адресации. Прямой способ адресацииS := S + <2>СЛ2При этом способе адресации (заметим, что только этот способ мы с Вами использовали до сихпор во всех учебных машинах) число на месте операнда задаёт адрес ячейки основной памяти, в котором и содержится необходимый в команде операнд. Мы будем, как обычно в угловых скобках обозначать содержимое ячейки основной памяти с данным адресом.

Так, в приведённом выше примере<2> обозначает содержимое ячейки с адресом 2. Важно понять, что в этой ячейке, конечно же, скорее всего, хранится не число 2. Непосредственный способ адресацииS := S + 2СЛН2При таком способе адресации поле адреса команды содержит, как говорят, непосредственныйоперанд. Таким образом, число 2 в нашем примере обозначает не ячейку памяти с адресом 2, а непосредственно целочисленное значение 2.

Разумеется, такие непосредственные операнды могут бытьтолько (неотрицательными) целыми числами, по величине не превышающими максимального значения, которое можно записать в поле адреса. Использование непосредственного метода адресации позволяет не располагать (целочисленные) константы в ячейках памяти, а помещать их внутрь команд,(на место адреса операнда), что может сильно сэкономить память.1 Косвенный способ адресацииS := S + <<2>>СЛК2Здесь число на месте операнда задаёт адрес ячейки памяти, содержимое которой, в свою очередь, трактуется как целое число – адрес необходимого операнда в памяти ЭВМ. Таким образом,число 2 в нашем примере является косвенным адресом операнда. При таком способе адресации длядоступа к операнду центральному процессору необходимо дважды обратиться к основной памяти.В качестве примера, для лучшего усвоения этого нового понятия, выполним несколько командсложения с различными способами адресации для некоторой гипотетической учебной одноадресной1Заметим, что это же позволяет лучше защитить константы от случайной порчи при ошибочной записи вте ячейки памяти, где расположены константы.

Это, разумеется, повышает надёжность программирования натаких ЭВМ. Само программирование на языке машины также упрощается, так как теперь не надо производитьраспределение памяти под хранение таких констант.8ЭВМ, и рассмотрим значение регистра сумматора S после выполнения этих команд (см. рис. 4.1). Вкомментариях к каждой команде показаны производимые этой командой действия. Справа на этомрисунке показаны первые ячейки памяти и хранимые в них целые числа.

В этом примере, как и внашей самой первой учебной машине УМ-3, мы предполагаем, что длина команды совпадает с длиной числа и длиной машинного слова.СЧСЛСЛНСЛК2;2;2;2;S:=<2>=3S:=S+<2>=6S:=S+2=8S:=S+<<2>>=S+4=12Адрес000001002003Значение1234Рис. 4.1. Значение регистра сумматора после выполненияодноадресных команд сложения с различными способами адресации.4.5.

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

Приведённая ниже таблица иллюстрирует многообразие форматов данных, для представления целых чисел на широкораспространённых персональных ЭВМ.Размер (байт)124Название форматаКороткое целоеДлинное целоеСверхдлинное целоеМногообразие форматов данных требует усложнения архитектуры как устройства управления(резко возрастает число команд в языке машины), так и арифметико-логического устройства, в частности, регистровой памяти. Теперь регистры должны уметь хранить, а само арифметико-логическоеустройство – обрабатывать данные разной длины.14.6.

Форматы командДля операций с разными способами адресации и разными форматами данных необходимо введение различных форматов команд, которые по-разному задают местонахождение и количествооперандов, и, естественно, имеют разную длину. Для широко распространённых сейчас двухадресных ЭВМ это такие форматы команд (в скобках указано их мнемоническое обозначение): регистр – регистр (RR); регистр – память, память – регистр (RX); регистр – непосредственный операнд в команде (RI); память – непосредственный операнд в команде (SI); память – память, т.е. оба операнда в основной памяти (SS).2Многообразие форматов команд и данных позволяет писать более компактные и эффективныепрограммы на языке машины, однако, как уже упоминалось, сильно усложняет центральный процессор ЭВМ.Возвращаясь к нашей учебной ЭВМ УМ-3 теперь можно, используя новые изученные понятия,сказать, что это трёхадресная машина с прямым способом адресации, одним форматом команд и одним форматом данных.1Заметим, однако, что каждая команда такой машины обычно обрабатывает операнды одинаковой длины.Использования для мнемонического обозначения операнда в памяти сразу двух букв X(RX) и S(SS)связано с особенностями выполнения команд этих форматов, надо не задумываться над этим, а просто запомнить.294.7.

Базирование адресовДля дальнейшего уменьшения объёма программы современные ЭВМ могут использовать новыйспособ адресации, основанный на принципе базирования адресов. Изучение этого важного и нового для нас понятия проведём на следующем примере. Пусть в программе на одноадресной учебноймашине УМ-1 необходимо реализовать арифметический оператор присваивания Z:=(X+Y)2. Нижеприведена эта часть программы с соответствующими комментариями (напомним, что S – это регистрсумматора одноадресной ЭВМ):...СЧ X;СЛ Y;ЗП R;УМ R;ЗП Z;...S:=XS:=X+YR:=X+Y – запись в рабочую переменнуюS:=(X+Y)2Z:=(X+Y)2Так как в нашей одноадресной учебной ЭВМ имеется 224 (примерно 16 миллионов) ячеек памяти, то будем, не теряя общности, считать, что наш фрагмент программы располагается где-то примерно в средине памяти.

Пусть, например, наши переменные при распределении памяти оказалисьпомещены соответственно в следующих ячейках памяти (как и ранее, адреса для удобства даны в десятичной системе счисления):XYZR––––ввввячейкеячейкеячейкеячейкессссадресомадресомадресомадресом10101010000000000000000001002003Тогда приведённый выше фрагмент программы после замены мнемонических обозначений переменных их адресами будут выглядеть следующим образом:СЧСЛЗПУМЗП...10 00010 00010 00010 00010 000...000;001;003;003;002;S:=XS:=X+YR:=X+YS:=(X+Y)2Z:=(X+Y)2Из этого примера видно, что большинство адресов в нашей программе можно представить в виде выражения B+, где число B назовём базовым адресом программы или просто базой (в нашемслучае B=10 000 000), а число  – смещением адреса относительно этой базы.

Здесь налицо существенная избыточность информации в программе. Очевидно, что в каждой команде можно указывать только короткое смещение , а базу хранить отдельно (обычно на каком-то специальном базовом регистре центрального процессора). Исходя из этих соображений, предусмотрим в машинномязыке нашей одноадресной ЭВМ команду загрузки базы (длина этой команды 4 байта):ЗГБ8 битA124 битаТогда наш фрагмент программы будет иметь такой вид:...ЗГБ 10000000...СЧ 000; S:=XСЛ 001; S:=X+YЗП 003; R:=X+YУМ 003; S:=(X+Y)2ЗП 002; Z:=(X+Y)2...Как видим, в большинстве команд можно теперь вместо длинного адреса ячейки памяти указывать только короткое смещение  этой ячейки относительно базы. Это позволит значительноуменьшить размер программы.

Характеристики

Тип файла
PDF-файл
Размер
536,05 Kb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6384
Авторов
на СтудИзбе
308
Средний доход
с одного платного файла
Обучение Подробнее