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