ВУЗ:
Составители:
Рубрика:
а DI — адрес приемника данных (dst). При этом после каждой пересылки
одного операнда их содержимое автоматически увеличивается (или
уменьшается — это как задано направление), подготавливая адреса
транспортировки очередного операнда.
Другая группа регистров называется сегментной (RS) и тоже участвует в
формировании физического адреса. Обычно в других мощных
микропроцессорах, где адресное пространство от 1 Мбайт до 4 Гбайт, роль
сегментного регистра выполняет регистр с одним именем. И это, в общем-то,
достаточно. Но фирма Intel — не как все, и в данном микропроцессоре их
четыре. Главное назначение сегментных регистров — расширение адресного
пространства. Сегментные регистры — те же 16-разрядные регистры, как и
адресные. Но их содержимое гораздо «тяжелее»: A19...A4.
Физический адрес ОЗУ/ПЗУ автоматически вычисляется в результате
следующего сложения:
RS: A
19
A
18
A
17
A
16
A
15
A
14
A
13
A
12
A
11
A
10
A
9
A
8
A
7
A
6
A
5
A
4
0
0
0
0
+
ЕА:
0 0 0 0
A
15
A
14
A
13
A
12
A
11
A
10
A
9
A
8
A
7
A
6
A
5
A
4
A
3
A
2
A
1
A
0
———————————————————————————————————————
Add:A
19
A
18
A
17
A
16
A
15
A
14
A
13
A
12
A
11
A
10
A
9
A
8
A
7
A
6
A
5
A
4
A
3
A
2
A
1
A
0
Для удобства, чтобы не писать длинные двоичные числа, далее будут
использоваться их шестнадцатеричные свертки. Так, например, двоичное число
1110 1111 0010 1100 есть EF2C в шестнадцатеричном коде (Н-коде).
(Рекомендуется иметь постоянно под рукой таблицу перевода десятичных
чисел от «0» до «15» в двоичную и шестнадцатеричную формы).
Следовательно, если в сегментном регистре находится число 1CDO, а
ЕА= F156, то физический адрес на шине адреса системной магистрали будет:
1CDO
+ F156
—————
2BE56
На рисунке 3 видно, что выходы сегментных регистров тоже
мультиплексируются. Почему их четыре и когда они используются? Для начала
необходимо обратить внимание, что последняя буква у них S, что значит —
сегментный. Теперь разберемся с первыми буквами.
C – command —командный. CS используется при формировании только
выборок команд из ЗУ совместно с IP (указывают: CS:IP);
S — stack — стековый. SS используется только при формировании адреса
стековой памяти (стека) совместно с SP (указывают: SS:SP) или BP (SS:BP);
D – data — данные. DS по умолчанию используется в пересылках данных
между микропроцессором и ЗУ совместно с адресом ЕА этих данных,
указанных прямо или косвенно в команде;
ES — резервный сегментный регистр. На этом пока можно закончить
знакомство с сегментными регистрами.
16
а DI — адрес приемника данных (dst). При этом после каждой пересылки
одного операнда их содержимое автоматически увеличивается (или
уменьшается — это как задано направление), подготавливая адреса
транспортировки очередного операнда.
Другая группа регистров называется сегментной (RS) и тоже участвует в
формировании физического адреса. Обычно в других мощных
микропроцессорах, где адресное пространство от 1 Мбайт до 4 Гбайт, роль
сегментного регистра выполняет регистр с одним именем. И это, в общем-то,
достаточно. Но фирма Intel — не как все, и в данном микропроцессоре их
четыре. Главное назначение сегментных регистров — расширение адресного
пространства. Сегментные регистры — те же 16-разрядные регистры, как и
адресные. Но их содержимое гораздо «тяжелее»: A19...A4.
Физический адрес ОЗУ/ПЗУ автоматически вычисляется в результате
следующего сложения:
RS: A19A18A17A16A15A14A13A12A11A10A9A8A7A6A5A40 0 0 0
+
ЕА: 0 0 0 0 A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0
———————————————————————————————————————
Add:A19A18A17A16A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0
Для удобства, чтобы не писать длинные двоичные числа, далее будут
использоваться их шестнадцатеричные свертки. Так, например, двоичное число
1110 1111 0010 1100 есть EF2C в шестнадцатеричном коде (Н-коде).
(Рекомендуется иметь постоянно под рукой таблицу перевода десятичных
чисел от «0» до «15» в двоичную и шестнадцатеричную формы).
Следовательно, если в сегментном регистре находится число 1CDO, а
ЕА= F156, то физический адрес на шине адреса системной магистрали будет:
1CDO
+ F156
—————
2BE56
На рисунке 3 видно, что выходы сегментных регистров тоже
мультиплексируются. Почему их четыре и когда они используются? Для начала
необходимо обратить внимание, что последняя буква у них S, что значит —
сегментный. Теперь разберемся с первыми буквами.
C – command —командный. CS используется при формировании только
выборок команд из ЗУ совместно с IP (указывают: CS:IP);
S — stack — стековый. SS используется только при формировании адреса
стековой памяти (стека) совместно с SP (указывают: SS:SP) или BP (SS:BP);
D – data — данные. DS по умолчанию используется в пересылках данных
между микропроцессором и ЗУ совместно с адресом ЕА этих данных,
указанных прямо или косвенно в команде;
ES — резервный сегментный регистр. На этом пока можно закончить
знакомство с сегментными регистрами.
16
Страницы
- « первая
- ‹ предыдущая
- …
- 14
- 15
- 16
- 17
- 18
- …
- следующая ›
- последняя »
