K x⟨0 E

Материал из ПМК вики
(перенаправлено с «CE»)
Перейти к навигации Перейти к поиску
Команда К x<0 E
 К   x<0  E
Код команды CE
Русская мнемоника К x<0 E
Латинская мнемоника K X<0 E
Группа команд условные переходы
Число операндов
Нажимаемые клавиши  К   ШГ→   В↑ 
Число шагов 1
Признак перезаписи сбрасывается
Первое появление МК-61
Время выполнения ?
Скорость выполнения ? команд/с

Правильный заголовок этой статьи — К x<0 E. Он показан некорректно из-за технических ограничений.

Команда косвенного условного перехода K x<0 Е (лат. K X<0 E) «Косвенный переход по условию x<0 по содержимому адресного регистра E» с кодом CE вызывает переход на адрес, записанный в регистре памяти E, если условие не выполняется (X≥0). Перед выполнением команды содержимое регистра E модифицируется. Если записанное в регистр E число меньше нуля, в регистр E записывается число нуль. Дробная часть числа, записанного в регистр E, отбрасывается.

Команда условного перехода предназначена для организации ветвлений в программе пользователя. Команда изменяет содержимое счетчика адреса в зависимости от выполнения условия. В качестве условия в ЭВМ используется сравнение содержимого регистра X с нулём: "x<0". Содержимое стека не изменяется.

Команда условного перехода действуют только в режиме выполнения программы.

Команда вызывает изменение счетчика адреса, если записанное в команде условие не выполняется (X≥0). Если условие выполняется (X<0), то следующей будет исполнена команда, записанная непосредственно за командой условного перехода.

Модификация RЕ на советских ПМК[править]

Если в регистре Е содержится число 0, а также числа от 1 до 104, его модификация происходит также, как на современных ЭКВМ — путём отбрасывания дробной части (усечения).

Модификация отрицательных чисел, чисел между 0 до 1, а также больших положительных чисел на советских ПМК не документирована. Поведение ПМК может зависеть от модели, но обычно условный переход происходит по адресу, на который указывают два младших разряда числа в регистре Е после его модификации.

История[править]

До появления МК-61 (на калькуляторах Б3-34, МК-54 и МК-56) недокументированная команда с кодом CE вела себя аналогично команде Кx<0 0, с единственным исключением — содержимое регистра 0 не уменьшалось при модификации. На МК-152 аналогично себя ведёт двухшаговая команда РКx<0 00 с кодом CF 00.

Эту недокументированную команду «Электроники Б3-34» обозначали на письме Кx<0↑ . Программы, использующие её, неправильно работали на МК-61 и МК-52.

Ссылки[править]

Косвенные условные переходы с регистровой адресацией
Kx≠00 Kx≠01 Kx≠02 Kx≠03 Kx≠04 Kx≠05 Kx≠06 Kx≠07 Kx≠08 Kx≠09 Kx≠0А Kx≠0В Kx≠0С Kx≠0Д Kx≠0Е
Kx≥00 Kx≥01 Kx≥02 Kx≥03 Kx≥04 Kx≥05 Kx≥06 Kx≥07 Kx≥08 Kx≥09 Kx≥0А Kx≥0В Kx≥0С Kx≥0Д Kx≥0Е
Kx<00 Kx<01 Kx<02 Kx<03 Kx<04 Kx<05 Kx<06 Kx<07 Kx<08 Kx<09 Kx<0А Kx<0В Kx<0С Kx<0Д Kx<0Е
Kx=00 Kx=01 Kx=02 Kx=03 Kx=04 Kx=05 Kx=06 Kx=07 Kx=08 Kx=09 Kx=0А Kx=0В Kx=0С Kx=0Д Kx=0Е