Микропроцессорные устройства систем управления. Иванов В.Э - 16 стр.

UptoLike

Составители: 

16
ЛАБОРАТОРНАЯ РАБОТА 9
ПРОГРАММИРОВАНИЕ РАЗВЕТВЛЕНИЙ
Цель работы: изучение операторов передачи управления и приемов
программирования арифметических выражений, содержащих
разветвления.
Основные сведения
Команды передачи управления условно подразделяются на две
группы:
- команды безусловных переходов;
- команды условных переходов
В табл. 3 перечислены команды передачи управления обоих типов.
Команды безусловных переходов позволяют передавать управление как
внутри текущего сегмента, так и между сегментами. Общий вид команды
безусловного перехода:
JMP label
В результате выполнения этой команды в счетчик
команд IP засылается
адрес, соответствующий метке label. При переходе внутри сегмента
изменяется только регистр IP, если же осуществляется межсегментный
переход, то изменяются два регистра CS и IP.
Команды условных переходов позволяют передавать управление только
внутри текущего сегмента. Общий вид команды условного перехода:
Jсс label,
где ссмнемонический код условия перехода.
В результате выполнения команды условного перехода
в счетчик команд
заносится либо адрес, соответствующий метке label, если условие
выполняется, либо адрес следующей команды при ложном значении
условия.
В процессе ассемблирования программы команда передачи управления
преобразуется к виду:
COP diff,
где COP – байт кода операции, а diff – смещение, т. е. восьми- или
шестнадцати-разрядный код разницы между адресом перехода и
содержимым счетчика команд
IP.
Приведенная схема соответствует относительной адресации, которая
используется только в командах передачи управления. При использовании
относительной адресации адрес перехода вычисляется путем