coursework/cw03.tex
changeset 201 c813506e0ee8
parent 200 7415871b1ef5
child 202 180cbfc1520a
--- a/coursework/cw03.tex	Fri Nov 22 20:27:30 2013 +0000
+++ b/coursework/cw03.tex	Sat Nov 23 09:17:59 2013 +0000
@@ -64,8 +64,29 @@
 
 \noindent
 This coursework is worth 4\% and is due on 13 December at 16:00. You are asked to 
-implement a compiler for the WHILE language. You are supposed to target the
-assembler language provided by the Jasmin for running on the Java Virtual Machine.
+implement a compiler for the WHILE language which targets the
+assembler language provided by the Jasmin. This assembler 
+is available from
+
+\begin{center}
+\url{http://jasmin.sourceforge.net}
+\end{center}
+
+\noindent
+There is a user guide for Jasmin
+
+\begin{center}
+\url{http://jasmin.sourceforge.net/guide.html}
+\end{center}
+
+\noindent
+and also a description of some of the instructions that the JVM understands
+
+\begin{center}
+\url{http://jasmin.sourceforge.net/instructions.html}
+\end{center}
+
+\noindent
 
 
 \noindent
@@ -78,7 +99,19 @@
 
 \subsection*{Question 1 (marked with 1\%)}
 
+You need to lex and parse WHILE programs and submit the assembler 
+instructions for the Fibonacci program and for the program you submitted
+in Coursework 2 in Question 3. The latter should be so modified that 
+a user can input the upper bound on the console (in the original question
+it was fixed to 100).
 
+\subsection*{Question 2 (marked with 2\%)}
+
+Extend the syntax of you language so that it contains also \texttt{for}-loops, like
+
+\begin{center}
+\texttt{for} \;\textit{Id} \texttt{:=} \textit{AExp}\; \texttt{upto} \;\textit{AExp}\; \texttt{do} \textit{Block} 
+\end{center}
 
 \end{document}