Cтраница 3
В табл. 6.1.1 описаны значения модульного регистра Mj и соответствующие способы вычисления адреса для циклического модульного режима. [31]
Порождает код для восстановления значений регистров, сохраненных перед вызовом функции или процедуры. [32]
Для команд типа RR значения регистров фактически подставляются в поле адреса команды. Следовательно, первая сгенерированная машинная команда имеет вид ( в шестнадцатеричной записи) D540, где D5 обозначает операцию BALR, a 4 и 0 обозначают адреса. [33]
При этом происходит умножение значения регистра множителя на значение регистра клавиатуры. Полученное произведение суммируется с числом, находившимся в регистре сумматора, и выводится на индикатор. [34]
В такой ситуации требуется считать значение регистра, которое еще не записано. Единственное разумное решение в данном случае - отложить начало микрокоманды swapS до того момента, когда значение MDR станет доступным, то есть до пятого цикла. Ожидание нужного значения называется простаиванием. [35]
Что произойдет, если впоследствии значение регистра KPAR2 ( но не KPARO) будет изменено. [36]
При выполнении команд, изменяющих значение регистра адреса, управляющий сигнал со не изменяется и автоматических остановок машины не происходит. [37]
![]() |
Команда Disable Indexing отмены индексации. а - на выходе оператора цикла For Loop. б - результат отмены.| Вызов сдвиговых регистров и установленные регистры. [38] |
При нулевом значении счетчика итераций значение левого регистра не определено. К нему следует подключить начальное значение, которое будет присвоено левому терминалу регистра при входе в цикл. [39]
Когда бы Вы ни прочитали значение регистра флагов, эти биты будут нулевыми. [40]
Команда NEC полезна для вычитания значения регистра или ячейки памяти из непосредственного значения. Так как непосредственное значение не может служить приемником, то команда SUB 100, AL недопустима. [41]
Кроме того, в этом случае значение регистра уменьшается на единицу. [42]
![]() |
Параметры при повторном вызове нереентерабельной подпрограммы DIVIDE. [43] |
Если выполнение подпрограммы приостанавливается прерыванием, значения регистров и адресов возврата будут сохранены в стеке и полностью восстановлены при возврате. Однако если подпрограмма DIVIDE вызывается опять программой обработки прерывания, то старые значения параметров и локальной переменной будут утеряны навсегда. [44]
Для выполнения преобразования команда ААМ делит значение регистра AL на 10 и запоминает частное и остаток в регистрах АН и AL соответственно. Кроме того, она модифицирует флаг четности. [45]