Андрей Бедов писал(а):Несколько десятков инструкций за такт.
просто КОТ, у процессоров нет инструкций типа IF, FOR и т.п. Потому что это инструкции языка программирования, по иерархии стоящего гораздо выше процессорных команд. Но у процессоров есть команды перехода по условиям. Условиями при этом служат биты из регистра состояния процессора, которые называют флагами. Флаги устанавливаются (1) или сбрасываются (0) автоматически в процессе обработки команд АЛУ. При исполнении команды перехода по условию анализируется конкретный флаг и производится (или не производится) переход. Естественно, заботу о флагах выполняет программист, задавая такую последовательность команд, чтобы состояние нужного флага было адекватным непосредственно перед исполнением команды перехода.
Например, команда перехода в процессорах на ядре i8080 занимает либо 7 либо 10 тактов. 7 - если переход не производится. 10 - если производится.
Вообще, у всего семейства i80xx эта система похожа. Правда, у современных процессоров очень развита конвейерность, поэтому что-то конкретное сказать по занимаемому времени невозможно однозначно - всё зависит от контекста.
У микроконтроллеров типа PIC, AVR картина тоже похожа. Конвейер там простенький. Команды также исполняются за 4 такта, однако их выполнение хитро распараллелено - с каждым тактом в конвейер поступает новая команда, а уже поступившая "переходит" на следующий такт исполнения. Поэтому заявляется, что скорость исполнения 1 команда за 1 такт. И это верно для пользователя, но неверно с точки зрения АЛУ. При исполнении команды перехода АЛУ может сбрасывать такую очередь "почти исполненных команд" (ну, это потому что чтобы не сбрасывать, АЛУ должно предугадывать состояние флагов, что реально сложно), поэтому следующая команда за командой перехода (если переход был выполнен) исполняется также 4 такта, а не 1, как было бы, если бы она была в ряду простых команд.
p.s. Я описал чрезмерно упрощённо, чтобы не залезать в дебри конкретных архитектур, где у каждой много своих тонкостей. Поведение каждой лучше всего узнавать в тех. документации на неё.