123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>notas.html</title>
- </head>
- <body>
- <h2>Compilador lenguaje rpc</h2>
- <p>Un diminuto lenguaje de pruebas.</p>
- <h2>Instrucciones</h2>
- <h3>mostrar</h3>
- <pre><code>mostrar "texto cualquiera".
- mostrar variable.
- </code></pre>
- <p>similar a <code>print "texto cualquiera"</code>, <code>print var1</code></p>
- <h4>Gramatica</h4>
- <p>W = {a,..,z,A,..,Z}
- vars = {{W},0,..,9,_}
- ascii = valores ascii </p>
- <pre><code>P: mostrar X|mostrar V
- X-> "T
- T-> [ascii1]*F
- F-> "FF
- V-> [W][vars]*FF
- FF-> .
- </code></pre>
- <h4>Automata</h4>
- <pre><code> 'mostrar ' '"' [ascii1]* '"' '.'
- (0)--------->(1)---->(2)-------->(3)---->(4)----->((5))
- \ [W][vars]* '.' ^
- ------------>(6)------------------/
- </code></pre>
- <h3>Declarar enteros</h3>
- <pre><code>entero X=<valor entero>.
- </code></pre>
- <h4>Gramatica</h4>
- <pre><code>P: entero V
- V-> [W][vars]*I
- I-> = V|= V| =V|=V
- V-> [0-9]*FF
- FF-> .
- </code></pre>
- <h4>Automata</h4>
- <pre><code> 'entero ' [W][vars]* = V|= V| =V|=V [0-9]* '.'
- (0)--------->(1)------------>(2)---------------->(3)------->(4)---->((5))
- </code></pre>
- <h3>Asignar entero</h3>
- <pre><code>var = <valor entero>.
- </code></pre>
- <h4>Gramatica</h4>
- <pre><code>P: [W][vars]*I
- I-> = N| =N|= N|=N
- N-> [0-9]*FF
- FF-> .
- </code></pre>
- <h4>Automata</h4>
- <pre><code> [W][vars]* = N| =N|= N|=N [0-9]* '.'
- (0)------------>(1)--------------->(2)------>(3)----->((4))
- </code></pre>
- <h3>Incrementar entero 1 unidad</h3>
- <pre><code>var++.
- </code></pre>
- <h4>Gramatica</h4>
- <pre><code>P: [W][vars]*'++'
- </code></pre>
- <h4>Automata</h4>
- <pre><code> [W][vars]* '++'
- (0)----------->(1)------>((2))
- </code></pre>
- <h3>Decrementar entero 1 unidad</h3>
- <pre><code>var--.
- </code></pre>
- <h4>Gramatica</h4>
- <pre><code>P: [W][vars]*'--'
- </code></pre>
- <h4>Automata</h4>
- <pre><code> [W]+[vars]* '--'
- (0)------------>(1)----->((2))
- </code></pre>
- </body>
- </html>
|