4. RESUMO DAS INSTRUÇÕES DE DESVIO CONDICIONAL
As seguintes condições podem ser testadas pelas instruções de desvio condicional disponíveis no processador da Máquina 2002:
Indicador de sinal: a instrução "JS" realiza o desvio se o indicador de sinal estiver com valor igual a um e a instrução "JNS" realiza o desvio se este indicador estiver com valor igual a zero;
Indicador de paridade: a instrução "JP" realiza o desvio se o indicador de paridade estiver com valor igual a um e a instrução "JNP" realiza o desvio se esse indicador estiver com valor igual a zero;
Indicador de transbordamento: a instrução "JO" realiza o desvio se o indicador de transbordamento estiver com valor igual a um e a instrução "JNO" realiza o desvio se este indicador estiver como valor igual a zero;
Indicador de vai um: a instrução "JC" realiza o desvio se o indicador de vai um estiver com valor igual a um e a instrução "JNC" realiza o desvio se este indicador estiver com valor igual a zero. Após a execução de uma instrução de comparação ("CMP") de dois valores sem sinal a instrução "JC" realizará o desvio se o valor do primeiro operando da comparação for menor que o valor do segundo operando da comparação enquanto que a instrução "JNC" realizará o desvio se o valor do primeiro operando da comparação for maior ou igual ao valor do segundo operando da comparação;
Indicador de zero: a instrução "JZ" realiza o desvio se o indicador de zero estiver com valor um e a instrução "JNZ" realiza o desvio se este indicador estiver com valor zero. Após a execução de uma instrução de comparação ("CMP") a instrução "JZ" realizará o desvio se os valores dos dois operandos da instrução de comparação forem iguais enquanto que a instrução "JNZ" realizará o desvio se os valores dos dois operandos da instrução de comparação forem diferentes;
Indicador de zero ou indicador de vai um: a instrução "JZC" realiza o desvio se o indicador de zero estiver com valor um ou o indicador de vai um estiver com valor um. A instrução "JNZC" realiza o desvio se estes dois indicadores estiverem simultaneamente com valor igual a zero. Após a execução de uma instrução de comparação ("CMP") de dois números sem sinal a instrução "JZC" realizará o desvio se o valor do primeiro operando da comparação for menor ou igual ao valor do segundo operando da comparação enquanto que a instrução "JNZC" realizará o desvio se o valor do primeiro operando da comparação for maior que o valor do segundo operando da comparação;
Indicador de sinal igual ao indicador de transbordamento: A instrução "JSO" realiza o desvio se os valores dos indicadores de sinal e transbordamento forem iguais e a instrução "JNSO" realiza o desvio se os valores destes dois indicadores forem diferentes. Após a execução de uma instruçao de comparação ("CMP") de dois números com sinal a instrução "JSO" realizará o desvio se o valor do primeiro operando da comparação for maior ou igual ao valor do segundo operando da comparação enquanto que a instrução "JNSO" realizará o desvio se o valor do primeiro operando da comparação for menor que o valor do segundo operando da comparação;
Indicador de sinal igual ao indicador de transbordamento e indicador de zero com valor zero: A instrução "JSONZ" realiza o desvio se os valores dos indicadores de sinal e transbordamento forem iguais e o valor do indicador de zero for igual a zero. A instrução "JZNSO" realiza o desvio se o indicador de zero estiver com valor igual a um ou se os valores dos indicadores de sinal e transbordamento forem diferentes. Após a execução de uma instrução de comparação ("CMP") de dois números com sinal a instrução "JSONZ" realizará o desvio se o valor do primeiro operando da comparação for maior que o valor do segundo operando da comparação enquanto que a instrução "JZNSO" relizará o desvio se o valor do primeiro operando da comparação for menor ou igual ao valor do segundo operando da comparação;
Valor de registrador igual a zero: A instrução "JEQZ" realiza o desvio se o registrador especificado pelo seu primeiro operando ("A", "B", "C" ou "D") estiver com valor igual a zero e a instrução "JNEQZ" realiza o desvio se o registrador especificado pelo seu primeiro operando estiver com valor diferente de zero;
Valor de registrador após decrementação diferente de zero: A instrução "LOOP" decrementa o valor do registrador especificado pelo seu primeiro operando ("A", "B", "C" ou "D") sem afetar o valor de nenhum indicador e realiza o desvio se o valor deste registrador após a decrementação for diferente de zero.