
{"id":459,"date":"2018-10-05T06:14:26","date_gmt":"2018-10-05T06:14:26","guid":{"rendered":"http:\/\/blogs.plymouth.ac.uk\/embedded-systems\/?page_id=459"},"modified":"2018-10-05T06:15:56","modified_gmt":"2018-10-05T06:15:56","slug":"compiler-glossary-entry","status":"publish","type":"page","link":"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/glossary-2\/compiler-glossary-entry\/","title":{"rendered":"Compiler (Glossary Entry)"},"content":{"rendered":"<p>A software tool that converts (typically human written) programming languages into assembly language, and sometimes directly into machine code.<\/p>\n<p>Compilers actually perform many complex tasks, including:<\/p>\n<ul>\n<li>syntax checking &#8211; ensuring the developer has conformed to the rules of the language, and reporting warnings or errors as appropriate.<\/li>\n<li>optimization &#8211; removal of unused code; reordering of code that improves efficiency without changing the output (either to reduce memory requirements and\/or improve computational speed). <i>Optimization settings can typically be controlled by the developer and can have a significant impact on the speed and timing of software.<\/i><\/li>\n<li>compilation &#8211; conversion from one language to another (typically assembly language).<\/li>\n<\/ul>\n<p>Some modern compilers may embed the role of the assembler, which is a software process of converting (human readable) assembly language into binary data known as machine code (CPU readable). Some may compile straight to machine code.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A software tool that converts (typically human written) programming languages into assembly language, and sometimes directly into machine code. Compilers actually perform many complex tasks, including: syntax checking &#8211; ensuring the developer has conformed to the rules of the language, and reporting warnings or errors as appropriate. optimization &#8211; removal of unused code; reordering of&hellip; <a class=\"more-link\" href=\"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/glossary-2\/compiler-glossary-entry\/\">Continue reading <span class=\"screen-reader-text\">Compiler (Glossary Entry)<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":153,"menu_order":15,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-459","page","type-page","status-publish","hentry","entry"],"_links":{"self":[{"href":"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/wp-json\/wp\/v2\/pages\/459","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/wp-json\/wp\/v2\/comments?post=459"}],"version-history":[{"count":1,"href":"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/wp-json\/wp\/v2\/pages\/459\/revisions"}],"predecessor-version":[{"id":460,"href":"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/wp-json\/wp\/v2\/pages\/459\/revisions\/460"}],"up":[{"embeddable":true,"href":"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/wp-json\/wp\/v2\/pages\/153"}],"wp:attachment":[{"href":"https:\/\/blogs.plymouth.ac.uk\/embedded-systems\/wp-json\/wp\/v2\/media?parent=459"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}