assembler€86ˆ 2

assembler€86ˆ 2



84


5. Rozkazy mikroprocesorów 8086/8088

PoÅ›rednio przez rejestr bazowy i indeksowy z przemieszczeniem Dla argumentu z innego segmentu

W przypadku gdy adres przemieszczenia jest nieparzysty

Dla procesora 8086, przy argumentach 16-bitowych w pamięci


MOV DX, ZMIENNA(BP + SI) 11 lub 12 MOV CH, TABLICA[BX + DI]

MOV DX ES:ZMIENNA    2

MOV CH CS:TABLICA[BX)


4


4


5.13. Skróty i symbole stosowane w opisie rozkazów

W przedstawionym zbiorze wszystkich rozkazów procesorów 8086/8088 uwzględniono następujące dane

-    objaÅ›nienie mnemoniki rozkazu,

-    formalny opis wykonywanej operacji (w notacji ISF),    |

-    sÅ‚owny opis operacji wykonywanej przez rozkaz,

-    dwójkowy kod rozkazu,

-    czas wykonania rozkazu w taktach maszynowych dla mikroprocesora 8086 (tabl. 5.5),

-    stan rejestru znaczników po wykonaniu rozkazu,

-    przykÅ‚ady użycia rozkazu.

W formalnym opisie rozkazów sÄ… używane nastÄ™pujÄ…ce skróty i symbole seg - 16-bitowy adres poczÄ…tku segmentu,    jfl

uff - offset, reg-rejestr,

regló - rejestr 16-bilowy,    1

memló - sÅ‚owo (dwa kolejne bajty) w pamiÄ™ci,    r J

Sreg - rejestr segmentowy,    1

ea - adres efektywny,    \

w - bit okreÅ›lajÄ…cy czy argument jest bajtem czy sÅ‚owem,    j

mod i - reszta z dzielenia przez i,

high - bardziej znaczÄ…cy bajt sÅ‚owa 16-bitowcgo,    M

Iow - mniej znaczący bajt słowa 16-bitowcgo, data - dana bezpośrednia,

port addr - adres układu wejściowego lub wyjściowego,

disp - odlegÅ‚ość w bajtach wzglÄ™dem aktualnej wartoÅ›ci wskaźnika pozycji asemblera (wskaźnika rozkazów PC),    3

delta - wartość odejmowana lub dodawana od (do) licznika podczas powtarzania operacji,

M - pamięć,    J

accum - akumulator (AX, AL).    j

Znaczniki

-    znacznik nie zmieniany,

-    znacznik ustawiany zgodnie z ogólnymi reguÅ‚ami (zob. p. 2.4) lub wedÅ‚ug opisu wykonywanej operacji,

-    nieznany stan znacznika.

Mi s ~k) 1

5.2. Rozkazy transmisji danych


Niektóre elementy składni notacji ISP użyte w formalnym opisie działań wykonywanych przez rozkazy

Wyrażenia warunkowe

wyrażeń ielogiczne => wyrażenie odpowiada algolowskiemu IF - THEN,

wyrażenielogiczne =» wyrażenie 1 else wyrażenie_2 odpowiada algolowskiemu IF - TH EN - ELSE.

Operatory

() - wyodrębnienie części wyrażeń i definicji lub oznaczenie kolejności działań,

; - znak oddzielajÄ…cy wyrażenie w ciÄ…gu wyrażeÅ„ realizowanych równolegle, next - ogranicznik oddzielajÄ…cy wyrażenia realizowane kolejno (sekwencyjnie), o - symbol poÅ‚Ä…czenia (konkatenacji); ze wzglÄ™dów technicznych w tekÅ›cie książki zastosowano symbol o,

{} - modyfikator operacji określający typ danych lub typ operacji; odbiegający od powszechnie stosowanego w opisie; stosuje się go do wyrażenia pewnych warunków,

4- - operator przesłania,

, - znak oddzielajÄ…cy kolejne elementy listy zmiennych,

[] - nawiasy służące do deklaracji (specyfikacji) obszarów pamięci w sensie bajtów (słów),

< > - nawiasy służące do deklaracji (specyfikacji) numerów bitów rejestrów i obszarów w pamięci (bajtów lub słów),

: - rozdzielenie wartości zakresów zmian wskaźników.

instmkcja przypisania

x: = y- przyporządkowanie nazwiex wartości y.

5.2. Rozkazy transmisji danych

W grupie rozkazów transmisji danych wyróżnia się

Rozkazy transmisji danych między rejestrami i pamięcią operacyjną MOV - przesyłanie bajtu lub słowa,

PtlSH - przesyłanie słowa na szczyt stosu,

- pobieranie słowa ze szczytu stosu,

XCHG - zamiana miejscami bajtów lub słów,

. pobieranie bajtu z tablicy.

ozkazy związane z układami wejścia-wyjścia

* wprowadzenie bajtu lub słowa z układu wejściowego,

T - wyprowadzenie bajtu lub słowa do układu wyjściowego.

R°zkazy ładowania adresów

Ln ~ za^ac^owan*e adresu efektywnego EA do rejestru,

^ * zładowanie adresu logicznego do wskazanego rejestru oraz do DS,


Wyszukiwarka

Podobne podstrony:
assembler?86? 2 104 5. Rozkazy mikroprocesorów 8086/8088 Przykłady 104 5. Rozkazy mikroprocesorów
assembler?86? 2 124 5. Rozkazy mikroprocesorów 8086/8088 Rozkaz realizuje logiczne mnożenie odpowi
assembler?86? 2 164    5. Rozkazy mikroprocesorów 80S6/8088 STD - ustawienie znaczn
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? 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],
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