Ľudmila Jánošíková

Programovanie v jazyku symbolických adries

pre 32-bitové procesory Intel
Obsah Index
Vyhodnotenie výrazov

Pri vyhodnotení výrazov FPU používa reverznú (poľskú) notáciu (RPN). RPN je tzv. postfixová notácia, ktorá dáva operátory za operandy, na rozdiel od bežne používanej infixovej notácie, ktorá umiestňuje binárne operátory medzi dva operandy a unárny operátor pred operand. Napr. výraz (a+b)*(c+d) zapísaný v RPN vyzerá takto: ab+cd+*. Tento zápis z hľadiska FPU znamená, že najprv musíme operandy uložiť do zásobníka a potom na ne aplikovať operátor, čiže použiť príslušnú aritmetickú, prípadne porovnávaciu inštrukciu. Programová sekvencia, ktorá vyhodnotí uvedený výraz a výsledok ponechá v zásobníku FPU, vyzerá nasledovne:

finit;st(0)st(1)st(2)
fld a;a
fld b;ba
fadd;a+b
fld c;ca+b
fld d;dca+b
fadd;c+da+b
fmul;(a+b)*(c+d)

Ako vidíte, RPN nepoužíva zátvorky. Pri konverzii výrazu z infixovej do postfixovej notácie postupujte od najvnútornejšieho výrazu v zátvorke, preveďte ho do RPN a pokračujte smerom von rešpektujúc prioritu operátorov.

Hore

Načo je vám jazyk symbolických adries?

Architektúra moderných procesorov

Registre

Spôsoby adresovania

Premenné a návestia

Symbolické konštanty

Inštrukčný súbor

Segmentové direktívy

Moduly

Služby operačného systému MS-DOS

Služby operačného systému Windows 95/98/NT/XP

Systémová úroveň vstupu a výstupu

Prostriedky pre prípravu programu

Inštrukčný súbor FPU | Cvičenie
Vydala Žilinská univerzita v Žiline, 2000. ISBN 80-7100-723-4.
Otázky a pripomienky môžete poslať autorke.
Naposledy upravené 29.10.2007.