Diskuze: Překladač PL/0 - příkaz WRI - interpret
Zobrazeno 2 zpráv z 2.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Má myšlenka je následující:
Uložení řetězce znaků:
Uživatel je vyzván k zadání počtu znaků, které by si přál zadat. Poté
běží cyklus (a<POČET_ZNAKŮ) a pro každý jeho průchod je uživatel
vyzván k zadání ASCII hodnoty znaku.
Vypsání řetězce znaků:
Opět běží cyklus a pomocí instrukce WRI 0 0 vypisuje znak z vrcholu
zásobníku. Problém je ovšem v tom, že řetězec je samozřejmě otočený
(např. zadaná posloupnost znaků A,B,C se vypíše jako CBA).
Bohužel nedovedu vymyslet způsob, jak řetězec otočit. Budu vděčný za
každou radu.
Děkuji.
INT 0 5
&ECHO Zadejte delku retezce:
REA 0 0
STO 0 3
LIT 0 1
STO 0 4
@loop_nacti LOD 0 4
LOD 0 3
OPR 0 13
JMC 0 @konec_nacti
&ECHO Zadejte ASCII kod retezce:
REA 0 0
LOD 0 4
LIT 0 1
OPR 0 2
STO 0 4
JMP 0 @loop_nacti
@konec_nacti LIT 0 1
STO 0 4
@loop_vypis LOD 0 4
LOD 0 3
OPR 0 13
JMC 0 @konec_vypis
WRI 0 0
LOD 0 4
LIT 0 1
OPR 0 2
STO 0 4
JMP 0 @loop_vypis
@konec_vypis RET 0 0
Zobrazeno 2 zpráv z 2.