CSEG SEGMENT PARA PUBLIC ‘CODE’
ASSUME CS:CSEG, DS:DSEG, SS:STACK
. . . . . .
JMP ADDR
В командах косвенного
перехода рекомендуется
применять модификатор
NEAR, т.к. транслятору не всегда
удается определить, находится адрес перехода в текущем
сегменте кода.
Команда прямого межсегментного перехода имеет длину
5Б:
• 1Б – код операции,
• 2Б и 3Б – смещение адреса перехода,
• 4 и 5Б – значение сегментной составляющей (CS) того
кодового сегмента адреса перехода.
Например:
SEG1 SEGMENT PARA PUBLIC ‘CODE’
ASSUME CS:SEG1, DS:DSEG1, SS:STACK
. . . . . .. .
JMP FAR PTR M2
. . . . ...
M1 LABEL FAR
. . . . . . ..
SEG1 ENDS
SEG2 SEGMENT PARA PUBLIC ‘CODE’
ASSUME CS:SEG2, DS:DSEG2, SS:STACK
. . . . . . .. .
M2 LABEL FAR
JMP M1
Во
втором случае FAR опционален,
что связано с
нахождением метки до команды переход ➔
транслятор
может
самостоятельно
понять,
что
переход
межсегментный.
Достарыңызбен бөлісу: