assembler€86ˆ 7

assembler€86ˆ 7



134


5. Rozkazy mikroprocesorów 8086/8088

Przykłady

MOVCL, 11

ROR ZMIENNA[BP], CL    5

ROR BAJT, CL    e

MO V CL, 6

ROR ZMIENNA, CL    J

ROR WORD PTR [SI], CL    ^

RCL/ang. rotate through carry left byte or word ) przesunięcie cykliczne w lewo bajtu lub słowa z przeniesieniem

Operacja: zobacz niżej

Znaczniki: OF DF IF TF SF ZF AF PF CF    ' \

x.......x    j

Rozkaz realizuje przesuniÄ™cie cykliczne w lewo przez znacznik przeniesienia CF 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 wczeÅ›niej należy zaÅ‚adować liczbÄ… okreÅ›lajÄ…cÄ… o ile bitów należy przesunąć lewy argument. W czasie przesuwania najbardziej znaczÄ…cy bit argumentu jest wprowadzany do znacznika CF, pozostaÅ‚e bity argumentu sÄ… przesuwane o 1 bit w lewo, a poprzedni stan znacznika CF (zapamiÄ™tany w pomocniczym przerzutniku) jest przepisywany na miejsce najmniej znaczÄ…cego bitu argumentu. Tak wiÄ™c bity argumentu wraz ze znacznikiem CF krążą w kółko. 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 cykliczne w lewo z przeniesieniem o 1 bit

Operacja: {w = 0 =*> n: = 7 else n: = 15}; ncxt CFoargument < n:0 > <-argument < n:0 > oCF;

next (argumcnt<n> *CF =» OF*-l else OF<-0)

Argumentem jest rejestr

1101 OOOw 11010 reg

Liczba taktów - 2.    ]

Przykłady

RCL AL, 1

RCLDX, 1    .

RCL DI, 1

RCL BH, 1    â™¦

Argument jest w pamięci

5.3. Rozkazy operacji arytmetycznych i logicznych

powered by .    135 _

Ml SI Ol


1101 OOOw    modOlOr/m addrlow    addrhigh

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

Przykłady

RCL ZMIENNA, 1 RCL BAJT[BX], 1 ROL ZMIENNAfSI], 1 ROL BYTE PTR [DI], 1

Przesunięcie cykliczne w lewo z przeniesieniem o więcej niż 1 bit

Operacja: {w = 0=>n: = 7 else n: = 15 }; next CL * 0 =>

=>CFoargument < n:0 > ^-argument < n:0 > oCF; next CL«-CD-1; next IP«-IP-d) {d - długość rozkazu w bajtach (2/4)}

Argumentem jest rejestr 1101 OOlw 11010 reg Liczba taktów -8 + 4 takty na każdy bit.

Przykłady

MOV CL, 10 RCL DI, CL MOV CL, 3

RCL BH, CL    +

Argument jest w pamięci

Liczba taktów - 20 + takty do obliczenia adresu efektywnego + 4 takty na każdy bit.

Przykłady


MOV CL, 2

RCL ZMIENNA[SI], CL RCL BAJT, CL MOV CL, 6 RCL ZMIENNA, CL

RCL WORD PTR [BP], CL    __+

RCR (ang. rotate through carry riglit byle ot word )

przesunięcie cykliczne w prawo bajtu lub słowa z przeniesieni _— —--

Operacja: zobacz niżej

Znaczniki: OF DF IF TF SF ZF AF PF CF

X X


Wyszukiwarka

Podobne podstrony:
assembler?86? 5 W 90    5. Rozkazy mikroprocesorów 8086/8088 PrzykÅ‚ady PUSH ZMIENNA
assembler?86? 2 104 5. Rozkazy mikroprocesorów 8086/8088 Przykłady 104 5. Rozkazy mikroprocesorów
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? 5 130 5. Rozkazy mikroprocesorów 8086/8088 Przykłady SAR ZMIENNA, 1 SAR BAJT[BP +1],
assembler?86? 7 94 5. Rozkazy mikroprocesorów 8086/8088 OUT DX, AX MOV DX, 7645 OUT DX, AL  &
assembler?86? 8 % 5. Rozkazy> mikroprocesorów 8086/8088 Przykład LA HF NOT AH SAHF; znaczniki s
assembler?86? 3 146    5. Rozkazy mikroprocesorów 8086/8088 Tablica 5.11. PrzykÅ‚ado
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? 6 92    5. Rozkazy mikroprocesorów 8086/8088 Zamiana miejscami zawart
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? 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

więcej podobnych podstron