{"id":16539,"date":"2022-10-19T19:41:11","date_gmt":"2022-10-19T14:11:11","guid":{"rendered":"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/"},"modified":"2022-10-19T19:41:11","modified_gmt":"2022-10-19T14:11:11","slug":"solved-how-does-assembler-convert-from-assembly-to-machine-code","status":"publish","type":"post","link":"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/","title":{"rendered":"[Solved] how does assembler convert from assembly to machine code?"},"content":{"rendered":"<p> [ad_1]<br \/>\n<\/p>\n<div id=\"answer-65793779\" class=\"answer js-answer accepted-answer js-accepted-answer\" data-answerid=\"65793779\" data-parentid=\"65792675\" data-score=\"4\" data-position-on-page=\"1\" data-highest-scored=\"1\" data-question-has-accepted-highest-score=\"1\" itemprop=\"acceptedAnswer\" itemscope itemtype=\"https:\/\/schema.org\/Answer\">\n<div class=\"post-layout\">\n<div class=\"votecell post-layout--left\"><\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"js-endorsements\" data-for-answer=\"65793779\">\n<\/div>\n<div class=\"s-prose js-post-body\" itemprop=\"text\">\n<p>Please try to limit your questions to one question per question.  Neverthless, let me try and answer them.<\/p>\n<h2>Question 1<\/h2>\n<p>An \u201cassembly compiler\u201d is called an \u201cassembler.\u201d  Assembly is <em>assembled,<\/em> not <em>compiled.<\/em>  And the assembler is not specific to C++.  It is specific to the architecture and can only be used to assemble assembly programs for that architecture.<\/p>\n<p>Yes, assemblers are usually implemented by having a large table mapping instruction mnemonics to the operation codes (opcodes) they correspond to.  This table also tells the assembler what operands the instruction takes and how the operands are encoded.  There can be multiple entries for the same mnemonic if the mnemonic corresponds to multiple instructions.<\/p>\n<p>It is however not a requirement to do it this way.  Assemblers may chose different approaches or combine tables with pre- and postprocessing steps.<\/p>\n<h2>Question 2<\/h2>\n<p>This is correct.  Processor vendors generally provide documentation for their processors in which all instructions and their instruction encodings are listed.  For Intel, this information can be found in the <a rel=\"nofollow noopener\" target=\"_blank\" href=\"https:\/\/software.intel.com\/content\/www\/us\/en\/develop\/articles\/intel-sdm.html\">Intel Software Development Manuals<\/a>.  Note that while the processor vendor provides such specifications, it is the job of the assembler author to translate these documents into tables for use by the assembler.  This is traditionally done manually but recently, people have started automatically translating manuals into tables.<\/p>\n<h2>Question 3<\/h2>\n<p>Both Intel and AMD produce processors of the amd64 (also called x86-64, IA32e, Intel 64, EM64T, and other things) architecture.  So a program written for an Intel processor generally also runs on an AMD processor.<\/p>\n<p>Note that there are tiny differences between Intel&#8217;s and AMD&#8217;s implementation of this architecture.  Your compiler is aware of them and won&#8217;t generate code that can behave differently between the two.<\/p>\n<p>There are also various <em>instruction set extensions<\/em> available on some but not all amd64 processors.  Programs using these will only run on processors that have these instruction set extensions.  However, unless you specifically tell your compiler to make use of such extensions, it won&#8217;t use any of them and your code will run on amd64 processors of any vendor.<\/p>\n<\/p><\/div>\n<div class=\"mt24\"><\/div>\n<\/div>\n<p>            <span class=\"d-none\" itemprop=\"commentCount\"><\/span> <\/p><\/div>\n<\/div>\n<p>[ad_2]<\/p>\n<p>solved how does assembler convert from assembly to machine code? <\/p>\n","protected":false},"excerpt":{"rendered":"<p>[ad_1] Please try to limit your questions to one question per question. Neverthless, let me try and answer them. Question 1 An \u201cassembly compiler\u201d is called an \u201cassembler.\u201d Assembly is assembled, not compiled. And the assembler is not specific to C++. It is specific to the architecture and can only be used to assemble assembly &#8230; <a title=\"[Solved] how does assembler convert from assembly to machine code?\" class=\"read-more\" href=\"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/\" aria-label=\"More on [Solved] how does assembler convert from assembly to machine code?\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[320],"tags":[465,324,4185,3701],"class_list":["post-16539","post","type-post","status-publish","format-standard","hentry","category-solved","tag-assembly","tag-c","tag-intel","tag-processor"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>[Solved] how does assembler convert from assembly to machine code? - JassWeb<\/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:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"[Solved] how does assembler convert from assembly to machine code? - JassWeb\" \/>\n<meta property=\"og:description\" content=\"[ad_1] Please try to limit your questions to one question per question. Neverthless, let me try and answer them. Question 1 An \u201cassembly compiler\u201d is called an \u201cassembler.\u201d Assembly is assembled, not compiled. And the assembler is not specific to C++. It is specific to the architecture and can only be used to assemble assembly ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/\" \/>\n<meta property=\"og:site_name\" content=\"JassWeb\" \/>\n<meta property=\"article:published_time\" content=\"2022-10-19T14:11:11+00:00\" \/>\n<meta name=\"author\" content=\"Kirat\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kirat\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/\"},\"author\":{\"name\":\"Kirat\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\"},\"headline\":\"[Solved] how does assembler convert from assembly to machine code?\",\"datePublished\":\"2022-10-19T14:11:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/\"},\"wordCount\":367,\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"keywords\":[\"assembly\",\"c++\",\"intel\",\"processor\"],\"articleSection\":[\"Solved\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/\",\"url\":\"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/\",\"name\":\"[Solved] how does assembler convert from assembly to machine code? - JassWeb\",\"isPartOf\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#website\"},\"datePublished\":\"2022-10-19T14:11:11+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/jassweb.com\/solved\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"[Solved] how does assembler convert from assembly to machine code?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/jassweb.com\/solved\/#website\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"name\":\"JassWeb\",\"description\":\"Build High-quality Websites\",\"publisher\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/jassweb.com\/solved\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/jassweb.com\/solved\/#organization\",\"name\":\"Jass Web\",\"url\":\"https:\/\/jassweb.com\/solved\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"contentUrl\":\"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png\",\"width\":693,\"height\":132,\"caption\":\"Jass Web\"},\"image\":{\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31\",\"name\":\"Kirat\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775193939\",\"contentUrl\":\"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775193939\",\"caption\":\"Kirat\"},\"sameAs\":[\"http:\/\/jassweb.com\"],\"url\":\"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"[Solved] how does assembler convert from assembly to machine code? - JassWeb","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:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/","og_locale":"en_US","og_type":"article","og_title":"[Solved] how does assembler convert from assembly to machine code? - JassWeb","og_description":"[ad_1] Please try to limit your questions to one question per question. Neverthless, let me try and answer them. Question 1 An \u201cassembly compiler\u201d is called an \u201cassembler.\u201d Assembly is assembled, not compiled. And the assembler is not specific to C++. It is specific to the architecture and can only be used to assemble assembly ... Read more","og_url":"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/","og_site_name":"JassWeb","article_published_time":"2022-10-19T14:11:11+00:00","author":"Kirat","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kirat","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/#article","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/"},"author":{"name":"Kirat","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31"},"headline":"[Solved] how does assembler convert from assembly to machine code?","datePublished":"2022-10-19T14:11:11+00:00","mainEntityOfPage":{"@id":"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/"},"wordCount":367,"publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"keywords":["assembly","c++","intel","processor"],"articleSection":["Solved"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/","url":"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/","name":"[Solved] how does assembler convert from assembly to machine code? - JassWeb","isPartOf":{"@id":"https:\/\/jassweb.com\/solved\/#website"},"datePublished":"2022-10-19T14:11:11+00:00","breadcrumb":{"@id":"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/jassweb.com\/solved\/solved-how-does-assembler-convert-from-assembly-to-machine-code\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/jassweb.com\/solved\/"},{"@type":"ListItem","position":2,"name":"[Solved] how does assembler convert from assembly to machine code?"}]},{"@type":"WebSite","@id":"https:\/\/jassweb.com\/solved\/#website","url":"https:\/\/jassweb.com\/solved\/","name":"JassWeb","description":"Build High-quality Websites","publisher":{"@id":"https:\/\/jassweb.com\/solved\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jassweb.com\/solved\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/jassweb.com\/solved\/#organization","name":"Jass Web","url":"https:\/\/jassweb.com\/solved\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/","url":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","contentUrl":"https:\/\/jassweb.com\/wp-content\/uploads\/2021\/02\/jass-website-logo-1.png","width":693,"height":132,"caption":"Jass Web"},"image":{"@id":"https:\/\/jassweb.com\/solved\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/65c9c7b7958150c0dc8371fa35dd7c31","name":"Kirat","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jassweb.com\/solved\/#\/schema\/person\/image\/","url":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775193939","contentUrl":"https:\/\/jassweb.com\/solved\/wp-content\/litespeed\/avatar\/1261af3c9451399fa1336d28b98ea3bb.jpg?ver=1775193939","caption":"Kirat"},"sameAs":["http:\/\/jassweb.com"],"url":"https:\/\/jassweb.com\/solved\/author\/jaspritsinghghumangmail-com\/"}]}},"_links":{"self":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/16539","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/comments?post=16539"}],"version-history":[{"count":0,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/posts\/16539\/revisions"}],"wp:attachment":[{"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/media?parent=16539"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/categories?post=16539"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jassweb.com\/solved\/wp-json\/wp\/v2\/tags?post=16539"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}