<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>命令実行 アーカイブ - nyanblog ~にゃんぶろぐ~</title>
	<atom:link href="https://nyanblog2222.com/tag/%E5%91%BD%E4%BB%A4%E5%AE%9F%E8%A1%8C/feed/" rel="self" type="application/rss+xml" />
	<link>https://nyanblog2222.com/tag/命令実行/</link>
	<description>ちょっとしたことを調べているよ</description>
	<lastBuildDate>Fri, 03 Sep 2021 13:16:00 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7</generator>

<image>
	<url>https://nyanblog2222.com/wp-content/uploads/2021/09/cropped-favicon-32x32.png</url>
	<title>命令実行 アーカイブ - nyanblog ~にゃんぶろぐ~</title>
	<link>https://nyanblog2222.com/tag/命令実行/</link>
	<width>32</width>
	<height>32</height>
</image> 
<atom:link rel="hub" href="https://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="https://pubsubhubbub.superfeedr.com"/><atom:link rel="hub" href="https://websubhub.com/hub"/>	<item>
		<title>CPUのレジスタとコンピュータの命令実行の流れ【過去問解答解説付き】</title>
		<link>https://nyanblog2222.com/certification/ap/2225/</link>
					<comments>https://nyanblog2222.com/certification/ap/2225/#respond</comments>
		
		<dc:creator><![CDATA[nyan2222]]></dc:creator>
		<pubDate>Wed, 02 Sep 2020 09:00:00 +0000</pubDate>
				<category><![CDATA[応用情報技術者試験]]></category>
		<category><![CDATA[資格]]></category>
		<category><![CDATA[AP]]></category>
		<category><![CDATA[CPU]]></category>
		<category><![CDATA[レジスタ]]></category>
		<category><![CDATA[命令実行]]></category>
		<category><![CDATA[応用情報技術者]]></category>
		<category><![CDATA[解答解説]]></category>
		<guid isPermaLink="false">https://nyanblog2222.com/?p=2225</guid>

					<description><![CDATA[<p><img src="https://nyanblog2222.com/wp-content/uploads/2022/11/120.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" fetchpriority="high" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/120.png 1280w, https://nyanblog2222.com/wp-content/uploads/2022/11/120-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2022/11/120-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2022/11/120-768x402.png 768w" sizes="(max-width: 1280px) 100vw, 1280px" />応用情報技術者試験に頻出するCPUのレジスタとコンピュータの命令実行の流れについてまとめました。 目次 CPUのレジスタとコンピュータの命令実行の流れCPUのレジスタとは代表的なレジスタコンピュータの命令実行の流れ（レジ [&#8230;]</p>
<p>投稿 <a href="https://nyanblog2222.com/certification/ap/2225/">CPUのレジスタとコンピュータの命令実行の流れ【過去問解答解説付き】</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[<img src="https://nyanblog2222.com/wp-content/uploads/2022/11/120.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://nyanblog2222.com/wp-content/uploads/2022/11/120.png 1280w, https://nyanblog2222.com/wp-content/uploads/2022/11/120-300x157.png 300w, https://nyanblog2222.com/wp-content/uploads/2022/11/120-1024x536.png 1024w, https://nyanblog2222.com/wp-content/uploads/2022/11/120-768x402.png 768w" sizes="auto, (max-width: 1280px) 100vw, 1280px" />
<p>応用情報技術者試験に頻出する<strong><span style="color: #b78d4a;" class="has-inline-color">CPUのレジスタとコンピュータの命令実行の流れ</span></strong>についてまとめました。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">CPUのレジスタとコンピュータの命令実行の流れ</a><ol><li><a href="#toc2" tabindex="0">CPUのレジスタとは</a></li><li><a href="#toc3" tabindex="0">代表的なレジスタ</a></li><li><a href="#toc4" tabindex="0">コンピュータの命令実行の流れ（レジスタの使われ方）</a></li></ol></li><li><a href="#toc5" tabindex="0">演習問題</a><ol><li><a href="#toc6" tabindex="0">応用情報技術者試験　令和元年秋期　午前問9　問題</a></li><li><a href="#toc7" tabindex="0">応用情報技術者試験　令和元年秋期　午前問9　解答</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">CPUのレジスタとコンピュータの命令実行の流れ</span></h2>



<h3 class="wp-block-heading"><span id="toc2">CPUのレジスタとは</span></h3>



<figure class="wp-block-image size-large is-resized"><img decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-1-min.png" alt="" class="wp-image-2231" width="395" height="327" srcset="https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-1-min.png 395w, https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-1-min-300x248.png 300w" sizes="(max-width: 395px) 100vw, 395px" /></figure>



<p>コンピュータの処理装置であるCPU（Central Processing Unit）には、演算装置と制御装置があります。それらの演算や制御を行う際に<strong><span style="color: #b78d4a;" class="has-inline-color">レジスタ</span></strong>と呼ばれる小規模で一時的な<strong><span style="color: #b78d4a;" class="has-inline-color">記憶装置</span></strong>を使用します。</p>



<h3 class="wp-block-heading"><span id="toc3">代表的なレジスタ</span></h3>



<p>様々なレジスタがありますが、代表的なレジスタは以下になります。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="795" height="163" src="https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-2-min.png" alt="レジスタ一覧" class="wp-image-2232" srcset="https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-2-min.png 795w, https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-2-min-300x62.png 300w, https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-2-min-768x157.png 768w" sizes="(max-width: 795px) 100vw, 795px" /></figure>



<p>いまいちこれだけを見てもピンとこないと思いますので、次項でどのようなときに使われるか、コンピュータの命令実行の流れより説明します。</p>



<h3 class="wp-block-heading"><span id="toc4">コンピュータの命令実行の流れ（レジスタの使われ方）</span></h3>



<figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" src="https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-3-min.png" alt="コンピュータの命令実行順序" class="wp-image-2233" width="233" height="228"/></figure>



<p>基本的にコンピュータの命令実行順序は以下の①～④になります。<br><strong><span style="color: #b78d4a;" class="has-inline-color">①命令フェッチ（取り出し）<br>②命令の解読<br>③オペランド（演算データ）読出し<br>④命令の実行</span></strong></p>



<p>具体的な処理概要やレジスタの使われ方は以下になります。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="759" height="554" src="https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-4-min.png" alt="具体的な処理概要やレジスタの使われ方" class="wp-image-2234" srcset="https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-4-min.png 759w, https://nyanblog2222.com/wp-content/uploads/2020/09/AP9-4-min-300x219.png 300w" sizes="auto, (max-width: 759px) 100vw, 759px" /></figure>



<p><strong><span style="color: #b78d4a;" class="has-inline-color">①命令フェッチ（取り出し）</span></strong><br>　プログラムレジスタを見て命令を主記憶装置から取り出し、命令レジスタに命令を格納します。<br>　命令レジスタに格納する命令は以下の構成です。<br>　・命令部　　　　→　実行する命令のコード<br>　・オペランド部　→　演算に必要なデータのアドレス<br>　格納後、プログラムレジスタの値を次の命令レジスタの値に変更します。</p>



<p><strong><span style="color: #b78d4a;" class="has-inline-color">②命令の解読</span></strong><br>　命令レジスタに格納した命令部を、命令デコーダ（解読器）を使って解読する。</p>



<p><strong><span style="color: #b78d4a;" class="has-inline-color">③オペランド（演算データ）読出し</span></strong><br>　仮に演算する際にデータが必要であれば、命令レジスタのオペランド部より対象データのアドレスを取り出し、対象データを読み出します。<br>　読み出す際に色々な種類がありますが、その際にベースレジスタやインデックスレジスタが使われます。<br>　読みだしたデータはアキュムレータに格納します。<br>（アキュムレータの代わりに汎用レジスタが使われることもあります）</p>



<p><strong><span style="color: #b78d4a;" class="has-inline-color">④命令の実行</span></strong><br>　解読した命令とアキュムレータに読みだしたデータを使い、ALU（演算装置）で演算します。演算結果はアキュムレータに格納します。</p>



<p>なお、順序は①～④の通りですが、「必ずこのレジスタを使う」「この処理をする」というものでもないため、説明は一例です。</p>



<h2 class="wp-block-heading"><span id="toc5">演習問題</span></h2>



<p>実際の試験の過去問を解いてみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">応用情報技術者試験　令和元年秋期　午前問9　問題</span></h3>



<figure class="wp-block-table"><table><tbody><tr><td><a class="link broken_link" href="https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2019h31.html">IPA　応用情報技術者試験（AP）　問題より</a><br><br>問9　CPUのプログラムレジスタ（プログラムカウンタ）の役割はどれか。<br><br>選択肢<br>ア　演算を行うために、メモリから読み出したデータを保持する。<br>イ　条件付き分岐命令を実行するために、演算結果の状態を保持する。<br>ウ　命令のデコードを行うために、メモリから読み出した命令を保持する。<br>エ　命令を読み出すために、次の命令が格納されたアドレスを保持する。</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc7">応用情報技術者試験　令和元年秋期　午前問9　解答</span></h3>



<p>CPUの<strong><span style="color: #b78d4a;" class="has-inline-color">プログラムレジスタ（プログラムカウンタ）とは、次に実行する命令のアドレス（場所）を格納する役割</span></strong>です。プログラムレジスタを見て、どの命令を実行するか判断します。</p>



<p>ア　演算を行うために、メモリから読み出したデータを保持する。<br>　→汎用レジスタの役割です。</p>



<p>イ　条件付き分岐命令を実行するために、演算結果の状態を保持する。<br>　→アキュムレータの役割です。</p>



<p>ウ　命令のデコードを行うために、メモリから読み出した命令を保持する。<br>　→命令レジスタの役割です。</p>



<p>エ　<strong><span style="color: #b78d4a;" class="has-inline-color">命令を読み出すために、次の命令が格納されたアドレスを保持</span></strong>する。<br>　→プログラムレジスタの役割です。</p>



<p>以上から、答えは<strong><span style="color: #b78d4a;" class="has-inline-color">「エ」</span></strong>となります。</p>



<p>CPUのレジスタとコンピュータの命令実行の流れの解説は以上です。</p>



<p>こちらに応用情報技術者試験の問題について、<br>解説を掲載していますので、良かったらご覧ください。<br><a class="link" href="https://nyanblog2222.com/?page_id=66">当ブログ「応用情報技術者解答解説」まとめページはこちら</a></p>





<p>&nbsp;</p>
<p>投稿 <a href="https://nyanblog2222.com/certification/ap/2225/">CPUのレジスタとコンピュータの命令実行の流れ【過去問解答解説付き】</a> は <a href="https://nyanblog2222.com">nyanblog ~にゃんぶろぐ~</a> に最初に表示されました。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nyanblog2222.com/certification/ap/2225/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
