2500336055

2500336055



•    operacje na napisach;

•    instrukcje sterujące wykonaniem programu.

Instrukcje sterujące wykonaniem programu, czyli instrukcje warunkowe, mogą być instrukcjami skoku, warunkowego przypisania lub warunkowego wykonania jakiejś operacji. Instrukcje warunkowego wykonania operacji umożliwiają implementację bez skoków krótkich sekwencji if-else, co może wydatnie poprawić szybkość działania programu. Instrukcje warunkowe są realizowane wg jednego z następujących modeli;

•    ze znacznikami - Operacja warunkowa jest realizowana dwufazowo, pierwsza instrukcja modyfikuje jedno-bitowy znacznik lub kilka jednobitowych znaczników, druga instrukcja wykonuje skok warunkowy w zależności od wartości znacznika lub znaczników. Model ten umożliwia rozdzielenie w czasie wykonania tych instrukcji, druga instrukcja nie musi występować w kodzie programu bezpośrednio po pierwszej. Przykładem tego modelu są architektury x86, IA-32, x86-64.

•    bez znaczników - Jedna instrukcja sprawdza warunek i w zależności od jego wyniku wykonuje skok. Model ten jest popularny w architekturach RISC.

•    z predykatami Predykat jest uogólnionym znacznikiem, mogącym przechowywać wartość logiczną wcześniej obliczonego warunku. Instrukcje warunkowe specyfikują numer predykatu. Model ten został zaimplementowany w architekturze IA-64.

Można wyróżnić dwa style realizacji dwuargumentowych operacji arytmetycznych (dodawanie, mnożenie itp.):

•    jeden z argumentów źródłowych jest jednocześnie argumentem wynikowym, np. add rl, r2 oznacza rl := rl + r2 lub r2 := rl + r2;

•    argument wynikowy może być różny od argumentów źródłowych, np. add rl, r2, r3 oznacza rl := r2 + r3 lub r3 := rl -I- r2.

4.5 Tryby adresowania argumentów

Tryb adresowania określa sposób specyfikacji argumentu operacji.

Nazwa i opis

Typowe oznaczenia

Przykłady w IA-32

natychmiastowy (argument w kodzie instrukcji)

7

mov dword [1000], 7

bezpośredni (adres argumentu w kodzie instrukcji)

[1000]

mov dword [1000], 7

pośredni (adres argumentu w pamięci)

[[1000]]

nie występuje

rejestrowy bezpośredni (argument w rejestrze)

rl

mov eax, [ebx]

rejestrowy pośredni (adres argumentu w rejestrze)

[rl]

mov eax, [ebx]

indeksowy

[rl+8]. [rl+r2]

mov eax, [ebx+4*ecx+8]

stosowy (względem wartości wskaźnika stosu)

[sp], [sp+4]

push eax; pop eax; mov [esp+2*ecx+4], eax

względny (względem wartości licznika rozkazów) rejestrowy pośredni z preinkrementacją

ip+8, pc+9 [+rl]

jc przesunięcie

rejestrowy pośredni z postinkrementacją

[rl+]

movs; pop eax

rejestrowy pośredni z predekrementacją

[-rl]

loop; push eax

rejestrowy pośredni z postdekrementacją

[rl-]

movs

W zasadzie w każdym mikroprocesorze występują tryby adresowania natychmiastowy, rejestrowy bezpośredni i rejestrowy pośredni. W większości współczesnych mikroprocesorów występuje jakiś wariant trybu indeksowego. Tryb względny też występuje w wielu mikroprocesorach, ale głównie w instrukcjach skoków.

4.6 Cykl pracy mikroprocesora

Mikroprocesory są cyfrowymi układami synchronicznymi. Ich praca jest synchronizowana sygnałem zegarowym. Mikroprocesor, z punktu widzenia programisty, wykonuje zaprogramowane instrukcje w sposób sekwencyjny. Wykonywanie programu przez pierwsze mikroprocesory można podzielić na następujące cykle. Cykl rozkazowy (ang. instruction cycle) jest okresem czasu potrzebnym do pobrania i wykonania pojedynczej instrukcji. Cykl

10



Wyszukiwarka

Podobne podstrony:
•    operacje na napisach; •    instrukcje sterujące wykonaniem
2.1. Okres technologiczny wykonania 1 operacji na 1 sztuce wyrobu prostego Okres ten składa się z cz
skanuj0062 (56) Rozdział 3. ♦ Instrukcje sterujące i funkcje 75 Szczególną uwagę należy zwrócić na i
64 mostka wykonawcza Operacje na rejestrze A (r = c2 Aq7 Ap At -> 4-wejściowa bramka AND): M •
b) przedmioty uzupełniające • wykonanie dwóch przygotowanych utworów na dowolnym instrumencie oraz
Transakcje Transakcja to ciąg operacji (na bazie danych), które powinny być wykonane łącznie i
Operacja to częsc procesu technologicznego wykonana na jednym stanowisku roboczym przez pracownika n
Q.Printer 2.0 instrukcja obsługi4.2. Operacje na całych dokumentach Po kliknięciu na miniaturze doku
Język C, instrukcje sterujące (laboratorium) Opracował: Tomasz Mączka (tmaczka@kia.prz.edu.pl ) Na
img39 Przeglądanie tablic Bardzo często zachodzi potrzeba wykonania jakiejś operacji na wszystkich e
1. DESERY W PUCHARKACH - INSTRUKCJA Poziom trudności: + Opis (czyta na głos dorosły): Do wykonania t
Scan#0 Dodatek A: Skrócona lista instrukcji dla sterowników SIMATIC S7 300/400 Operacje na układach

więcej podobnych podstron