クラスの MIPS アーキテクチャを使用してアセンブリでプログラムを作成していますが、ユーザーが入力文字を取得してレジスタに格納して処理する方法がわかりません。
プログラムはコンソールを開き、メッセージを出力し、ユーザーが文字を入力すると、プログラムで次に何が起こるかが決まります。
私が言ったように、私はプログラムでキャラクターを操作できるようにキャラクターをつかむ方法を理解するのに苦労しています.
ありがとう
これは非常に良い出発点です: MIPS クイック チュートリアル
ここにチュートリアルのスニペットがあります
li $v0, 5 # load appropriate system call code into register $v0;
# code for reading integer is 5
syscall # call operating system to perform operation
sw $v0, int_value # value read from keyboard returned in register $v0;
# store this in desired location
ユーザー空間で作成しているアセンブリで割り込みを直接操作することはありません。
例外コードを記述します。割り込み (例外) サービス ルーチンは 0x80000180 (QtSpim、PCSpim 上) で開始します。キーボード レジスタを読み取ります。データは 0xFFFF0004 にあります。チャーをつかみます。その後、例外から戻ります。
または、0xFFFF0000 でキーボードの状態をポーリングできます。レディビットがオンのとき、データを読み取ります。
jjc.hydrus.net/cs61c/handouts/interrupts2.pdf