PK x≠0: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
(шаблон-врезка для команд)
Нет описания правки
 
(не показана 1 промежуточная версия 1 участника)
Строка 2: Строка 2:
| мнемоника          = PК x≠0  
| мнемоника          = PК x≠0  
| мнемоника клавиш    = {{Синяя клавиша|P}} {{Синяя команда 2|К|x≠0}} mm
| мнемоника клавиш    = {{Синяя клавиша|P}} {{Синяя команда 2|К|x≠0}} mm
| код                = 7F
| код                = 7F mm
| русская мнемоника  = PК x≠0  
| русская мнемоника  = PК x≠0  
| латинская мнемоника = PK X!=0  
| латинская мнемоника = PK X!=0  
| группа              = [[условные переходы]]
| группа              = [[условные переходы]]
| число операндов    = —
| число операндов    = —
| клавиши            = [[Клавиша P|{{Синяя клавиша|P}}]] [[Клавиша К|{{Синяя клавиша|К}}]], далее две цифры номера регистра
| клавиши            = [[Клавиша P|{{Синяя клавиша|P}}]] [[Клавиша К|{{Синяя клавиша|К}}]] [[Клавиша С/П|{{Чёрная клавиша|С/П}}]] , далее две цифры номера регистра
| число шагов        = 2
| число шагов        = 2
| признак перезаписи  = сбрасывается
| признак перезаписи  = сбрасывается
Строка 14: Строка 14:
| скорость            = ?
| скорость            = ?
}}
}}
Двухшаговая команда косвенного условного перехода '''PK x≠0''' MM (лат. '''PK X!=0''' MM) «Косвенный переход по условию x≠0 по содержимому адресных регистров от 0 до 99» с кодом 7F вызывает переход на адрес, записанный в регистре памяти MM (от 0 до 99), если условие не выполняется (x=0). Содержимое регистра MM модифицируется.
Двухшаговая команда косвенного условного перехода '''PK x≠0''' mm (лат. '''PK X!=0''' mm) «Косвенный переход по условию x≠0 по содержимому адресных регистров от 0 до 99» с кодом 7F вызывает переход на адрес, записанный в регистре памяти mm (от 00 до 99), если условие не выполняется (x=0). Содержимое регистра mm модифицируется.


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

Текущая версия от 10:01, 2 августа 2016

Команда PК x≠0
 P   К   x≠0  mm
Код команды 7F mm
Русская мнемоника PК x≠0
Латинская мнемоника PK X!=0
Группа команд условные переходы
Число операндов
Нажимаемые клавиши  P   К   С/П  , далее две цифры номера регистра
Число шагов 2
Признак перезаписи сбрасывается
Первое появление МК-152
Время выполнения ?
Скорость выполнения ? команд/с

Двухшаговая команда косвенного условного перехода PK x≠0 mm (лат. PK X!=0 mm) «Косвенный переход по условию x≠0 по содержимому адресных регистров от 0 до 99» с кодом 7F вызывает переход на адрес, записанный в регистре памяти mm (от 00 до 99), если условие не выполняется (x=0). Содержимое регистра mm модифицируется.

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

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

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

Пример[править]

2010 7F РК x≠0 17
2011 17

В случае, если содержимое регистра X равно нулю, команда РКx≠0 17 по адресам 2010-2011 с кодом 7F 17 вызовет переход на адрес, записанный в R17. Предварительно содержимое R17 модифицируется, в частности у содержащегося там числа отбрасывается дробная часть. Если содержимое регистра X отлично от нуля, выполнение программы продолжится с адреса 2012.

Допустим, в R17 содержится число 1945, а в регистре X содержится 0. Тогда команда РКx≠0 17 передаст управление на адрес 1945.

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

Недокументированные команды с кодами 4F, 6F до EF в советских ПМК полностью аналогичны командам обращения к регистру 0 c кодами 40, 60-E0 (Д.Б. Хрусталев, В.А. Хмелюк, «Школа начинающего программиста. Занятие 22» // «Наука и Жизнь» №1 - 1989 г. - С.124).

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

Условные переходы с косвенной прямой адресацией
PK x≠0 PK x≥0 PK x<0 PK x=0