{"id":288,"date":"2018-01-14T21:22:57","date_gmt":"2018-01-14T21:22:57","guid":{"rendered":"http:\/\/learnlearn.uk\/gcsecs\/?page_id=288"},"modified":"2020-02-03T23:20:21","modified_gmt":"2020-02-03T23:20:21","slug":"fetch-decode-execute-cycle","status":"publish","type":"page","link":"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/","title":{"rendered":"Fetch Decode Execute Cycle"},"content":{"rendered":"\n<div class=\"arconix-tabs-horizontal\"><ul class=\"arconix-tabs\"><li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-Introduction\"><a class=\"\" href=\"#tab-Introduction\">Introduction<\/a><\/li>\n<li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-TutorialVideo\"><a class=\"\" href=\"#tab-TutorialVideo\">Tutorial Video<\/a><\/li>\n<li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-Fetch\"><a class=\"\" href=\"#tab-Fetch\">Fetch<\/a><\/li>\n<li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-Decode\"><a class=\"\" href=\"#tab-Decode\">Decode<\/a><\/li>\n<li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-Execute\"><a class=\"\" href=\"#tab-Execute\">Execute<\/a><\/li>\n<li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-OperandsvsOpcodes\"><a class=\"\" href=\"#tab-OperandsvsOpcodes\">Operands vs Opcodes<\/a><\/li>\n<li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-Activity\"><a class=\"\" href=\"#tab-Activity\">Activity<\/a><\/li>\n<li data-arconix-icon=\" \" data-arconix-color=\" \" class=\"arconix-tab tab-Plenary\"><a class=\"\" href=\"#tab-Plenary\">Plenary<\/a><\/li><\/ul>\n<div class=\"arconix-panes\"><div class=\"arconix-pane pane-Introduction\">\n<h2>Fetch Decode Execute Cycle<\/h2>\n<p><a href=\"https:\/\/www.hartismere.com\/20398\/CPU-Fetch-Decode-Execute-Animation\">Excellent animation here<\/a><\/p>\n<p>The fetch decode execute cycle is the process the computer goes through when processing instructions. The cycle is performed constantly from boot up, until the computer is shutdown.<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-453 size-full\" src=\"https:\/\/learnlearn.uk\/gcsecs\/wp-content\/uploads\/sites\/8\/2018\/01\/fetch-decode-execute-oct-gcse.png\" alt=\"fetch decode execute cycle ocr\" width=\"592\" height=\"397\" srcset=\"https:\/\/learnlearn.uk\/gcsecs\/wp-content\/uploads\/sites\/8\/2018\/01\/fetch-decode-execute-oct-gcse.png 592w, https:\/\/learnlearn.uk\/gcsecs\/wp-content\/uploads\/sites\/8\/2018\/01\/fetch-decode-execute-oct-gcse-300x201.png 300w\" sizes=\"(max-width: 592px) 100vw, 592px\" \/><\/p>\n<\/div>\n<div class=\"arconix-pane pane-TutorialVideo\">\n<p><iframe loading=\"lazy\" src=\"https:\/\/www.youtube.com\/embed\/IL44-Mfp8x4\" width=\"860\" height=\"500\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<\/div>\n<div class=\"arconix-pane pane-Fetch\">\n<h3>Fetch Phase<\/h3>\n<p>In this phase of the cycle, the processor:<\/p>\n<ol>\n<li>Gets the memory address of the current instruction from the program counter PC<\/li>\n<li>Passes the address to the memory address register<\/li>\n<li>Sends the address along the address bus.<\/li>\n<li>The RAM retrieves the data stored at that address and passes the data back along the data bus.<\/li>\n<li>The data is the stored in the memory data register (MDR) ready for decoding.<\/li>\n<\/ol>\n<\/div>\n<div class=\"arconix-pane pane-Decode\">\n<h3>Decode Phase<\/h3>\n<p>In this phase the data in the MDR is passed to the control unit (CU) which then decodes the instruction and then signals to the ALU what instruction is to be completed.<\/p>\n<\/div>\n<div class=\"arconix-pane pane-Execute\">\n<h3>Execute Phase<\/h3>\n<p>In the final phase of the fetch decode execute cycle the instruction is executed.<\/p>\n<p>This instruction could comprise of:<\/p>\n<ul>\n<li>Reading operand data in to the accumulator from the RAM<\/li>\n<li>Performing arithmetic\u00a0 on operand data<\/li>\n<li>Performing logical functions (conditionals \/ loops)<\/li>\n<li>Writing data from the accumulator to the RAM<\/li>\n<\/ul>\n<p>Once this step is complete the CPU moves on to the next instruction<\/p>\n<\/div>\n<div class=\"arconix-pane pane-OperandsvsOpcodes\">\n<p><strong>Operands vs Opcodes<\/strong><\/p>\n<p>An opcode is a single instruction that tells the process what operation to perform. An operand is the data or location on which the operation will be performed.<\/p>\n<p><strong>ADD 4<\/strong><\/p>\n<p>Opcode = ADD\u00a0 Operand = 4\u00a0 \u00a0&#8211; This means add the number stored at memory location 4 to the number stored in the accumulator.<\/p>\n<p>Full Example<\/p>\n<ul>\n<li>LOAD 3<\/li>\n<li>SUB 4<\/li>\n<li>STORE 5<\/li>\n<\/ul>\n<p>This example means:<\/p>\n<ol>\n<li>load the contents of memory location 3 in to the accumulator<\/li>\n<li>Subtract the contents of memory location 4 from the data in the accumulator<\/li>\n<li>Store the result of the subtraction to memory location 5<\/li>\n<\/ol>\n<\/div>\n<div class=\"arconix-pane pane-Activity\">\n<p><a href=\"https:\/\/docs.google.com\/drawings\/d\/1I3EdK4tsuVpLfwCZ6RX4NHAjlxx2dvbCBpvdJzS2nTo\/edit?usp=sharing\">Blank Worksheet<\/a><\/p>\n<\/div>\n<div class=\"arconix-pane pane-Plenary\">\n<p><a href=\"https:\/\/play.kahoot.it\/#\/k\/911d715c-e3b4-4ff2-9eea-4b88b9484357\">Topic Review Kahoot<\/a><\/p>\n<\/div><\/div><\/div>\n\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; &nbsp;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":70,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Fetch Decode Execute Cycle - GCSE Computer Science Theory<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fetch Decode Execute Cycle - GCSE Computer Science Theory\" \/>\n<meta property=\"og:description\" content=\"&nbsp; &nbsp;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/\" \/>\n<meta property=\"og:site_name\" content=\"GCSE Computer Science Theory\" \/>\n<meta property=\"article:modified_time\" content=\"2020-02-03T23:20:21+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/learnlearn.uk\/gcsecs\/wp-content\/uploads\/sites\/8\/2018\/01\/fetch-decode-execute-oct-gcse.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/\",\"url\":\"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/\",\"name\":\"Fetch Decode Execute Cycle - GCSE Computer Science Theory\",\"isPartOf\":{\"@id\":\"https:\/\/learnlearn.uk\/gcsecs\/#website\"},\"datePublished\":\"2018-01-14T21:22:57+00:00\",\"dateModified\":\"2020-02-03T23:20:21+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"OCR GCSE Computer Science Home\",\"item\":\"https:\/\/learnlearn.uk\/gcsecs\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Fetch Decode Execute Cycle\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/learnlearn.uk\/gcsecs\/#website\",\"url\":\"https:\/\/learnlearn.uk\/gcsecs\/\",\"name\":\"GCSE Computer Science Theory\",\"description\":\"Just another My Blog site\",\"publisher\":{\"@id\":\"https:\/\/learnlearn.uk\/gcsecs\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/learnlearn.uk\/gcsecs\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/learnlearn.uk\/gcsecs\/#organization\",\"name\":\"GCSE Computer Science Theory\",\"url\":\"https:\/\/learnlearn.uk\/gcsecs\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/learnlearn.uk\/gcsecs\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/learnlearn.uk\/gcsecs\/wp-content\/uploads\/sites\/8\/2019\/02\/LearnLearnLogowhite.png\",\"contentUrl\":\"https:\/\/learnlearn.uk\/gcsecs\/wp-content\/uploads\/sites\/8\/2019\/02\/LearnLearnLogowhite.png\",\"width\":710,\"height\":98,\"caption\":\"GCSE Computer Science Theory\"},\"image\":{\"@id\":\"https:\/\/learnlearn.uk\/gcsecs\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Fetch Decode Execute Cycle - GCSE Computer Science Theory","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/","og_locale":"en_GB","og_type":"article","og_title":"Fetch Decode Execute Cycle - GCSE Computer Science Theory","og_description":"&nbsp; &nbsp;","og_url":"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/","og_site_name":"GCSE Computer Science Theory","article_modified_time":"2020-02-03T23:20:21+00:00","og_image":[{"url":"http:\/\/learnlearn.uk\/gcsecs\/wp-content\/uploads\/sites\/8\/2018\/01\/fetch-decode-execute-oct-gcse.png"}],"twitter_card":"summary_large_image","twitter_misc":{"Estimated reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/","url":"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/","name":"Fetch Decode Execute Cycle - GCSE Computer Science Theory","isPartOf":{"@id":"https:\/\/learnlearn.uk\/gcsecs\/#website"},"datePublished":"2018-01-14T21:22:57+00:00","dateModified":"2020-02-03T23:20:21+00:00","breadcrumb":{"@id":"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/learnlearn.uk\/gcsecs\/fetch-decode-execute-cycle\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"OCR GCSE Computer Science Home","item":"https:\/\/learnlearn.uk\/gcsecs\/"},{"@type":"ListItem","position":2,"name":"Fetch Decode Execute Cycle"}]},{"@type":"WebSite","@id":"https:\/\/learnlearn.uk\/gcsecs\/#website","url":"https:\/\/learnlearn.uk\/gcsecs\/","name":"GCSE Computer Science Theory","description":"Just another My Blog site","publisher":{"@id":"https:\/\/learnlearn.uk\/gcsecs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/learnlearn.uk\/gcsecs\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/learnlearn.uk\/gcsecs\/#organization","name":"GCSE Computer Science Theory","url":"https:\/\/learnlearn.uk\/gcsecs\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/learnlearn.uk\/gcsecs\/#\/schema\/logo\/image\/","url":"https:\/\/learnlearn.uk\/gcsecs\/wp-content\/uploads\/sites\/8\/2019\/02\/LearnLearnLogowhite.png","contentUrl":"https:\/\/learnlearn.uk\/gcsecs\/wp-content\/uploads\/sites\/8\/2019\/02\/LearnLearnLogowhite.png","width":710,"height":98,"caption":"GCSE Computer Science Theory"},"image":{"@id":"https:\/\/learnlearn.uk\/gcsecs\/#\/schema\/logo\/image\/"}}]}},"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"learnlearnadmin","author_link":"https:\/\/learnlearn.uk\/gcsecs\/author\/learnlearnadmin\/"},"rttpg_comment":0,"rttpg_category":null,"rttpg_excerpt":"&nbsp; &nbsp;","_links":{"self":[{"href":"https:\/\/learnlearn.uk\/gcsecs\/wp-json\/wp\/v2\/pages\/288"}],"collection":[{"href":"https:\/\/learnlearn.uk\/gcsecs\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/learnlearn.uk\/gcsecs\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/learnlearn.uk\/gcsecs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/learnlearn.uk\/gcsecs\/wp-json\/wp\/v2\/comments?post=288"}],"version-history":[{"count":9,"href":"https:\/\/learnlearn.uk\/gcsecs\/wp-json\/wp\/v2\/pages\/288\/revisions"}],"predecessor-version":[{"id":942,"href":"https:\/\/learnlearn.uk\/gcsecs\/wp-json\/wp\/v2\/pages\/288\/revisions\/942"}],"wp:attachment":[{"href":"https:\/\/learnlearn.uk\/gcsecs\/wp-json\/wp\/v2\/media?parent=288"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}