assembler€86ˆ 6

assembler€86ˆ 6



152


5. Rozkazy mikroprocesorów 8086/8088

next SP+-SP + datahighodatalow 11001011    datajow datahigh

Liczba taktów - 17. Porównaj przykłady dla poprzednich opcji.

5.52.    Skoki warunkowe

JA/JNBE (ang.jump if above/if not below oreÄ…ual)

skok względny gdy powyżej, skok względny gdy nie poniżej lub równo

Operacja: (CF = 0 A ZF = 0) => IP«-IP + disp Wskaźniki: bez zmian

Jeżeli wskaźniki CF = 0 i ZF = 0, to sterowanie jest przekazywane pod żądany adres, który jednak nie może być odległy od offsetu następnego rozkazu o więcej niż -128 i + 127. Jeżeli warunki nie są spełnione, to skok nie jest realizowany i jest wykonywany kolejny rozkaz w programie. Powyżej i poniżej odnosi się do liczb bez znaku.

01110110    disp

Liczba taktów -16 dla skoku wykonanego, 4 dla skoku nie wykonanego.

Przykład

SUB AH,AL    1

JA KONTYNUUJ

CMP BX, 0    *1 2

JNBE DALEJ    â™¦

5.5. Rozkazy sterowania skokami

Mi Å›^ol


powered by


JB/JNAE/JC (ang.jump if below/if not above or equal/if carry)

skok względny gdy poniżej, skok względny gdy nie powyżej lub równo, skok względny gdy jest przeniesienie

Operacja: CF = 1 => IP«-IP + disp Wskaźniki: bez zmian

Jeżeli wskaźnik CF=1, to sterowanie jest przekazywane pod żądany adres, który jednak nic może być odlegÅ‚y od offsetu nastÄ™pnego rozkazu o wiÄ™cej niż -128 i +127. Jeżeli warunek nie jest speÅ‚niony, to skok nie jest realizowany i jest wykonywany kolejny rozkaz w programie. Powyżej i poniżej odnosi siÄ™ do liczb bez znaku.

01110010 disp


Liczba taktów -16 dla skoku wykonanego, 4 dla skoku nie wykonanego.

Przykład

SUB CL, ZMIENNA JB KONTYNUUJ CMP AL, 55H JNAE DALEJ ADD AL,5

JC ZA DUÅ»O    +

JBE/JNA (ang. jump if below oreÄ…ualUf not above)

skok względny gdy poniżej lub równo, skok względny gdy nie powyżej

Operacja: (CF = 1 v ZF = 1) => IP«-lP + disp Wskaźniki: bez zmian

Jeżeli wskaźniki CF = 1 lub ZF = 1, to sterowanie jest przekazywane pod żądany adres, który jednak nie może być odlegÅ‚y od offsetu nastÄ™pnego rozkazu o wiÄ™cej niż -128 i +127. Jeżeli warunki nie sÄ… speÅ‚nione, to skok nie jest realizowany i jest wykonywany kolejny rozkaz w programie. Powyżej i poniżej odnosi siÄ™ do liczb bez

znaku.


Liczba taktów -16 dla skoku wykonanego, 4 dla skoku nie wykonanego.

Przykład

♦


SUB CH, ZMIENNA JBE KONTYNUUJ CMP DX, 5555H JNA DALEJ

JE/JZ (ang.jump if eÄ…uaUif zero )

skok względny gdy równość, skok względny gdy zero)

Operacja: ZF = 1 => IP*-IP + disp

1

JAE/JNB (ang.jump if above oreÄ…ualtif not below)

skok wzglÄ™dny gdy powyżej lub równo, skok wzglÄ™dny gdy nie poniżej    ___JJ

Operacja: CF = 0 => IP IP + disp Wskaźniki: bez zmian

Jeżeli wskaźnik CF = 0, to sterowanie jest przekazywane pod żądany adres, który jednak nie może być odległy od offsetu następnego rozkazu o więcej niż -128

2

+127. Jeżeli warunek nie jest spełniony, to skok nie jest realizowany i jest wykonywany kolejny rozkaz w programie. Powyżej i poniżej odnosi się do liczb bez znaku.

01110011 disp

Liczba taktów -16 dla skoku wykonanego, 4 dla skoku nie wykonanego.

Przykład

SUB BX,DX JAE KONTYNUUJ CMP DH, OFFH

JNB DALEJ    â™¦


Wyszukiwarka

Podobne podstrony:
assembler?86? 6 92    5. Rozkazy mikroprocesorów 8086/8088 Zamiana miejscami zawart
assembler?86? 1 82 5. Rozkazy mikroprocesorów 8086/8088 kod rozkazu (ang. opcode ) - definiuje ope
assembler?86? 2 84 5. Rozkazy mikroprocesorów 8086/8088 Pośrednio przez rejestr bazowy i indeksowy
assembler?86? 3 86 5. Rozkazy mikroprocesorów 8086/8088 LES - załadowanie adresu logicznego do wsk
assembler?86? 4 88 5. Rozkazy mikroprocesorów 8086/8088 MOV ZMIENNAfSI], ES MOV X[BP + DI + 1], SS
assembler?86? 5 W 90    5. Rozkazy mikroprocesorów 8086/8088 PrzykÅ‚ady PUSH ZMIENNA
assembler?86? 9 98 5. Rozkazy mikroprocesorów 8086/8088 Pojęcie rozpakowanego i normalnego kodu BC
assembler?86? 2 104 5. Rozkazy mikroprocesorów 8086/8088 Przykłady 104 5. Rozkazy mikroprocesorów
assembler?86? 3 106 5. Rozkazy1 mikroprocesorów 8086/8088 SBB (ang. subtract byle or word with bor
assembler?86? 4 108 5. Rozkazy mikroprocesorów 8086/8088 PrzykÅ‚ady DEC SI DEC AX    
assembler?86? 7 114    5. Rozkazy mikroprocesorów 8086/8088 Mnożenie zawartoÅ›ci aku
assembler?86? 9 118 5. Rozkazy mikroprocesorów 8086/8088 MOV AL, 8FH CBW ???? ???? 1111 1111 1000
assembler?86? 1 122 5. Rozkazy mikroprocesorów 8086/8088 OR DX, STALA_EQU OR CL, 8   &nb
assembler?86? 2 124 5. Rozkazy mikroprocesorów 8086/8088 Rozkaz realizuje logiczne mnożenie odpowi
assembler?86? 4 128 5. Rozkazy mikroprocesorów 8086/8088 Przesunięcie logiczne w prawo o 1 bit Ope
assembler?86? 5 130 5. Rozkazy mikroprocesorów 8086/8088 Przykłady SAR ZMIENNA, 1 SAR BAJT[BP +1],
assembler?86? 6 132 5. Rozkazy mikroprocesorów 8086/8088PrzykÅ‚ad y MOV CL, 12 ROL BX, CL ROL
assembler?86? 7 134 5. Rozkazy mikroprocesorów 8086/8088 Przykłady MOVCL, 11 ROR ZMIENNA[BP], CL
assembler?86? 8 136 5. Rozkazy mikroprocesorów 8086/8088 Rozkaz realizuje przesunięcie cykliczne w

więcej podobnych podstron