Information Technology Reference
In-Depth Information
Zahlentyp ist, müssen insgesamt also drei Bedingungsbits minimal vorgesehen wer-
den, um alle in Bild 1.6 aufgeführten Bedingungsgrößen daraus ableiten zu können.
Bemerkenswert ist, dass hier 10 Bedingungsgrößen aus drei Bits mit 2
3
= 8 mögli-
chen Kombinationen ableitbar sind. Dies ist möglich, weil konkrete Vergleichsope-
randen nicht z.B. die Bedingung „kleiner gleich“ erfüllen, sondern entweder die
Bedingung „kleiner“ oder die Bedingung „gleich“.
In den meisten Prozessoren werden Operanden verglichen, indem sie zunächst sub-
trahiert und das erzeugte Ergebnis ausgewertet wird, wobei mögliche Bereichsüber-
schreitungen, wie sie bei allen arithmetischen Operationen, also auch der Subtrak-
tion, auftreten können, zu berücksichtigen sind. Bei der Verknüpfung vorzeichenlo-
ser Zahlen werden Bereichsüberschreitungen durch den
Übertrag C
(
carry
), bei
Verknüpfung vorzeichenbehafteter Zahlen durch einen
Überlauf V
(
overflow
) ange-
zeigt (siehe Abschnitt 1.1.2 und 1.1.3). Der Übertrag C entspricht bei einem Ver-
gleich durch Subtraktion außerdem direkt der Bedingung „kleiner“ für vorzeichen-
lose Zahlen (siehe Tabelle 1.1). Für vorzeichenbehaftete Zahlen ist dieselbe Bedin-
gung etwas komplizierter zu generieren, nämlich durch Bildung der Antivalenz des
vorzeichenbehafteten Überlaufs V und des Ergebnisvorzeichens. Letzteres muss
daher im Bedingungscode enthalten sein und wird als
Bedingungsbit N
(
negative
)
bezeichnet. Die Gleichheit zweier Operanden wird schließlich durch das
Bedin-
gungsbit Z
(
zero
) anzeigt. Es wird gesetzt, wenn das mit dem Vergleich erzeugte
Subtraktionsergebnis gleich Null ist [46].
Tabelle 1.1.
Bedingungsgrößen in Abhängigkeit von den Bedingungsbits Z (zero), N (negative), C
(carry) und V (overflow). Mnemone entsprechen denen des ColdFire MFC5206 von Motorola
Bedingungsgröße
Mnemon
Operation
Ausdruck
Zahlentyp
Gleich (equal)
eq
=
Z
Typunabhängig
Ungleich (not equal)
ne
≠
¬
Z
Größer (higher than)
ht
>
¬
C
∧¬
Z
Größer gleich (higher than or same)
hs
≥
¬
C
Vorzeichenlos
Kleiner (lower than)
lo
<
C
Kleiner gleich (lower than or same)
ls
≤
C ∨ Z
=
(N
V)
∧¬
Z
Größer (greater than)
gt
>
Größer gleich (greater than or equal)
ge
≥
(N
=
V)
Vorzeichen-
behaftet
Kleiner (less than)
lt
<
(N
≠
V)
Kleiner gleich (less than or equal)
le
≤
(N
≠
V)
∨
Z
Zahlenbereichsüberschreitung
vs
V
Zahlenbereichsunterschreitung
vc
¬
V
Vorzeichen-
behaftet
Negativ
ne
N
Positiv
pl
¬
N
In Tabelle 1.1 sind die verarbeitbaren Bedingungsgrößen und die Art und Weise, wie
sie bei einem Vergleich durch Subtraktion aus den Bedingungsbits C, V, N und Z
hergeleitet werden können, aufgezählt. Ebenfalls sind dort exemplarisch die von
Search WWH ::
Custom Search