Вверх ↑
Администрация
Ответов: 15295
Рейтинг: 1519
#1: 2010-10-01 03:14:55 ЛС | профиль | цитата
Tad писал(а):
это не IF в нашем привычном понимании. Там "физика" совсем другая.

все if, case, while и прочие реализованы через одни команды процессора. И "физика" там с реле не связана - если проверка успешна, то CPU осуществляет инкремент регистра EIP на смещение, указанное в аргументе команды сравнения, иначе регистр EIP инкрементится на размер команды сравнения (т.е. переходит к выполнению следующей инструкции). Вот такой код

#pas
if a > b then
// proc
// other code
любой компилятор превратит в такой:

  сравнить a и b
прыгнуть на точку @here, если флаг не установлен
// proc
@here:
// other code
карма: 26
0