私はこの単純なプログラムをMIPSアセンブリで作成しました。
.data
.text
main:
li $v0, 12 # read_char
syscall
move $a0, $v0
li $v0, 11 # print_char
syscall
j main # repeat forever
QtSpimで実行すると、正しく機能します。コンソールから文字を取得し、入力するとすぐに印刷して、繰り返します。ただし、QtSpimのコンソールでは、プログラムの入力を貼り付けることができません(できますが、読み取られません)。そこで、spim for Linux(コマンドライン)バージョン9.1.8で実行してみました。動作しますが、文字が入力されてもすぐには反応しません。カットアンドペーストせずに文字を入力する場合でも、常に改行を待ちます。だから私はこの振る舞いを期待しています:
(spim) load "echo.asm"
(spim) run
hheelllloo
しかし、私は代わりにこれを手に入れます:
(spim) load "echo.asm"
(spim) run
hello [I press Enter here]
hello
何か案は?前もって感謝します。