• 締切済み

どのような計算を実行するプログラムであるのか。

(1)(2)のプログラムが、それぞれどのような計算を実行するプログラムであるのか全く分かりませんのでお教え下さい。 ◆プログラム(1) LOAD 10 MUL 11 STORE 10 LOAD 12 SUB 13 STORE 12 JZ 8 J 0 LOAD 10 STOP 0 1 2 10 1 ◆プログラム(2) LOAD 10 MUL 11 STORE 10 LOAD 11 SUB 12 STORE 11 JZ 8 J 0 LOAD 10 STOP 0 1 6 1

みんなの回答

  • queuerev2
  • ベストアンサー率78% (96/122)
回答No.3

情報不足ですね・・・ 個々の命令あるいは文(LOAD 10 , MUL 11など)はわかるがアルゴリズムが理解できないということであれば、命令あるいは文の解説をお願いします。 個々の命令あるいは文がわからないということなら、言語名などの情報がほしいところです。

全文を見る
すると、全ての回答が全文表示されます。
  • wormhole
  • ベストアンサー率28% (1622/5659)
回答No.2

VBではなく何かのアセンブラだと思うのですが。 何のアセンブラなのかわからないというのもありますが、これ何かの課題ですか? CASLやPICのアセンブラでもなさそうですし、特殊な言語の質問されても回答できる人はそういないと思いますが。 単語から何となくは想像できるんですけど・・・ とりあえず「全くわからない」は命令単位でわからないのでしょうか、それとも全体としての処理がわからないのでしょうか

全文を見る
すると、全ての回答が全文表示されます。
  • hitomura
  • ベストアンサー率48% (325/664)
回答No.1

言語がVisualBasicでもVBAでもVBScriptでもBASICでもないので答えられません。 こうじゃないかという推測はできますが、実用的な言語というより学習用の擬似言語っぽく、 何らかの宿題だと思われますので、その場合は授業のノートを見返し、実際に紙に書いて1ステップづつ実行していきましょう。 以下、後の回答者のための付記 自分の回答について「この言語ってアレだろう? アレのどこが『実用的な言語というより学習用の擬似言語』なんだ?」と思われるかもしれません。 自分もアレはまだ実用的な言語だと思いますが、JZのソレがラベルなしに8になることからナニやソレの指定はアドレスではなく行であると類推されます。この点からこの言語はアレではないと思われます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • プログラムの実行

    プログラムの実行について (1) プログラムを実行させるためには、プログラムをメモリーにロードする必要があると思うが、ロードはどのプログラムがやっているのか、その流れ、仕組みを教えてください。 (2) メインメモリーのどの部分にロードされるのか。 (3) プログラムがメインメモリーにあるだけでは、プログラムは実行しないようにおもうが、実行する合図のようなものがあるのか。 (4) comファイル、exeファイル、basicの場合で違いがあるのか。 * osがwindows7またはxpとします。

  • このプログラムで計算を実行すると・・・

    10:S=0 20:FOR I=0 TO 6 STEP 2 30:FOR L=0 TO I 40:S=S+L 50:NEXT I 60:NEXT L 70:PRINT S 80:END 90: このプログラムを実行すると、「34」とプログラムの計算結果が表示されるのですが、実際に自分で計算すると「22」になってしまいます。 どこが違うのとか・・・基本的なとこが間違ってるのか? あとプログラムの動きを解説して頂けるとうれしいです! それでは、お願い致します。

  • プログラム実行時の確認は

    今まではコンボボックス内をセレクトしたあとすぐに計算を実行して表示するプログラムだったのですが、テキストボックスにデータを入力後ボタンを押したときに計算を行うように変更しようとして、新規に作成したボタンの「Private sub Command1_Click()」にコンボボックス内に書いていたプログラムをコピーして実行したのですが、ボタンを押してもエラーで止まるわけでもなく、しかし、実行結果を表示するでもなく、まるでループにでも入っているようなのですが、実行中にどこでどうしているか確認する方法を教えてください。

  • c言語のプログラムをアセンブリに変換する質問です

    c言語のプログラムをアセンブリに変換する質問です http://www5.si.gunma-u.ac.jp/sado/compiler/ex08/ex5.pdf 上記のアドレスの5番の問題です 私が考えたコードがこれなのですが正解がないので あっているかどうか心配です 実行環境がある方、もしくはアセンブリコードに 詳しい方チェックをお願いします load r4 , #0 ## d = 0 load r1 , a ## r1 = a load r3 , c ## r3 = c cmp r1 , r4 ## a > d → a > 0  jg Label ## a > 0 でないならLabelに分岐 mul r1 , r3 , r2 ## b = a * c; sub r1 , r3 , r4 ## d = a - c jmp Label2 ## Label2へ分岐 Label : mul r1 , r3 , r4 ## d = a * c sub r4 , r1 , r2 ## b = a * c - a add r1 , r3 , r4 ## d = a + c = d Label2 : mul r2 , r4 , r1 ## a = b * d

  • (.NET)IF文の計算結果が思ったのと違う!?

    IF文でiとjの足す処理が括弧にくくられているので、きちんと足される思ったのですがラベルでの実行結果が0になります。 コード上は計算されているように見えるのですがなぜ計算されていないのでしょうか?計算できないとしたらIF文の中では計算処理ができないということでしょうか? 回答のほどよろしくお願い致します。 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim i, j i = 0 j = 0 If (i = i + 1) = 0 Or (j = j + 1) = 0 Then MessageBox.Show("+1") End If Label1.Text = i Label2.Text = j End Sub

  • ワードでファイルを開くときに実行するプログラム

    ワードでファイルを開くと同時に実行するプログラムを作りたいのですがうまくいきません。 以下のようなコードを書いたのですがプログラムが走りません。これはファイルを開くときのプロシージャではないのでしょうか? Private Sub Document_Open() With 種類 .AddItem "1" .AddItem "2" End With End Sub 回答よろしくお願いします。

  • プログラムを実行して終了したら自動的に消す方法

    初めまして 最近マシニングセンターを任されてプログラム作ってるのですが 工具長補正をある座標系を基準にしていっぺんに取りたくて こういう感じの簡単なプログラムを作ったのですが O0001 #10001=#10001-11.11 #10002=#10002+22.22 #10003=#10003-33.33 ・       ・ ・ ・ #10099=#10099+987.654 M99 これでC入力したあとにこのプログラムを実行したら それぞれの補正値が計算されて入るようになってます ただこのプログラム、もう一度誤って実行すると 補正値がとんでもない数値になりクラッシュの原因にもなりかねません 今は実行後、直ぐに消しているのですが人間のすることなので ミスの可能性は残ります そこでこの計算プログラム実行後に実行したプログラムを 自動的に消去する方法がないか教えていただきたいのです どうぞ宜敷お願いいたします

  • W-ZERO3のプログラム実行用メモリについて

    W-ZERO3について質問です。ご存知の方がいたら教えてください。 ZERO3の実行用メモリーですが、特に使用ソフトを増やしたわけでもないのに、実行中プログラムを全てストップした後の空きのメモリー領域が少なくなっていきます。その為、PFDビュアを他のソフト実行中に使うとエラー(多分メモリ不足)となってしまいます。プログラム実行用のメモリを増やす(と言うか元に戻す)方法ご存知ないでしょうか?多分無駄なファイルがいると思うのですが、何がそれに該当するのかわかりません。

  • メモリ上にプログラムをロードして実行したい!!

    C言語とマイコンで遊んでる者です。 タイトルの通りSDカードやCF等の記録媒体からマイコンのRAM上にプログラムをロードして実行させたいのですが方法がよく解りません。 説明しにくいのですが、PCで言うところのBIOSみたいな物を予めマイコンに書き込んでおいて、そのプログラムが外部のストレージの中に有る実行ファイルのようになってるプログラムデータをメモリ上にコピーして、処理をそのプログラムのエントリーポイントに受け渡すようなOSモドキみたいな物を作りたいのです。 アセンブラならLDとかMOVとかでメモリにコピー出来るかもしれませんが、C言語ではどのようにしてコピーするのでしょう? 仮にメモリ上にコピー出来てもmain()関数が重複してしまい呼び出す方法が解りません。 こちらもアセンブラならばプログラムカウンタをロードした位置にしてやればいいのでしょうけれど。 C言語ではできないでしょうか? マイコンはAVRかSH2Aで考えています。 何方かご教授願います。

  • べき乗の計算が遅い理由

    VBAを使っていてふと気づいたことなのですが、 x ^ 2とx * xは計算結果は全く同じなのですが、x * xの方が6倍程度速く計算することができます。 Sub test() start_time = Timer For j = 1 To 10000 For i = 1 To 1000 y = i ^ 2 * j ^ 2 Next Next zikan = Format(Timer - start_time, "0.00") End Sub というプログラムの計算時間が3.80秒なのに対し、 y = i ^ 2 * j ^ 2をy = i * i * j * jに書き換えて実行すると 0.66秒になります。 恐らく、x ^ 2とx * xで計算アルゴリズムが異なるからだと思うのですが、 一般的によく知られたことなのでしょうか? また、どのようにアルゴリズムが異なるのでしょうか? また、VB以外の他のプログラミング言語にも見られるのでしょうか? ちなみに、 Function bekijou(x, y) bekijou = 1 For q = 1 To y bekijou = bekijou * x Next End Function という関数を作って、 y = bekijou(i, 2) * bekijou(j, 2)で実行してみたところ、計算時間は更に伸びて、 9.47秒になってしまいました。 これ以外に意外と知られていない計算速度を上げるためのコツなどがありましたら 教えてください。