next up previous
: [補足] これまでのまとめ : マイクロプロセッサ演習 : [SPIM] 配列の和


[SPIM] 繰り返し構造を使ったプログラムの記述

問題 2 でループ構造を持ったプログラムの働きを みてもらったが、この問題ではそのようなプログラムを実際に 記述してもらう。

先程のプログラムと同様、array[$i$] $=i+1$ ( $0\leq i \leq 9$) なる配列がメモリに格納されている時、その値を画面に表示する プログラムを記述してみよう。

ここで、「画面に表示する」とは、演習第 1 回で取り扱った サンプルプログラム hello.asm のような振舞いをするプログラムを 書く、ということである。(忘れた人は、もう一度動かしてみよう)

配列の要素一つ一つを表示するごとに改行を入れるのは面倒なので、 要素が連続して表示させるプログラムで構わない (つまり表示される結果が ``12345678910" となるプログラムでよい)。

プログラムの骨組みは PrintArray.asm なので、このファイルに 追加するかたちで記述すること。

なお、レジスタ (例えば $t0) の値を画面に表示するのは以下の 3 行の記述で 行なうこと。

\begin{figure}\hspace*{1cm}
\begin{tabular}{ll}
li & \$v0, 1 \\
add & \$a0, \$t0, \$zero\\
syscall &
\end{tabular}\end{figure}
この 3 行の意味は現在では気にしなくて構わない。

平成16年11月1日