電子書籍の厳選無料作品が豊富!

学校の課題で出されたものです。

まだ勉強をはじめたばかりでどこから手をつけていいのかわかりません><


○PDP-11のアセンブラは、MOV#1,R2を次のような2語の機械語に翻訳する。PDP-11は、これをど  のように解釈し、どのように実行するのか説明せよ

0001010111000010
0000000000000001


○PDP-11のMOV命令を使用し、以下の命令のアセンブリ言語表現、機械語表現を示せ。

・R5が示すアドレスにジャンプする命令

・サブルーチンから戻る命令

・R0をスタック上にプッシュする命令


○次のプログラムをPDP-11のアセンブリ言語で作成せよ。

・R0が示す番号以降のR2が示すバイト数をR1が示す番号以降に転送

・R1(上位16ビット)R0(下位16ビット)が示す符号付32ビット値を符号反転


宜しくお願い致します。

A 回答 (2件)

「simh」という各種レトロコンピュータのWindows用シミュレータがあるので試してみてはどうでしょうか。


英文ですがPDP-11のシミュレーションに関する詳細なドキュメント(アセンブラの解説書ではないのですが・・・)もあるので、動作確認などできると思います。
英語はわたくしも苦手ですが、専門用語なら慣れれば簡単な感じがするし(カン違い?)、エンジニアになるなら拒絶せず誤読を恐れずに挑戦してみてください。

参考URL:http://simh.trailing-edge.com/
    • good
    • 0
この回答へのお礼

こんな便利なものがあるんですね。

早速使ってみたいと思います。

ありがとうございました!

お礼日時:2011/03/01 13:22

なかなか、回答がつかないので、ムリを承知で…


詳細なマニュアルがないので、手持ちの物とネットで調べた範囲で答えてみます。
実は手持ちの資料は、DECアセンブラではなく、UNIXアセンブラなので、それに起因する相違は、ご容赦。

最初の問題。
http://www.dgp.toronto.edu/~ajr/258/pdp11.pdf
このインストラクションセットの解説により、
b15からb12までの「0001」によって、MOV命令(最上位ビットが立っていないので、ワード版)であることが判ります。
次のソースオペランド部のb11からb10により、オートインクリメントモードで、さらにb9により、(インダイレクトではない)ただの参照、次の3bitはr7を示しているので、プログラムカウンタであるr7の示す番地の内容、つまり、この命令ワードの次に書いてある、「1」をソースとしています。
残りビットは、同様にディスとネーションのレジスタモードで、2ですから、r2を表していて、結果、1という数値をr2に格納。という動作になります。

というような、事を答えれば良いのかな?

次の問題群はあんまり良く知らないので、パス。

最後の問題は、こんな感じかな?
ひとつめ。
loop:
  tst r2
  beq exit
  mov (r0)+,(r1)+
  dec r2
  jmp loop
exit:

ふたつめはパス。

参考URL:http://www.dgp.toronto.edu/~ajr/258/pdp11.pdf
    • good
    • 0
この回答へのお礼

とてもわかりやすい説明をありがとうございます。

これを参考にして、自分で理解できるように勉強していきたいと思います。

回答して頂きありがとうございました!

お礼日時:2011/03/01 10:01

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