Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Дробно-адресная архитектура

Сравнительный анализ ЭВМ различной адресности.

ВСТЕК (S)

ИЗСТЕКА А1

ВСТЕК А1

Адресность ЭВМ.

Адресность ЭВМ – это число адресов в команде. Разные архитектуры предполагают различные адресности команд.

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

Трехадресная архитектура:

КОП А1 А2 А3  
1 байт 3 байта 3 байта 3 байта = 10 байт

Схема выполнения команд:

R1:=<A2>; R2:=<A3>

S:=R1 R2; <A1>:=S

Двухадресная архитектура:

КОП А1 А2  
1 байт 3 байта 3 байта = 7 байт

Схема выполнения команд:

R1:=<A1>; R2:=<A2>

S:=R1 R2; <A1>:=S

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

Одноадресная архитектура:

КОП А1  
1 байт 3 байта = 4 байта

Схема выполнения команд:

R1:=<A1>; S:= S R1

Для выполнения бинарных операций в одноадресной ЭВМ необходимы еще две команды – чтения числа из памяти на регистр сумматора и записи значения из сумматора в память. Только второй операнд задается явно, а первый операнд и результат – неявно (регистр сумматора).

СЧ А1 (операция чтения числа из памяти на регистр сумматора)

S:=<A1>

ЗП А1 (операция записи в память содержимого сумматора)

<A1>:=S

Общая схема:

CЧ А1 (задаем первый операнд)

S:=<A1>

R1:=<A1> (это второй операнд, а первый операнд – регистр сумматора)

S:=S R1 (выполняем операцию и получаем результат – на регистр сумматора)

ЗП А1 (записываем результат в память)

<A1>:=S

Безадресная архитектура:

КОП  
1 байт = 1 байт

Для выполнения операций используется аппаратно реализованный стек. Для работы со стеком вводятся две дополнительные одноадресные команды – запись из памяти в стек и чтение из стека.

Команда записи в стек:

Она выполняется по схеме: R1:=<A1>; ВСТЕК(R1).

Команда чтения из стека:

Она выполняется по схеме: ИЗСТЕКА(R1); <A1>:=R1

Схема выполнения команд:

R1:=ИЗСТЕКА

R2:=ИЗСТЕКА

S:=R1 R2

Рассмотрим оператор присваивания: x:=a/(a+b)^2

Трехадресная:

СЛ x a b x: = a+b
УМН x x x x: = (a+b)2
ДЕЛx a x x: = a /(a+b)2

Длина программы: 3*10=30 байт

Двухадресная:

ПЕР R a R: = a
СЛ R b R: = a+b
УМН R R R: = (a+b)2
ПЕР x a x: = a
ДЕЛx R x: = a/(a+b)2

Длина программы: 5*7=35 байт

Одноадресная:

СЧ a S: = a
СЛ b S: = a+b
ЗПx x:=a+b
УМН x S: = (a+b)2
ЗП x x: = <S>
СЧ a S: = a
ДЕЛx S: = a/(a+b)2
ЗПx x: = <S>

Длина программы: 8*4=32 байта

Безадресная:

ВСТЕКa поместить а в стек
ВСТЕК дублируем вершину стека
ВСТЕКb помещаем в стек b; в стеке теперь b, a, a
]]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0]]]=======0=СЛ в стеке теперь b+a, a
ВСТЕК дублируем вершину стека
УМН в стеке (b+a)2, a
ОБМЕН поменять местами два верхних элемента стека
ДЕЛ в стеке a / (b+a)2
ИЗСТЕКАx запись результата из стека в x

 

Длина программы: 3*4+6=18 байт

Данную архитектуру также называют архитектурой с адресуемыми регистрами. Такая архитектура нарушает один из принципов Фон Неймана – принцип однородности памяти.

В компьютерах с дробно-адресной архитектурой память делится на 2 части:

адресуемая регистровая память (она имеет небольшой объем);

- основная память (имеет большой объем);

Ячейки каждого из видов памяти имеют собственную независимую адресацию.

Для регистровой памяти адрес имеет размер в несколько раз меньшей, чем для основной памяти.

Пример: Двухадресная ЭВМ.

16 ячеек регистровой памяти.

2^20 – размер основной памяти.

2^24 – вся память.

Адреса – 4 бита.

В такой ЭВМ в качестве адресов операндов могут быть либо адреса 2-х регистров, либо регистр и ячейка основной памяти.

КОП R1 R2
1 байт 1 байт

 

КОП R1 A2
1 байт 4 бита 20 бит

 

<== предыдущая лекция | следующая лекция ==>
Тургенев | Взгляды западников и славянофилов на будущее России
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 614; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.015 сек.