Программная модель микропроцессора К1810ВМ86
На рис. 2.2 представлена программная модель МП К1810ВМ86. МП имеет регистры общего назначения, составляющие группу из четырех 16-разрядных регистров (АХ, ВХ, СХ, DX), каждый из которых может рассматриваться как два 8-разрядных, поскольку старшие и младшие половины адресуются отдельно, и группу из четырех 16-разрядных индексных регистров. Регистр АХ используется преимущественно как аккумулятор, причем все операции ввода/вывода в УВВ производятся с использованием регистра АХ. Регистр АL соответствует регистру аккумулятора А МП К580ВМ80А. Регистр ВХ, как правило, используется как базовый регистр для относительной адресации или базирования. Его содержимое складывается с содержимым сегментного регистра DS. Регистр ВХ можно рассматривать как аналог регистров Н BL МП К580 серии, причем регистр ВН соответствует регистру Н, а регистр ВL - регистру L.
Старший байт младший байт
AX AH AL Аккумулятор
BX BH BL База
CX CH CL Счетчик
DX DH DL Данные
регистры DI Индекс приемника
РС Программный счетчик
F FH FL Регистр признаков
Сегментные CS команд
SS стека
00000Н 0000H
Порты ввода Адресное 64 К
пространство FFFFH
0000H
Порты вывода 64К
FFFFFH FFFFH
Рис. 2.2. Программная модель МП К1810ВМ86 Регистр СХ используется как счетчик в операциях сдвигов и в операциях с цепочками байтов и слов. Регистры СН и СL эквивалентны соответственно регистрам В и С МП К580 серии. Регистры DX используются в командах умножения и деления, а также для хранения адресов портов ввода/вывода в командах с косвенной адресацией.
Все перечисленные регистры могут быть использованы для хранения 8- или 16-разрядных операндов во всех арифметических и логических операциях. Группа индексных регистров включает 16-разрядные регистры SР,ВР,SI и DI. Регистр SР используется как указатель базы для адресации данных в сегменте стека. Регистры SI и DI чаще всего применяются в операциях с цепочками данных. Все перечисленные регистры могут быть использованы как РОНы для хранения 16-разрядных операндов во всех арифметических и логических операциях. На рис. 2.3 приведен формат 16-разрядного регистра признаков F. Первые 8 младших разрядов полностью соответствуют содержимому регистра микропроцессора К580 серии.
15 11 10 9 8 7 6 4 2 0
Х Х Х Х O D I T S Z Х A Х P Х C
Pис. 2.3. Содержимое регистра признаков F
С - признак переноса “1” из старшего байта (слова) или при заеме “1” в старший бит; Р - признак четного числа единиц в представлении результата операции; А - признак дополнительного переноса; Z - признак нулевого результата; S - признак знака числа; Т - признак выполнения программы по командам (шагам); I - признак разрешения внешних прерываний; D - признак декремента / инкремента регистров DI и SI в операциях с цепочками байтов или слов. При D=1 цепочка обрабатывается снизу вверх, т.е. происходит автоматическое уменьшение (автодекремент) адреса текущего элемента цепочки. При D=0 цепочка обрабатывается сверху вниз, т.е. происходит автоматическое увеличение (автоинкремент) адреса; О - арифметическое переполнение. Разряды регистра признаков где стоит Х могут принимать произвольные значения. РС - аналог счетчика команд МП К580 серии. Регистр DS используется для формирования действительного адреса для выборки данных. Обращение к стеку производится с использованием содержимого регистра SS. В операциях с цепочками данных адрес формируется сложением содержимого регистров ЕS и DI (или SI). С помощью сегментных регистров может быть организовано динамическое перемещение программ в памяти, а также могут использоваться данные, записанные в разных сегментах памяти.
Способы адресации Способ определения операнда называется режимом, или способом, адресации. Рассмотрим основные способы адресации 16-разрядных микропроцессоров. Наиболее простой, но в тоже время неэкономичной является прямая адресация: в поле операнда содержится полный 16-битный адрес памяти. При непосредственной адресации 8- или 16-битный операнд является частью команды. При использовании регистровой адресации значением операнда является содержимое адресуемого в команде РОН. Регистрово-косвенная адресация позволяет адресовать все пространство памяти МП. В этом режиме поле операнда определяет не регистр с данными, а указатель памяти, содержащий адрес операнда. В МП К580 серии основным указателем памяти служат регистры НL-пары, в командах загрузки и запоминания аккумулятора в качестве указателей памяти могут применяться ВС- и DE-пары. Для 16-разрядного МП ВМ86 различают следующие способы адресации: - непосредственный, данное длиной 8 или 16 бит является частью команды; - прямой, 16-разрядный эффективный адрес данного является частью команды; - регистровый, данное содержится в определяемом командой регистре. Операнд 16-разрядный может находиться в регистрах АХ, ВХ, СХ, DХ, SI, DI, SP, BP, a 8-разрядный - в регистрах AL, AH, BL, BH, CL, CH, DL, DH; - регистрово-косвенный, эффективный адрес данного находится в базовом регистре ВХ или в регистре, определяемом командой
- регистровый относительный, эффективный адрес равен сумме 8- или 16-разрядного смещения и содержимого базового или индексного регистров
- базовый индексный, эффективный адрес равен сумме содержимого базового и индексного регистров, определяемых командой
- относительный базовый индексный, эффективный адрес равен сумме 8- или 16- разрядного смещения и базово-индексного адреса
Кратко рассмотрим способы адресации переходов: - внутрисегментный прямой, эффективный адрес перехода равен сумме 8- или 16-разрядного смещения и текущего содержимого IP. Когда смещение имеет длину 8 бит, этот режим называется коротким переходом. Внутрисегментную прямую адресацию большинство авторов называют относительной адресацией, так как смещение вычисляется "относительно" IP. Этот режим допустим в условных и безусловных переходах, но в команде условного перехода может быть только смещение длиной 8 бит; - внутрисегментный косвенный, эффективный адрес перехода есть содержимое регистра или ячейки памяти, которые указываются в любом режиме (кроме непосредственного) адресации данных. Содержимое IP заменяется эффективным адресом перехода. Данный режим допустим только в командах безусловного перехода; - межсегментный прямой, заменяет содержимое IP одной частью команды, а содержимое CS - другой частью команды. Назначение данного режима адресации - обеспечить переход из одного сегмента кода в другой; - межсегментный косвенный, заменяет содержимое IP и CS содержимым двух смежных слов из памяти, которые определяются в любом режиме адресации данных, кроме непосредственного и регистрового. Физический адрес перехода равен сумме нового содержимого IP и содержимого CS, умноженного на 16. Межсегментный переход может быть только безусловным.
Читайте также: ER-модель (entity-relationship model) Воспользуйтесь поиском по сайту: ![]() ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|