CコードからMIPSアセンブリコードへの変換問題を教えてください。


以下のC のコードに対応するMIPS のアセンブリ・コードを書け。
C コード:
#define TAB_SIZE 8
int tab[TAB_SIZE];
void main()
{
int i;
for (i = 1; i < TAB_SIZE; i++) {
tab[i - 1] = tab[i];
}
}
• SPIM でのシミュレーションのため、
tab[8] = {8, 9, 10, 11, 12, 13, 14, 15};
としてコードを書け。つまり、データ・セグメントを次のようにせよ。
.data
tab: .word 8, 9, 10, 11, 12, 13, 14, 15
• SPIM のDATA セクションが以下のようになることを確認せよ。
[0x10010000] 9
[0x10010004] a
[0x10010008] b
[0x1001000c] c
[0x10010010] d
[0x10010014] e
[0x10010018] f
[0x1001001c] f
1

このQ&Aに関連する最新のQ&A

A 回答 (1件)

で, あなたは何が分からないんですか?


(特にこの程度の) C なんて「アセンブリに毛が数本生えた」程度のものでしかありません. だから, C プログラムの動作が分かっていれば, それを (MIPS の) アセンブリに変換するだけです.
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q「どんなときも。」のバラード

以前にとある場所で流れていたのですが、槙原敬之の「どんなときも。」にバラードが存在したのです。
原曲はマーチ調の曲ですが、このバージョンは特に癒されました。
このバラードバージョンの「どんなときも。」が収録されているアルバムがあったら教えて下さい。

Aベストアンサー

 3rdシングルの「どんなときも。」のC/Wとして収録されていますが、アルバムには入っていませんね。インストゥルメンタル・ヴァージョンとして一部なら入っていますが。とてもいい曲調なので、入っていても良さそうですけどねぇ。
 

参考URL:http://st.sakura.ne.jp/~masawo/nm/review_single.html

Qオートマトン L = {ww^R: w ∈ {a, b}+}の中心の見つけ方

下記のようなオートマトンがあります。

L = {ww^R: w ∈ {a, b}+}
M = (Q, Σ, Γ, δ, q0, z, F)
Q = (q0, q1, q2),
Σ = {a, b},
Γ = {a, b, z},
F = {q2}.

(1)wをスタックに載せるために:
δ(q0, a, a) = {(q0, aa)}
δ(q0, b, a) = {(q0, ba)}
δ(q0, a, b) = {(q0, ab)}
δ(q0, b, b) = {(q0, bb)}
δ(q0, a, z) = {(q0, az)}
δ(q0, b, z) = {(q0, bz)}

(2)どこが文の中心か見つけるために(状態がq0からq1に変わる):
δ(q0, λ, a) = {(q1, a)}
δ(q0, λ, b) = {(q1, b)}

(3)w^Rと一致させるために:
δ(q1, a, a) = {(q1, λ)}
δ(q1, b, b) = {(q1, λ)}

(4)最後に:
δ(q1, λ, z) = {(q2, z)}

とあります。
問題の中にこれを元にしてL = {wcw^R: w ∈ {a, b}*}のnpdaをつくりなさい、
というのがありますが、それは(2)を
δ(q0, c, a) = {(q1, a)} ←cが入力されたらそこが中心
δ(q0, c, b) = {(q1, b)}
に変えて
δ(q0, λ, z) = {(q2, λ)} ←何も入力されなかったら文字を受け付ける(* → +なので)
を付け加えればよいですか? (多分、そうですよね?)

それと、上の(2)がどうやって中心を見つけているのか分かりません。
入力中は何文字入力されるかなんて分かりませんよね。
例えばbaabbaabという文があったとすると最初の四文字でbaabで
「さては中心はbaとabの間だな!」とか勘違いとかしないんですか?
入力がλということは毎回毎回入力がある度にチェックしているということでしょうか?
混乱している私に分かりやすい説明ができる方、どうかお願いします。

下記のようなオートマトンがあります。

L = {ww^R: w ∈ {a, b}+}
M = (Q, Σ, Γ, δ, q0, z, F)
Q = (q0, q1, q2),
Σ = {a, b},
Γ = {a, b, z},
F = {q2}.

(1)wをスタックに載せるために:
δ(q0, a, a) = {(q0, aa)}
δ(q0, b, a) = {(q0, ba)}
δ(q0, a, b) = {(q0, ab)}
δ(q0, b, b) = {(q0, bb)}
δ(q0, a, z) = {(q0, az)}
δ(q0, b, z) = {(q0, bz)}

(2)どこが文の中心か見つけるために(状態がq0からq1に変わる):
δ(q0, λ, a) = {(q1, a)}
δ(q0, λ, b) = {(q1, b)}

(3)w^Rと一致させるため...続きを読む

Aベストアンサー

先の2つの御質問からすると、non-deterministic(非決定的)なPDAを考えているわけですよね。

非決定的なオートマトンでは、「1つの入力系列に対して複数の遷移経路が考えられるが、そのうち1つでも受理状態で遷移が終了する経路が存在すれば、オートマトンはその入力を受理する」と考えます。

baabbaabの例であれば、"b"しか入力されていない状態、"ba"まで入力された状態、...、"baabbaab"まで入力されてしまった状態、のどこで(2)の遷移をやってもいいんです。
そのうち"baab"の状態で(2)の遷移をすれば受理状態で遷移が終了するので、このオートマトンは"baabbaab"を受理するといえるわけです。

> それは(2)を
> ....
> を付け加えればよいですか? (多分、そうですよね?)
そこはそれで合っていると思いますよ。

Q槇原敬之「どんなときも。」について

不思議でいつもカラオケに行くと気になることがあります。
「どんなときも。」にはかならずどんなときものあとに。があります。
これって何の。なんでしょうね?
いつも気になってしょうがないのでおしえてください。
お願いします。

Aベストアンサー

この「。」は槇原さん自身が意図的に付けたものです。
「どんなときも」の言葉の後に、何の言葉も続かないように、言い切った言葉にしたかったから、曲のタイトルは「。」を付けたとご本人が言っていたと思います。

うまく説明出来なくてごめんなさい。
確かそうだったと思います。

余談ですがこれは映画「就職戦線異常なし」の主題歌で、「人生の応援歌」みたいのを作って下さいと依頼されて作った曲だそうです。ちなみにコンサートではこの曲、すごい盛り上がります!

QGASの.align 4,0x90の0x90の意味

Cソースをアセンブリしたとき、.align 4,0x90とでるのですが、.align 4,0x90の0x90はどういう意味ですか。align 4+NOPという意味ですか。それとも4Bを0x90で埋めろと意味ですか。どちらでしょう。

Aベストアンサー

困ったときはまずマニュアルを読む.

参考URL:https://sourceware.org/binutils/docs-2.24/as/Align.html#Align

Q「どんなときも。」のLiveバージョン

槇原敬之さんの「どんなときも。」のLiveバージョンの収録されているCDタイトルを教えてください。

Aベストアンサー

live版三枚共に「どんなときも。」は入っているはず。

THE CONCERT CONCERT TOUR 2002~Home Sweet Home~
SYMPHONY ORCHESTRA“cELEBRATION”
SYMPHONY ORCHESTRA“cELEBRATION 2005”~Heart Beat~

Q[TeX,DVI,PS,PDF]

エラーが出て読み込めないepsファイルがあります。
どうすればいいでしょうか?
そもそも「endobj」とは何でしょうか?

** WARNING ** Didn't find "endobj".
** WARNING ** Failed to include image file "./421.eps"
** WARNING ** >>[コマンドを打って正常にPDFに変換できるか確認しろというメッセージだが長くて質問文に入らないので略]
** WARNING ** pdf: image inclusion failed for "421.eps".
** WARNING ** Failed to read image file: 421.eps
** WARNING ** Interpreting special command PSfile (ps:) failed.
** WARNING ** >> at page="17" position="(178.298, 728.302)" (in PDF)
** WARNING ** >> xxx "PSfile="421.eps" llx=16 lly=22 urx=797 ury=986 rwi=7810 "

●GSViewはEncapsulated Postscriptの仕様で定義された「一行が255文字以下」を満たしていないという理由を掲示した上で表示してくれたが、dvioutでは画像は表示されなかった。

●EPSファイルは、VisioのオブジェクトをAdobe Distiller Jにかまして作られたものだと思われる。
ここでエラーが出るせいなのかわからないが
このEPSファイルが貼り付けられたTeXファイルをコンパイルしたDVIではすべて前にある画像(JPEGをjpeg2psでPSに変換して作成)となっている。

こうして出来た(?)dviファイルをdvipdfmxに通して作られたPDFではそれらの画像(同様の方法を用いて作られたPSファイルを含む)は表示されているが、該当エラーが発生した画像は表示されなかった。

エラーが出て読み込めないepsファイルがあります。
どうすればいいでしょうか?
そもそも「endobj」とは何でしょうか?

** WARNING ** Didn't find "endobj".
** WARNING ** Failed to include image file "./421.eps"
** WARNING ** >>[コマンドを打って正常にPDFに変換できるか確認しろというメッセージだが長くて質問文に入らないので略]
** WARNING ** pdf: image inclusion failed for "421.eps".
** WARNING ** Failed to read image file: 421.eps
** WARNING ** Interpreting special command P...続きを読む

Aベストアンサー

>[コマンドを打って正常にPDFに変換できるか確認しろというメッセージだが長くて質問文に入らないので略]

それで確認しましたか?ここが最重要です.
endobj というのは読んで字のごとく,
オブジェクトの終端でしょう.
この手のエラーがでるのはEPSそのものが不正,
もしくはghostscriptがPDFに変換できないということで
はっきりいうとそのEPSに問題があるのです.

dvioutはEPSを表示する際にghostscriptを使うので
dvioutでも画像が表示できないということなら
ますますgsで変換できないものなのでしょう.
(注意:gsで変換できないのと表示できないは別のことです
gsで表示できるものが他の形式に変換できるかは別問題です)

visio由来のEPSはいろいろと問題を起こします.
大抵の場合はフォント周りで問題が発生します.

Ditillerをお持ちならdvipdfmxを使わなければ
うまくいくかもしれません

もしかするとghostscriptのバージョンをあげたりすると
うまくいくかもしれませんが・・・根本的には
EPSそのものを修正するしかありません.

>[コマンドを打って正常にPDFに変換できるか確認しろというメッセージだが長くて質問文に入らないので略]

それで確認しましたか?ここが最重要です.
endobj というのは読んで字のごとく,
オブジェクトの終端でしょう.
この手のエラーがでるのはEPSそのものが不正,
もしくはghostscriptがPDFに変換できないということで
はっきりいうとそのEPSに問題があるのです.

dvioutはEPSを表示する際にghostscriptを使うので
dvioutでも画像が表示できないということなら
ますますgsで変換できないものなの...続きを読む

Q槇原敬之『どんなときも。』のカヴァー

先日、有線で槇原敬之の『どんなときも。』がカバーバージョンで流れていました。

男性ボーカルでパンクバンドっぽい感じだったと思います。
誰が歌っているのかわかる方教えてください!

Aベストアンサー

「HEAVY HITTER All Stars」ですね。

「どんなときも。」ここで試聴できます。

http://www.sonymusic.co.jp/Music/Arch/SR/HeavyHitterAllStars/

QUnityのエラー「Rigidbody.AddForce(0,0,speed);」

UnityでJavaを書いています。
実行すると

Rigidbody.AddForce(0,0,speed);

上記の箇所にエラーがあると言われたのですが、
どこが問題なのかわかりません。

お分かりの方がいたら、ご教授ください。
その前後のコードも記載します。


//上矢印キーが押された場合
if(Input.GetKeyDown(KeyCode.UpArrow)){
//玉のZ軸に対して正の力を加える
Rigidbody.AddForce(0,0,speed);
}

//下矢印キーが押された場合
if(Input.GetKeyDown(KeyCode.DownArrow)){
//玉のZ軸に対して負の力を加える
Rigidbody.AddForce(0,0,-speed);
}

Aベストアンサー

Javaは凄くうっすらやった事がある程度なのですが、
こちらのサイトを参考にすると「Rigidbody.AddForce(」の後は
数字ではなく英語にて指示を記述しているので、そこを変えてみたら直るかも…?

http://openbook4.me/projects/161/sections/1045

Q槇原敬之さんの「どんなときも。」のversion4って?

今年1月1日に発売された槇原敬之さんのアルバムCD「Best LIFE」に収録されている「どんなときも。Renewed(version4)」がありますが、この「version4」というのは、アレンジ第4作目という意味でしょうか。それとも違う意味でしょうか。アレンジ第4作目である場合、アレンジ第1作~第3作目であるversion1~3の収録されているCDタイトルをそれぞれ教えてください。

Aベストアンサー

「どんなときも。Renewed(version4)」はまだ聴いたことがありませんが、Liveバージョンを別にして3バージョン(+カラオケ)が存在します。
まず、シングル『どんなときも』には「どんなときも。」とオーケストラ編成の「どんなときも。 [ballad version]」が収録。
それと、10周年記念アルバム『10.Y.O. ~THE ANNIVERSARY COLLECTION~』に収録されている「どんなときも。(10.Y.O.Version)」

なお、シングルに収録されていた「どんなときも。 [ballad version]」のカラオケ部分のショートバージョンがアルバム『君は誰と幸せなあくびをしますか。』に収録されています。

Q[platex] description環境でのitemのオプション([]内)で]という文字を使うには?

\documentclass[12pt]{jreport}
\begin{document}

単位は[mm]のように鍵括弧でくくって書くことにします

\begin{description}
\item[5[cm]の時]{5[cm]の時と表示されるのが望んでいる動作。実際は先の括弧で終わったと解釈されてしまい、5[cmの時]となってしまう。
バックスラッシュを使おうとしても「Bad math environment delimiter.」というエラーが表示されてしまう。どうするのが正解か?}
\end{description}
\end{document}

Aベストアンサー

\item[5[cm]の時]

\item[5{[cm]}の時]
としてください。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング