assembler€86ˆ 2

assembler€86ˆ 2



124


5. Rozkazy mikroprocesorów 8086/8088

Rozkaz realizuje logiczne mnożenie odpowiadających sobie bitów dwóch argumentów, które mogą być bajtami lub słowami, jednak w przeciwieństwie do rozkazu AND nie zapamiętuje wyniku, a jedynie ustawia znaczniki. Kombinacje argumentów określono w tabl. 5.8. Możliwe opcje

Porównanie logiczne zawartoÅ›ci rejestrów 1000 OlOw llregreg Liczba taktów - 3.

Przykłady

♦


TEST DI, CX TEST CL, CH TEST BP, AX TEST BH, AL

Porównanie logiczne zawartości rejestru i argumentu w pamięci

1000 OlOw


mod reg r/m addr low


addr


_high_|


Liczba taktów - 9 + takty do obliczenia adresu efektywnego.

Przykłady

TEST CL, ZMIENNA BAJT[SI +1)

♦


♦


TEST DI, ZMIENNA 2 TEST ZMIENNA[BX + 5], CX TEST SLOWO[BX][SI], DI

Porównanie logiczne zawartoÅ›ci akumulatora i wartoÅ›ci bezpoÅ›redniej 1010 lOOw data Iow datahigh Liczba taktów - 4.

Przykłady

TEST AX, 00FFH TEST AX, STALAEOU TEST AL, 55H TEST AL, 11100001B

Porównanie logiczne zawartoÅ›ci rejestru i wartoÅ›ci bezpoÅ›redniej 1111 Oliw 11000 reg data Iow    data high

Liczba taktów - 5.

Przykłady

TEST AH, 11110001B TEST CX, STALAEOU

5.3. Rozkazy operacji arytmetycznych i logicznych

powered by

Mi sfbl


♦


TEST DI, 1234H TEST CL, 1

Porównanie logiczne argumentu w pamiÄ™ci i wartoÅ›ci bezpoÅ›redniej 1111 Oliw modOOOr/m addr low addr high data low data high Liczba taktów -11 + takty do obliczenia adresu efektywnego.

przykłady

TEST ZM1ENNA[BP], STALA EOU TEST ZMIENNABAJT, 01101100B

53.6. Przesunięcia

SHL/SAL (ang. shift logical/arithmetic left byte or word) przesunięcie logiczne lub arytmetyczne w lewo bajtu lub słowa

Operacja: zobacz niżej

Znaczniki: OF DFIF TF SF ZF AF PF CF    JSWBfl

X-    X X ? X X

Oba rozkazy realizujÄ… tÄ™ samÄ… funkcjÄ™ przesuniÄ™cia w lewo lewego argumentu o liczbÄ™ bitów okreÅ›lonÄ… prawym argumentem (rys. 5.2). Jeżeli przesuniÄ™cie jest o 1 bit, to jedynka' jest wprost prawym argumentem. Przy przesuniÄ™ciu o wiÄ™kszÄ… liczbÄ™ bitów, prawym argumentem jest rejestr CL, który należy zaÅ‚adować liczbÄ… okreÅ›lajÄ…cÄ…, o ile bitów należy przesunąć lewy argument. W czasie przesuwania najbardziej znaczÄ…ce bity argumentu sÄ… wprowadzane do znacznika CF, na miejsce najmniej znaczÄ…cego bitu jest wpisywane 0. Poprzednia zawartość znacznika CF jest tracona. Jeżeli przy przesuwaniu o 1 bit w lewo nie zmieni siÄ™ zawartość bitu znaku, to znacznik OF jest zerowany. W przeciwnym wypadku znacznik OF przyjmuje wartość 1. Możliwe opcje

Przesunięcie logiczne lub arytmetyczne w lewo o 1 bit

Operacja: {w = 0 =* n: = 7 else n: = 15}: next CFoargument<n:l> ^-argument < n:0 >; argument < 0 > «-0; next (argument < n > CF => OF*-l else OF«-0) Argumentem jest rejestr

U01 000w    11100 reg

Liczba taktów - 2.

Przykłady

SAL AL, 1 SAL DX, 1

SAL DI, 1    '

SHL AL, 1


Wyszukiwarka

Podobne podstrony:
assembler?86? 2 84 5. Rozkazy mikroprocesorów 8086/8088 Pośrednio przez rejestr bazowy i indeksowy
assembler?86? 2 104 5. Rozkazy mikroprocesorów 8086/8088 Przykłady 104 5. Rozkazy mikroprocesorów
assembler?86? 2 164    5. Rozkazy mikroprocesorów 80S6/8088 STD - ustawienie znaczn
assembler?86? 0 5. Rozkazy mikroprocesorów 8086/80885.1. Informacje ogólne Mikroprocesory 8086 i 8
assembler?86? 1 82 5. Rozkazy mikroprocesorów 8086/8088 kod rozkazu (ang. opcode ) - definiuje ope
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? 6 92    5. Rozkazy mikroprocesorów 8086/8088 Zamiana miejscami zawart
assembler?86? 8 % 5. Rozkazy> mikroprocesorów 8086/8088 Przykład LA HF NOT AH SAHF; znaczniki s
assembler?86? 9 98 5. Rozkazy mikroprocesorów 8086/8088 Pojęcie rozpakowanego i normalnego kodu BC
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? 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],

więcej podobnych podstron