2011-11-08 19 views
4

Mipsにasciiz文字列が与えられたプログラムを書いています:.asciiz "7A23232"文字列内の各文字は、カードのデッキからのカードに対応します。私は種類の2つと種類の3つを確認する必要があります。 String内の個々の文字をチェックするにはどうすればよいですか?私はJavaのcharAt()に似た何かを探しています。MIPSで文字列を解析する

+0

宿題?それのような音... –

答えて

3

MIPSコンパイラが便利で、あなたを誤解したくないので、ここにコードを記入するつもりはありませんが、あなたがする必要があるのは、各文字を読むことです文字列を一度にレジスタ1に格納し、残りの文字をループしてをチェック/比較して、現在の文字の値と一致するかどうかを確認します。その場合は、ペアカウンタである別のレジスタをインクリメントします。あなたが返す必要があるものに応じて、すぐにマッチを返すか、最高の文字と最高のマッチ量を格納するために別のレジスタを設定することができます。正直なところ、このようなことについては、Cのような低レベルの言語で記述して、ループやローカルがどこにあるのかを知り、それを変換することから始めたいと思うかもしれません。

+0

私はそれを書いて、アルゴリズムを持っています。私の問題は、文字列からレジスタへの単一の文字を取得しています。バイトを読み込むのがトリックですか? – tjpaul

+0

はい、あなたのキャラクターが「ワイド」でない限り、そうすべきです。 –