0

ユーザーから文字列を取得し、各文字が文字列で使用された回数を出力する方法についてのヘルプを探しています。

擬似コード文字列「文字列を入力してください:」文字列を取得して配列に保存し、文字値のASCII重複をチェックして、対応する文字が出力されたときに出力します。

例:Hello World

A: 
B:
C:
D: 1
E: 1
...
H: 1
...
W: 1

コード

.data
intro: .asciiz "Letter Checker Program" 
question: .asciiz "\nPlease enter a string for evaluation: "

string: .space 1024
alphabet: .space 26


.text 

main:
jal setup
#jal analyze
#jal results

li $v0, 10
syscall 

setup:
li $v0, 4   # outputing name and program information
la $a0, intro
syscall

li $v0, 4   # asksing for string input
la $a0, question
syscall 

li $v0, 8
la $a0, string
li $a1, 1024
syscall

jr $ra      # return

analyze:

loop:   

ループ:

結果:

4

1 に答える 1

0

あなたがしたいことは:

  1. 結果を格納するためのスペース(26 * 4バイト)を作成し、0で埋めます
  2. 文字列内のすべての文字をループして、lb
  3. 文字の数値、つまり(ステップ1の)メモリ位置を決定します。小文字と大文字を忘れないでください。
  4. そのメモリ位置(4バイト、使用lw)をロードし、値を1増やして、次のように再度格納します。sw
  5. 0(文字「0」ではない)に遭遇したら停止します
  6. 分析では、アルファベットのすべての文字をループし、手順1で対応するメモリ位置をロードして、結果を出力します
于 2013-03-04T10:32:46.193 に答える