Архитектура микропроцессорной системы. Состав машинных команд и основы программирования микропроцессорной системы на ассемблере. Булатов В.Н. - 48 стр.

UptoLike

Составители: 

таблицу истинности функции CF V ZF (таблица 8), исходя из смысла
указанных операций. Исходя из таблицы 8, можно сделать следующие
заключения:
Таблица 8
CF ZF CFVZF Событие
0 0 0 A > B
0 1 1 A = B
1 0 1 A < B
1 1 Не может быть
а) если CFvZF=1, то операнды или равны при ZF =1 (Е
eguivalent — равно), или при CF =1 (заем) операнд А меньше
операнда В ( В — below —меньше, ниже). Следовательно, команда
перехода означает: JBE — перейти, если меньше или равно (то
есть, не больше);
б) если CFvZF= 0, то все наоборот, и команда перехода:
JNBE — перейти, если больше (то есть нет событий В и Е: NO
B&E).
2) SFOF. Это условие рассчитано на результат операций со
знаковыми числами. Не вдаваясь в подробности анализа, можно
отметить, что если после вычитания SFOF = 1, то вычитаемое со
знаком меньше уменьшаемого со знаком (L — less — меньше).
Соответственно команды переходов:
а) JL — перейти, если меньше (для результата со знаком);
б) JNL – перейти, если не меньше (для результата со
знаком). 3) (SFOF)vZF. Это условие рассчитано также при
операциях над
числами со знаком. Например, если после вычитания: (SFOF)vZF= 1,
то полученный результат со знаком меньше или равен нулю, то есть не
больше (LE —меньше или равно). Соответственно и команда перехода
по этому условию: JLE.
Команда перехода по обратному условию (SF+OF)vZF=0: JNLE.
Из всех команд ветвлений наиболее «заезженные» команды: JZ,
JNZ, JC, JNC, JBE, JNBE.
После того, как мы рассмотрели условия переходов и ассемблер
команд условных переходов, можно перейти к методике формирования
адреса перехода.
1) Адрес перехода короткий. Его максимальная величина:
±127
10
адресов. Такой размер продиктован практической
целесообразностью. Действительно, при составлении программ условные
переходы используются, как правило, в пределах «видимости», то есть в
очень маленьких пределах по сравнению с общим размером программ.
48
таблицу истинности функции CF V ZF (таблица 8), исходя из смысла
указанных операций. Исходя из таблицы 8, можно сделать следующие
заключения:

                       Таблица 8
                        CF ZF CFVZF Событие
                         0 0       0    A>B
                         0 1       1    A=B
                         1 0       1    A