(b, c0, c1, ..., cn, ...) -> (b', c0', c1', ..., cn', ...)
Für die einzelnen Befehle gelten folgende Abbildungsvorschriften:
Ein- und Ausgabebefehle: Load, CLoad und Store
LOAD i | b' = b + 1 | c0' = ci | cj' = cj für j > 0 | |
CLOAD i | b' = b + 1 | c0' = i | cj' = cj für j > 0 | |
STORE i | b' = b + 1 | ci' = c0 | cj' = cj für j <> i und j > 0 |
Arithmetische Befehle: Add, CAdd, Sub, CSub, Mult, CMult, Div und CDiv
ADD i | b' = b + 1 | c0' = c0 + ci | cj' = cj für j > 0 | |
CADD i | b' = b + 1 | c0' = c0 + i | cj' = cj für j > 0 | |
SUB i | b' = b + 1 | c0' = c0 - ci | für c0 >= ci | cj' = cj für j > 0 |
c0' = 0 | sonst | |||
CSUB i | b' = b + 1 | c0' = c0 - i | für c0 >= i | cj' = cj für j > 0 |
c0' = 0 | sonst | |||
MULT i | b' = b + 1 | c0' = c0 * ci | cj' = cj für j > 0 | |
CMULT i | b' = b + 1 | c0' = c0 * i | cj' = cj für j > 0 | |
DIV i | b' = b + 1 | c0' = c0 / ci | für ci > 0 | cj' = cj für j > 0 |
CDIV i | b' = b + 1 | c0' = c0 / i | für i > 0 | cj' = cj für j > 0 |
Sprungbefehle: Goto, If c0=0 Goto
GOTO i | b' = i | cj' = cj für j >= 0 | ||
IF c0=0 GOTO i | b' = i | für c0 = 0 | cj' = cj für j >= 0 | |
b' = b + 1 | sonst |
Stopbefehl: End
END | b' = b | cj' = cj für j >= 0 |
zurück zur Einleitung