[Назад] [Далее]

5.1.4. Циклы

Несмотря на то что набор команд Intel включает команды организации циклов, они годятся только для одного типа циклов — FOR-циклов, которые выполняются фиксированное число раз. В общем виде любой цикл записывается в ассемблере как условный переход.

WHILE-цикл:
        (команды инициализации цикла)
метка:
        IF (не выполняется условие окончания цикла)
        THEN
            (команды тела цикла)
            jmp метка

REPEAT/UNTIL-цикл:
       (команды инициализации цикла)
метка: 
       (команды тела цикла)
       IF (не выполняется условие окончания цикла)
       THEN (переход на метку)

(такие циклы выполняется быстрее на ассемблере, и всегда следует
 стремиться переносить проверку условия окончания цикла в конец)

LOOP/ENDLOOP-цикл:
        (команды инициализации цикла)
метка:
        (команды тела цикла)
        IF (выполняется условие окончания цикла)
        THEN  jmp метка2
        (команды тела цикла)
        jmp метка
метка2:

п»ї
"target=_blank><\/a>") //-->