学年

質問の種類

情報:IT 高校生

情報の計算の仕組みについて質問です💦 メモリからレジスタに読み出し、レジスタからメモリに書き込み、などの命令がありますが、 ここでいう『メモリ』というのは赤で囲った所のことで合ってますか?

ここでは仮想のコンピュー タの基本構成を示す。 ② CPU内での記憶場所をレ ジスタという。 プログラムカ ウンタもレジスタである。 表2 仮想プログラミング SF READ WRITE ADD STOP メモリからレジズ タに読み出し レジスタからメモ リに書き込み レジスタとメモリ 間の和 プログラムの停止 ③実際は, 複数の番地の記憶 領域を必要とする命令もある。 62 3E 0011 1110 第3章 デジタル 2 コンピュータの動作 ① CPUの動作 主記憶装置とCPU内部の基本的な構成を次に示す。 CPU内部では,プログラムの構成単位である命令の取り出し・解読、 実行の一連の動作が順番に行われる。 命令の実行が完了すると次の命 令の取り出し解読・ 実行が行われる。 表1 基本構成 装置 主記憶装置 プログラムカウンタ 命令レジスタ 命令解読器 データレジスタ (レジスタ) データを一時的に保存する。 演算装置 ② 計算の仕組み 仮想プログラミング言語で加算 ( 3+5=8) する時のコンピュータの 計算の手順を考える。 プログラム カウンタ 命令 レジスタ 内容 命令やデータが保存されている。 |主記憶装置のどの番地の命令を次に取り出すかを指定する。 主記憶装置から取り出した命令を一時的に保存する。 命令を解読して各部を制御する。 10番地のデータ 「3」をレジスタAに読み出し, プログラムカウンタを 3 2番地にする。 主記憶装置には,データや表2の命令が保存されているとする。表2 の仮想プログラミング言語で加算するプログラムは,以下のようになる。 手順1 1番地の命令を解読する 5 1 READ A, (10) 3 レジスタ AS 加算などの算術演算やその他の演算を行う。 + 命令 10番地から 解読器 レジスタAへ読み出し ③ 命令の解読 ①番地指定 ②命令の 取り出し ④番地指定 ⑤ データの 読み出し ( 命令の実行) 演算装置 番地 1 2 3 4 10 11 12 主記憶装置 READ A, (10) ADD A, (11) WRITE (12), A STOP 手順 レ Thele 3 5 をレ 命令 レジ 命令 解説

解決済み 回答数: 1
情報 大学生・専門学校生・社会人

vsコードを使ってJava言語の勉強をしてたんですけど初心者すぎて何が原因で上手くコードの実行ができてないのかわかりません… 勉強の資料として使ってるのは京都大学のJavaによるプログラミング入門 です。

17:43 7月27日 (木) 1.7 使用するサンプルプログラム (TankCalculator.java) 1: public class Tank Calculator { 2: public static void main (String args[]){ final double FLOW_RATE = 1.0; final double TANK_AREA = 20.0; final double INITIAL_LEVEL = 10.0; double time; //s double tankLevel; //m ... ocw.kyoto-u.ac.jp 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: time = 30; 14: tankLevel = INITIAL_LEVEL + FLOW_RATE*time/TANK_AREA; 15: System.out.println("Tank Level at time "+ time + "s = " + tankLevel + "m"); 16: 17: 18: 19: } 20:} 11 System.out.println("Flow Rate = + FLOW_RATE + "m** 3/s"); System.out.println("Tank Area=" + TANK_AREA + "m**2"); System.out.println("Initial Level = " + INITIAL_LEVEL + "m"); time = 60; tankLevel = INITIAL_LEVEL + FLOW_RATE*time/TANK_AREA; System.out.println("Tank Level at time "+ time + "s=" + tankLevel + "m"); 【補足】 // の後ろは,プログラムを後で読解しやすくするための注釈です. Flow Rate = 1.0m**3/s Tank Area = 20.0mm**2 Initial Level = 10.0m 8 Tank Level time 30.0s = 11.5m Tank Level at time 60.0s = 13.0m 1.7.1 サンプルプログラムの入力と実行 先ほどと同じように, 秀丸エディタを開き, 20行のプログラムを書き込んで, Tank Calculator.java と名付け, 保存して, コンパイル, 実行してください. 成功すれば,以下の実行結果が示されます。(失敗してもめげないで, 2.5.1 節を参 考に、原因を考え,再トライしてください) ちなみに, 実行結果をファイルに書き出すにはコマンドプロンプトの「リダイレク ト」 という機能を使います 11. java TankCalculator > result.txt これにより result.txt というファイルが出来ているはずです。 中身は数値や文字列 だけのテキストファイルですのでエディタなどで内容を確認できます。 @91% 11javaプログラムの中で明示的にフ ァイルに出力することもできるので すがここでは安直な方法を取ります

未解決 回答数: 1