問題タブ [mars-simulator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
assembly - 私の MIPS コードのバグはどこですか?
私は助けが必要です。このコードは MARS で作成しました。ユーザーから整数を受け取り、それを HEX に変換することになっています。私は何時間もそれを調べてきましたが、私が見る限り、うまくいくはずです。これは機能していない唯一の部分であるため、プログラムのループ部分と出力部分のみを含めました。誰かがコードが間違っている場所を指摘できますか? ありがとうございました。
PSビットごとのANDを台無しにしていると思います。これを使用して下位ビットをマスクしましたが、何らかの理由で、ANDではなくADDのように見えます。:-(
ループ:
MakeHighDigit:
MakeLowDigit:
桁アウト:
arrays - MIPSでのアレイの作成(およびアクセス)
MIPSアセンブリで配列を作成してから、すべての要素を一緒に追加しようとしています。しかし、以下を組み立てようとすると、
read_arrayの1行目の7番目のエラー:「。word」ディレクティブをテキストセグメントに表示できません。アセンブル:操作がエラーで完了しました。
これが私のアセンブリです:
ありがとう!
assembly - MIPSアセンブリのユーザー入力からファイル名を読み取る
ユーザーにファイル名を尋ねるMIPSアセンブリコードを書いています。これにより、ファイルの内容に関する統計が生成されます。
ただし、ファイル名を最初から変数にハードコーディングすると問題なく機能しますが、ユーザーにファイル名の入力を求めると機能しません。
デバッグの結果、プログラムがメモリ内のユーザー入力の最後に0x00文字と0x0a文字(asciitable.comを確認)を追加することを発見しました。そのため、ユーザー入力に基づいてファイルを開きません。
誰かがそれらの余分な文字を取り除く方法、またはユーザーからその名前を取得した後にファイルを開く方法について何か考えがありますか?
これが私の完全なコードです(ユーザーのものからのファイル名を除いては正常に動作しており、誰でも自由に使用できます):
注:MARSシミュレーターを使用していますが、それが異なる場合は
更新:次の手順を記述して呼び出すことにより、問題を解決しました。
assembly - 無効なプログラム カウンター値: 0
私は現在、MIPS プロセッサの下でアセンブリ言語を使用しています。現在、MARS シミュレーターを使用していますが、理由は不明ですが、実行するたびに次のエラー メッセージが表示されます。
Go: try.s の実行
エラー: 無効なプログラム カウンタ値: 0
Go: 実行はエラーで終了しました。
使用しているコードとは関係なく、このエラー メッセージが表示されます。これが MARS シミュレーターのバグなのか、それとも私が見逃しているものなのか疑問に思っているだけです。
file - MIPSアセンブリを使用したファイルの読み取り
LEDシミュレーターに表示されるさまざまな色に対応する.datファイルから文字を読み込むプログラムを作成しようとしています。x =オフ、R =赤など。私の問題は、.datファイルを開いたときに何が間違っているのか理解できないことです。私は周りを見回して考えられるすべてのことを試しましたが、アセンブルして実行するたびに、$v0に-1が表示されてエラーを示します。ファイルを開く/読み取る/閉じるための私のコードは次のとおりです。
ファイルmaze1.datは、MIPSプログラムと同じディレクトリにあります。ヘルプや提案は大歓迎です。
assembly - queue、enque、deque、qempty 関数の作成
これは、幅優先のグラフ トラバーサル アルゴリズムになります。「queue」、「dequeue」、「enqueue」、「qempty」関数を作成する方法がわかりません。助けが必要です。
キュー: キューを作成します ($s5)
enqueue: ソースから q に値を取得します
dequeue: 項目を q から v にポップします ($s5 --> $s3)
qempty: q が空かどうかをチェックします
これは私のコードです:
assembly - 単語のバイトを反転/反転する命令を探しています
LEDディスプレイに表示するために、4バイトワードのバイトを反転/反転する必要があります。
どうやらこれを達成するための簡単な指示が1つありますが、どこにも見つかりませんでした。
assembly - MIPS: ソート方法
MIPS アセンブリでの並べ替えに関するこの問題について、あなたの助けが必要です:
10 進整数のみを含むテキスト ファイルを読み取り、それらを降順に並べ替える MIPS プログラムの作成方法。
プログラムは次のことを行う必要があります。
■ テキスト ファイルを開き、その内容を文字の配列に読み込みます。配列は 1000 文字に制限する必要があります。MARS には、テキスト ファイルを開いて読み取るためのシステム コールが用意されています。
■ 配列を 1 文字ずつトラバースします。各 10 進文字列を 2 進数に変換します。10 進文字列は、1 つまたは複数の 10 進文字で構成されます。空白または改行文字で終了する必要があります。他のすべての文字を無視してスキップします。すべての 10 進整数を単語の配列に格納します。整数配列のサイズは 100 ワードに制限する必要があります。
■ 整数配列を降順でソートします。
■ソートされた配列を表示する
実際、私は配列を持っているので、配列を並べ替えることに問題はありませんが、テキストファイルを処理し、それを読み取り、配列を10進数に変換することに問題があります。
あなたはなにか考えはありますか ?コメント ? 提案?
事前にThx
更新: 質問は何ですか? 問題は、txt ファイルから読み取り、数値を 10 進数に変換する方法です。これが問題です。
assembly - 除算オペランドの右端のビットを設定する
MARS MIPSシミュレーターを使用して、アセンブリコードの分割をシミュレートしています。シフトプロセス中に、商の右端のビットを1と0に設定するにはどうすればよいですか?ori $ t2、$ t2,1を使用して1を設定し、andi $ t2、$ t2、-2を使用して0を設定しましたが、それは私が行うべき方法ですか?
assembly - 浮動小数点を正規化する
MARSを使用して浮動小数点加算を行っています。
指数を揃えた後、仮数を合計しましたが、仮数を左または右にシフトするために、合計がまだ正規化されているかどうかを検出するにはどうすればよいですか? ありがとうございました