<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Opcode</id>
	<title>Opcode - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Opcode"/>
	<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Opcode&amp;action=history"/>
	<updated>2026-05-04T22:24:30Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Opcode&amp;diff=3456357&amp;oldid=prev</id>
		<title>imported&gt;RastaKins: /* Sample opcode table */ CC represents eight conditions</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Opcode&amp;diff=3456357&amp;oldid=prev"/>
		<updated>2025-10-18T22:30:35Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Sample opcode table: &lt;/span&gt; CC represents eight conditions&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Previous revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:30, 18 October 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l7&quot;&gt;Line 7:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Opcodes are found in the machine language instructions of CPUs as well as in some [[virtual machine#Process virtual machines|abstract computing machines]]. In CPUs, an opcode may be referred to as an &amp;#039;&amp;#039;&amp;#039;instruction machine code&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Intel_1973_MCS-4&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction code&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Intel_1974_MCS-40&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction syllable&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Jones_1988_CISC&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Domagała_2012&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Smotherman_2013&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Jones_2016_CISC&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction parcel,&amp;#039;&amp;#039;&amp;#039; or &amp;#039;&amp;#039;&amp;#039;opstring&amp;#039;&amp;#039;&amp;#039;.&amp;lt;ref name=&amp;quot;Schulman_2005&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Chiba_2007&amp;quot;/&amp;gt; For any particular processor (which may be a general CPU or a more specialized processing unit), the opcodes are defined by the processor&amp;#039;s [[instruction set architecture]] (ISA).&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt; They can be described using an [[opcode table]]. The types of operations may include [[arithmetic]], data copying, [[logical operation]]s, program control, and special instructions (e.g., [[CPUID]]).&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Opcodes are found in the machine language instructions of CPUs as well as in some [[virtual machine#Process virtual machines|abstract computing machines]]. In CPUs, an opcode may be referred to as an &amp;#039;&amp;#039;&amp;#039;instruction machine code&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Intel_1973_MCS-4&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction code&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Intel_1974_MCS-40&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction syllable&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Jones_1988_CISC&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Domagała_2012&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Smotherman_2013&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Jones_2016_CISC&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction parcel,&amp;#039;&amp;#039;&amp;#039; or &amp;#039;&amp;#039;&amp;#039;opstring&amp;#039;&amp;#039;&amp;#039;.&amp;lt;ref name=&amp;quot;Schulman_2005&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Chiba_2007&amp;quot;/&amp;gt; For any particular processor (which may be a general CPU or a more specialized processing unit), the opcodes are defined by the processor&amp;#039;s [[instruction set architecture]] (ISA).&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt; They can be described using an [[opcode table]]. The types of operations may include [[arithmetic]], data copying, [[logical operation]]s, program control, and special instructions (e.g., [[CPUID]]).&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In addition to the opcode, many instructions specify the data (known as [[operand]]s) the operation will act upon, although some instructions may have implicit operands or none.&amp;lt;ref name=&quot;Hennessy_2017&quot;/&amp;gt; Some instruction sets have nearly uniform fields for opcode and operand specifiers, whereas others (e.g., [[x86]] architecture) have a less uniform, variable-length structure.&amp;lt;ref name=&quot;Hennessy_2017&quot;/&amp;gt;&amp;lt;ref name=&quot;Mansfield_1983&quot;/&amp;gt; Instruction sets can be extended through [[opcode prefix]]es, which add a subset of new instructions made up of existing opcodes following reserved byte sequences.{{&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Citation needed&lt;/del&gt;|date=&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;February 2023&lt;/del&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In addition to the opcode, many instructions specify the data (known as [[operand]]s) the operation will act upon, although some instructions may have implicit operands or none.&amp;lt;ref name=&quot;Hennessy_2017&quot;/&amp;gt; Some instruction sets have nearly uniform fields for opcode and operand specifiers, whereas others (e.g., [[x86]] architecture) have a less uniform, variable-length structure.&amp;lt;ref name=&quot;Hennessy_2017&quot;/&amp;gt;&amp;lt;ref name=&quot;Mansfield_1983&quot;/&amp;gt; Instruction sets can be extended through [[opcode prefix]]es, which add a subset of new instructions made up of existing opcodes following reserved byte sequences.&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;ref&amp;gt;&lt;/ins&gt;{{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;cite book |last1=Tanenbaum |first1=Andrew S |last2=Austin |first2=Todd |title=Structured Computer Organization &lt;/ins&gt;|date=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;2013 |publisher=Pearson Education, Inc |isbn=0-13-291652-5 |page=367 |edition=Sixth&lt;/ins&gt;}}&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/ref&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Sample opcode table===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Sample opcode table===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This table shows opcodes of a simple 8-bit microprocessor, the [[Intel 8008]] from 1972.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This table shows opcodes of a simple 8-bit microprocessor, the [[Intel 8008]] from 1972.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Each opcode is 8 [[bit]]s long. Each is shown as a [[Binary number|binary]] pattern of ones and zeros in the &#039;&#039;&#039;Opcode&#039;&#039;&#039; column. Up to two additional fields may be embedded into the opcode. Some 3-bit fields are labeled DDD, SSS, CC, and ALU. The SSS (source) and DDD (destination) fields specify one of the eight possible 8008 [[Processor register|registers]] or memory: A, B, C, D, E, H, L, or M. CC specifies &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;a condition &lt;/del&gt;that will activate certain JMP, CAL, and RET instructions. ALU specifies one of a possible eight [[arithmetic logic unit]] functions to be performed during an instruction, specifically, add, add with carry, subtract, subtract with borrow, logical AND, logical XOR, logical OR, and compare. The &#039;&#039;&#039;X&#039;&#039;&#039; in some fields means that either a 1 or 0 can be inserted with [[Don&#039;t-care term|no effect]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Each opcode is 8 [[bit]]s long. Each is shown as a [[Binary number|binary]] pattern of ones and zeros in the &#039;&#039;&#039;Opcode&#039;&#039;&#039; column. Up to two additional fields may be embedded into the opcode. Some 3-bit fields are labeled DDD, SSS, CC, and ALU. The SSS (source) and DDD (destination) fields specify one of the eight possible 8008 [[Processor register|registers]] or memory: A, B, C, D, E, H, L, or M. CC specifies &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;one of eight result conditions &lt;/ins&gt;that will activate certain JMP, CAL, and RET instructions. ALU specifies one of a possible eight [[arithmetic logic unit]] functions to be performed during an instruction, specifically, add, add with carry, subtract, subtract with borrow, logical AND, logical XOR, logical OR, and compare. The &#039;&#039;&#039;X&#039;&#039;&#039; in some fields means that either a 1 or 0 can be inserted with [[Don&#039;t-care term|no effect]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The fixed ones and zeros are combined with the parameter fields to build the 8-bit opcode. Additionally, the full instruction might require one or two additional bytes of operands. These are shown in the second major column of the table, labeled &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;&lt;/del&gt;Operands&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;&lt;/del&gt;. If no operands are required, the column is filled with a dash (&amp;amp;mdash;).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The fixed ones and zeros are combined with the parameter fields to build the 8-bit opcode. Additionally, the full instruction might require one or two additional bytes of &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Operand#Computer_science|&lt;/ins&gt;operands&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;. These are shown in the second major column of the table, labeled &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;&lt;/ins&gt;Operands&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;&lt;/ins&gt;. If no operands are required, the column is filled with a dash (&amp;amp;mdash;).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Since the ones and zeros are difficult to remember, the &amp;#039;&amp;#039;&amp;#039;Mnemonic&amp;#039;&amp;#039;&amp;#039; column shows a short, easy to remember letter code  that an [[assembly language]] programmer may use to invoke the required opcode.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Since the ones and zeros are difficult to remember, the &amp;#039;&amp;#039;&amp;#039;Mnemonic&amp;#039;&amp;#039;&amp;#039; column shows a short, easy to remember letter code  that an [[assembly language]] programmer may use to invoke the required opcode.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;RastaKins</name></author>
	</entry>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Opcode&amp;diff=682184&amp;oldid=prev</id>
		<title>imported&gt;RastaKins: /* CPUs */ Opcode prefix wikilink</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Opcode&amp;diff=682184&amp;oldid=prev"/>
		<updated>2025-06-19T00:59:26Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;CPUs: &lt;/span&gt; Opcode prefix wikilink&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Previous revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 00:59, 19 June 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l7&quot;&gt;Line 7:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Opcodes are found in the machine language instructions of CPUs as well as in some [[virtual machine#Process virtual machines|abstract computing machines]]. In CPUs, an opcode may be referred to as an &amp;#039;&amp;#039;&amp;#039;instruction machine code&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Intel_1973_MCS-4&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction code&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Intel_1974_MCS-40&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction syllable&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Jones_1988_CISC&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Domagała_2012&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Smotherman_2013&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Jones_2016_CISC&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction parcel,&amp;#039;&amp;#039;&amp;#039; or &amp;#039;&amp;#039;&amp;#039;opstring&amp;#039;&amp;#039;&amp;#039;.&amp;lt;ref name=&amp;quot;Schulman_2005&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Chiba_2007&amp;quot;/&amp;gt; For any particular processor (which may be a general CPU or a more specialized processing unit), the opcodes are defined by the processor&amp;#039;s [[instruction set architecture]] (ISA).&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt; They can be described using an [[opcode table]]. The types of operations may include [[arithmetic]], data copying, [[logical operation]]s, program control, and special instructions (e.g., [[CPUID]]).&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Opcodes are found in the machine language instructions of CPUs as well as in some [[virtual machine#Process virtual machines|abstract computing machines]]. In CPUs, an opcode may be referred to as an &amp;#039;&amp;#039;&amp;#039;instruction machine code&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Intel_1973_MCS-4&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction code&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Intel_1974_MCS-40&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction syllable&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Jones_1988_CISC&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Domagała_2012&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Smotherman_2013&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Jones_2016_CISC&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction parcel,&amp;#039;&amp;#039;&amp;#039; or &amp;#039;&amp;#039;&amp;#039;opstring&amp;#039;&amp;#039;&amp;#039;.&amp;lt;ref name=&amp;quot;Schulman_2005&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Chiba_2007&amp;quot;/&amp;gt; For any particular processor (which may be a general CPU or a more specialized processing unit), the opcodes are defined by the processor&amp;#039;s [[instruction set architecture]] (ISA).&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt; They can be described using an [[opcode table]]. The types of operations may include [[arithmetic]], data copying, [[logical operation]]s, program control, and special instructions (e.g., [[CPUID]]).&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In addition to the opcode, many instructions specify the data (known as [[operand]]s) the operation will act upon, although some instructions may have implicit operands or none.&amp;lt;ref name=&quot;Hennessy_2017&quot;/&amp;gt; Some instruction sets have nearly uniform fields for opcode and operand specifiers, whereas others (e.g., [[x86]] architecture) have a less uniform, variable-length structure.&amp;lt;ref name=&quot;Hennessy_2017&quot;/&amp;gt;&amp;lt;ref name=&quot;Mansfield_1983&quot;/&amp;gt; Instruction sets can be extended through opcode &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;prefixes&lt;/del&gt;, which add a subset of new instructions made up of existing opcodes following reserved byte sequences.{{Citation needed|date=February 2023}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;In addition to the opcode, many instructions specify the data (known as [[operand]]s) the operation will act upon, although some instructions may have implicit operands or none.&amp;lt;ref name=&quot;Hennessy_2017&quot;/&amp;gt; Some instruction sets have nearly uniform fields for opcode and operand specifiers, whereas others (e.g., [[x86]] architecture) have a less uniform, variable-length structure.&amp;lt;ref name=&quot;Hennessy_2017&quot;/&amp;gt;&amp;lt;ref name=&quot;Mansfield_1983&quot;/&amp;gt; Instruction sets can be extended through &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;opcode &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;prefix]]es&lt;/ins&gt;, which add a subset of new instructions made up of existing opcodes following reserved byte sequences.{{Citation needed|date=February 2023}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Sample opcode table===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Sample opcode table===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>imported&gt;RastaKins</name></author>
	</entry>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Opcode&amp;diff=158036&amp;oldid=prev</id>
		<title>imported&gt;Lambtron: /* Sample opcode table */ revised quotes and dash per WP:MOS</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Opcode&amp;diff=158036&amp;oldid=prev"/>
		<updated>2025-03-18T18:27:25Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Sample opcode table: &lt;/span&gt; revised quotes and dash per &lt;a href=&quot;/wiki143/index.php?title=WP:MOS&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;WP:MOS (page does not exist)&quot;&gt;WP:MOS&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{short description|Part of a machine instruction}}&lt;br /&gt;
{{Use dmy dates|date=March 2020|cs1-dates=y}}&lt;br /&gt;
{{Machine code}}&lt;br /&gt;
In [[computing]], an &amp;#039;&amp;#039;&amp;#039;opcode&amp;#039;&amp;#039;&amp;#039; (abbreviated from &amp;#039;&amp;#039;&amp;#039;operation code&amp;#039;&amp;#039;&amp;#039;)&amp;lt;ref name=&amp;quot;Barron_1978_Opcode&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Chiba_2007&amp;quot;/&amp;gt; is an [[enumeration|enumerated value]] that specifies the operation to be performed. Opcodes are employed in hardware devices such as [[arithmetic logic unit]]s (ALUs), [[central processing units]] (CPUs), and software instruction sets. In ALUs, the opcode is directly applied to circuitry via an input signal bus. In contrast, in CPUs, the opcode is the portion of a [[machine code|machine language]] [[instruction (computer science)|instruction]] that specifies the operation to be performed.&lt;br /&gt;
&lt;br /&gt;
==CPUs==&lt;br /&gt;
Opcodes are found in the machine language instructions of CPUs as well as in some [[virtual machine#Process virtual machines|abstract computing machines]]. In CPUs, an opcode may be referred to as an &amp;#039;&amp;#039;&amp;#039;instruction machine code&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Intel_1973_MCS-4&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction code&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Intel_1974_MCS-40&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction syllable&amp;#039;&amp;#039;&amp;#039;,&amp;lt;ref name=&amp;quot;Jones_1988_CISC&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Domagała_2012&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Smotherman_2013&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Jones_2016_CISC&amp;quot;/&amp;gt; &amp;#039;&amp;#039;&amp;#039;instruction parcel,&amp;#039;&amp;#039;&amp;#039; or &amp;#039;&amp;#039;&amp;#039;opstring&amp;#039;&amp;#039;&amp;#039;.&amp;lt;ref name=&amp;quot;Schulman_2005&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Chiba_2007&amp;quot;/&amp;gt; For any particular processor (which may be a general CPU or a more specialized processing unit), the opcodes are defined by the processor&amp;#039;s [[instruction set architecture]] (ISA).&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt; They can be described using an [[opcode table]]. The types of operations may include [[arithmetic]], data copying, [[logical operation]]s, program control, and special instructions (e.g., [[CPUID]]).&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition to the opcode, many instructions specify the data (known as [[operand]]s) the operation will act upon, although some instructions may have implicit operands or none.&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt; Some instruction sets have nearly uniform fields for opcode and operand specifiers, whereas others (e.g., [[x86]] architecture) have a less uniform, variable-length structure.&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;Mansfield_1983&amp;quot;/&amp;gt; Instruction sets can be extended through opcode prefixes, which add a subset of new instructions made up of existing opcodes following reserved byte sequences.{{Citation needed|date=February 2023}}&lt;br /&gt;
&lt;br /&gt;
===Sample opcode table===&lt;br /&gt;
This table shows opcodes of a simple 8-bit microprocessor, the [[Intel 8008]] from 1972.&lt;br /&gt;
&lt;br /&gt;
Each opcode is 8 [[bit]]s long. Each is shown as a [[Binary number|binary]] pattern of ones and zeros in the &amp;#039;&amp;#039;&amp;#039;Opcode&amp;#039;&amp;#039;&amp;#039; column. Up to two additional fields may be embedded into the opcode. Some 3-bit fields are labeled DDD, SSS, CC, and ALU. The SSS (source) and DDD (destination) fields specify one of the eight possible 8008 [[Processor register|registers]] or memory: A, B, C, D, E, H, L, or M. CC specifies a condition that will activate certain JMP, CAL, and RET instructions. ALU specifies one of a possible eight [[arithmetic logic unit]] functions to be performed during an instruction, specifically, add, add with carry, subtract, subtract with borrow, logical AND, logical XOR, logical OR, and compare. The &amp;#039;&amp;#039;&amp;#039;X&amp;#039;&amp;#039;&amp;#039; in some fields means that either a 1 or 0 can be inserted with [[Don&amp;#039;t-care term|no effect]].&lt;br /&gt;
&lt;br /&gt;
The fixed ones and zeros are combined with the parameter fields to build the 8-bit opcode. Additionally, the full instruction might require one or two additional bytes of operands. These are shown in the second major column of the table, labeled &amp;quot;Operands&amp;quot;. If no operands are required, the column is filled with a dash (&amp;amp;mdash;).&lt;br /&gt;
&lt;br /&gt;
Since the ones and zeros are difficult to remember, the &amp;#039;&amp;#039;&amp;#039;Mnemonic&amp;#039;&amp;#039;&amp;#039; column shows a short, easy to remember letter code  that an [[assembly language]] programmer may use to invoke the required opcode.&lt;br /&gt;
&lt;br /&gt;
The &amp;#039;&amp;#039;&amp;#039;Description&amp;#039;&amp;#039;&amp;#039; column shows the function performed by the microprocessor when it encounters a specific opcode.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot;&lt;br /&gt;
!colspan=8| Opcode ||colspan=2| Operands ||rowspan=2| Mnemonic || rowspan=2| Description&lt;br /&gt;
|-&lt;br /&gt;
! 7 || 6 || 5 || 4 || 3 || 2 || 1 || 0 || b2 || b3&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 || 0 || 0 || 0 || 0 || 0 || X || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| HLT ||align=left| Halt&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 ||colspan=3|DDD || 0 || 0 || 0 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| INr ||align=left| DDD ← DDD + 1 (except A and M)&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 ||colspan=3|DDD || 0 || 0 || 1 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| DCr ||align=left| DDD ← DDD - 1 (except A and M)&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 || 0 || 0 || 0 || 0 || 1 || 0 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| RLC ||align=left| A&amp;lt;sub&amp;gt;1-7&amp;lt;/sub&amp;gt; ← A&amp;lt;sub&amp;gt;0-6&amp;lt;/sub&amp;gt;; A&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ← Cy ← A&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 ||colspan=3|CC || 0 || 1 || 1 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| Rcc (RET conditional) ||align=left| If cc true, P ← (stack)&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 ||colspan=3|ALU || 1 || 0 || 0 || &amp;#039;&amp;#039;data&amp;#039;&amp;#039; || &amp;amp;mdash; ||align=left| ADI ACI SUI SBI NDI XRI ORI CPI &amp;#039;&amp;#039;data&amp;#039;&amp;#039; ||align=left| A ← A [ALU operation] data&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 ||colspan=3|N || 1 || 0 || 1 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| RST &amp;#039;&amp;#039;n&amp;#039;&amp;#039; ||align=left| (stack) ← P, P ← N x 8&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 ||colspan=3|DDD || 1 || 1 || 0 || &amp;#039;&amp;#039;data&amp;#039;&amp;#039; || &amp;amp;mdash; ||align=left| LrI &amp;#039;&amp;#039;data&amp;#039;&amp;#039; (Load r with immediate data) ||align=left| DDD ← data&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 || X || X || X || 1 || 1 || 1 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| RET ||align=left| P ← (stack)&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 || 0 || 0 || 1 || 0 || 1 || 0 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| RRC ||align=left| A&amp;lt;sub&amp;gt;0-6&amp;lt;/sub&amp;gt; ← A&amp;lt;sub&amp;gt;1-7&amp;lt;/sub&amp;gt;; A&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt; ← Cy ← A&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 || 0 || 1 || 0 || 0 || 1 || 0 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| RAL ||align=left| A&amp;lt;sub&amp;gt;1-7&amp;lt;/sub&amp;gt; ← A&amp;lt;sub&amp;gt;0-6&amp;lt;/sub&amp;gt;; Cy ← A&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt;; A&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; ← Cy&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 || 0 || 1 || 1 || 0 || 1 || 0 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| RAR ||align=left| A&amp;lt;sub&amp;gt;0-6&amp;lt;/sub&amp;gt; ← A&amp;lt;sub&amp;gt;1-7&amp;lt;/sub&amp;gt;; Cy ← A&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt;; A&amp;lt;sub&amp;gt;7&amp;lt;/sub&amp;gt; ← Cy&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 1 ||colspan=3|CC || 0 || 0 || 0 || &amp;#039;&amp;#039;addlo&amp;#039;&amp;#039; || &amp;#039;&amp;#039;addhi&amp;#039;&amp;#039; ||align=left| Jcc &amp;#039;&amp;#039;add&amp;#039;&amp;#039; (JMP conditional)||align=left| If cc true, P ← add&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 1 || 0 || 0 ||colspan=3|port || 1 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| INP &amp;#039;&amp;#039;port&amp;#039;&amp;#039; ||align=left| A ← Port (ports 0-7 only)&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 1 ||colspan=5|port || 1 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| OUT &amp;#039;&amp;#039;port&amp;#039;&amp;#039; ||align=left| Port ← A (ports 8-31 only)&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 1 ||colspan=3|CC || 0 || 1 || 0 || &amp;#039;&amp;#039;addlo&amp;#039;&amp;#039; || &amp;#039;&amp;#039;addhi&amp;#039;&amp;#039; ||align=left| Ccc &amp;#039;&amp;#039;add&amp;#039;&amp;#039; (CAL conditional)|| align=left| If cc true, (stack) ← P, P ← add&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 1 || X || X || X || 1 || 0 || 0 || &amp;#039;&amp;#039;addlo&amp;#039;&amp;#039; || &amp;#039;&amp;#039;addhi&amp;#039;&amp;#039; ||align=left| JMP &amp;#039;&amp;#039;add&amp;#039;&amp;#039; ||align=left| P ← add&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 1 || X || X || X || 1 || 1 || 0 || &amp;#039;&amp;#039;addlo&amp;#039;&amp;#039; || &amp;#039;&amp;#039;addhi&amp;#039;&amp;#039; ||align=left| CAL &amp;#039;&amp;#039;add&amp;#039;&amp;#039; ||align=left| (stack) ← P, P ← add&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 0 ||colspan=3|ALU ||colspan=3|SSS || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| ADr ACr SUr SBr NDr XRr ORr CPr || align=left| A ← A [ALU operation] SSS&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 1 ||colspan=3|DDD ||colspan=3|SSS || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| Lds (Load d with s) ||align=left| DDD ← SSS&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 1 || 1 || 1 || 1 || 1 || 1 || 1 || &amp;amp;mdash; || &amp;amp;mdash; ||align=left| HLT ||align=left| Halt&lt;br /&gt;
|-&lt;br /&gt;
! 7 || 6 || 5 || 4 || 3 || 2 || 1 || 0 || b2 || b3 || Mnemonic ||  Description&lt;br /&gt;
|-&lt;br /&gt;
!colspan=13|&lt;br /&gt;
|-&lt;br /&gt;
!colspan=5|SSS DDD|| 2 || 1 || 0 ||colspan=2|CC ||ALU&lt;br /&gt;
|-&lt;br /&gt;
|colspan=5| A || 0 || 0 || 0 ||colspan=2|FC, C false ||align=left|ADr ADI (A ← A + arg)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=5| B || 0 || 0 || 1||colspan=2|FZ, Z false||align=left|ACr ACI (A ← A + arg + Cy)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=5| C || 0 || 1 || 0||colspan=2|FS, S false ||align=left|SUr SUI (A ← A - arg)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=5| D || 0 || 1 || 1||colspan=2|FP, P odd ||align=left|SBr SBI (A ← A - arg - Cy)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=5| E || 1 || 0 || 0||colspan=2|TC, C true ||align=left|NDr NDI (A ← A ∧ arg)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=5| H || 1 || 0 || 1||colspan=2|TZ, Z true ||align=left|XRr XRI (A ← A ⊻ arg)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=5| L || 1 || 1 || 0||colspan=2|TS, S true ||align=left|ORr ORI (A ← A ∨ arg)&lt;br /&gt;
|-&lt;br /&gt;
|colspan=5| M || 1 || 1 || 1||colspan=2|TP, P even ||align=left|CPr CPI (A - arg)&lt;br /&gt;
|-&lt;br /&gt;
!colspan=5|SSS DDD|| 2 || 1 || 0 ||colspan=2|CC ||ALU&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=={{Anchor|SIS}}Software instruction sets==&lt;br /&gt;
Opcodes can be found in [[bytecode]]s and other representations intended for execution by software interpreters. These often employ slightly higher-level data types and operations than those found in hardware opcodes but are nevertheless constructed along similar lines. Examples include the byte code found in [[Java class file]]s, which are interpreted by  [[Java virtual machine]]s, the byte code used in [[GNU Emacs]] for compiled [[Lisp (programming language)|Lisp]] code, and NET [[Common Intermediate Language]].&amp;lt;ref name=&amp;quot;bytecode&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
{{Portal|Computer programming}}&lt;br /&gt;
* [[Gadget (machine instruction sequence)]]&lt;br /&gt;
* [[Illegal opcode]]&lt;br /&gt;
* [[Syllable (computing)]]&lt;br /&gt;
* [[Fused operation]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
{{Reflist|40em|refs=&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Barron_1978_Opcode&amp;quot;&amp;gt;{{cite book |author-first=David William |author-last=Barron |author-link=David W. Barron |editor-first=J. John |editor-last=Floretin |title=Assemblers and Loaders |date=1978 |orig-year=1971, 1969 |edition=3 |publisher=[[Elsevier North-Holland Inc.]] |series=Computer Monographs |publication-place=New York, USA |location=[[University of Southampton]], Southampton, UK |isbn=0-444-19462-2 |lccn=78-19961 |chapter=2.1. Symbolic instructions |page=7}} (xii+100 pages)&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Jones_2016_CISC&amp;quot;&amp;gt;{{cite web |title=A Minimal CISC |work=Computer Architecture On-Line Collection |author-first=Douglas W. |author-last=Jones |publisher=[[The University of Iowa]], Department of Computer Science |date=2016 |orig-year=2012 |location=Iowa City, USA |url=http://homepage.cs.uiowa.edu/~jones/arch/cisc/ |access-date=2016-05-28 |url-status=live |archive-url=https://web.archive.org/web/20200302190911/http://homepage.cs.uiowa.edu/~jones/arch/cisc/ |archive-date=2020-03-02}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Jones_1988_CISC&amp;quot;&amp;gt;{{cite journal |title=A Minimal CISC |author-first=Douglas W. |author-last=Jones&amp;lt;!-- |other=[[The University of Iowa]], Department of Computer Science, Iowa City, USA --&amp;gt; |journal=ACM SIGARCH Computer Architecture News |publisher=[[Association for Computing Machinery]] (ACM) |location=New York, USA |date=June 1988 |volume=16 |issue=3 |pages=56–63 |doi=10.1145/48675.48684 |s2cid=17280173 |doi-access=free }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Domagała_2012&amp;quot;&amp;gt;{{cite book |title=Application of CLP to instruction modulo scheduling for VLIW processors |chapter=7.1.4. Benchmark suite |author-first=Łukasz |author-last=Domagała |publisher=Jacek Skalmierski Computer Studio |date=2012 |isbn=978-83-62652-42-6 |pages=80–83 [83&amp;lt;!-- relevant page --&amp;gt;] |location=Gliwice, Poland |url=https://books.google.com/books?id=e6apNOED26kC |chapter-url=https://books.google.com/books?id=e6apNOED26kC |access-date=2016-05-28 |url-status=live |archive-url=https://web.archive.org/web/20200302192452/https://books.google.de/books?hl=de&amp;amp;id=e6apNOED26kC&amp;amp;jtp=83 |archive-date=2020-03-02}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Smotherman_2013&amp;quot;&amp;gt;{{cite web |title=Multiple Instruction Issue |author-first=Mark |author-last=Smotherman |publisher=School of Computing, Clemson University |date=2016 |orig-year=2013 |url=https://people.cs.clemson.edu/~mark/330/ilp.txt |access-date=2016-05-28 |url-status=live |archive-url=https://web.archive.org/web/20160528142545/https://people.cs.clemson.edu/~mark/330/ilp.txt |archive-date=2016-05-28}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Schulman_2005&amp;quot;&amp;gt;{{cite magazine |title=Finding Binary Clones with Opstrings &amp;amp; Function Digests |author-first=Andrew |author-last=Schulman |magazine=[[Dr. Dobb&amp;#039;s Journal]] |volume=30 |issue=7 |id=#374 |issn=1044-789X |publisher=[[CMP Media LLC]] |date=2005-07-01 |series=Part I |pages=69–73 |url=http://www.drdobbs.com/finding-binary-clones-with-opstrings-fu/184406152 |access-date=2020-03-02 |url-status=live |archive-url=https://web.archive.org/web/20200302175401/https://www.drdobbs.com/finding-binary-clones-with-opstrings-fu/184406152 |archive-date=2020-03-02 |postscript=none}}; {{cite magazine |title=Finding Binary Clones with Opstrings &amp;amp; Function Digests |author-first=Andrew |author-last=Schulman |magazine=[[Dr. Dobb&amp;#039;s Journal]] |volume=30 |issue=8 |id=#375 |issn=1044-789X |publisher=[[CMP Media LLC]] |date=2005-08-01 |series=Part II |pages=56–61 |url=http://www.drdobbs.com/finding-binary-clones-with-opstrings-fu/184406203 |access-date=2016-05-28 |url-status=live |archive-url=https://web.archive.org/web/20200302185255/https://www.drdobbs.com/finding-binary-clones-with-opstrings-fu/184406203 |archive-date=2020-03-02 |postscript=none}}; {{cite magazine |title=Finding Binary Clones with Opstrings &amp;amp; Function Digests |author-first=Andrew |author-last=Schulman |magazine=[[CMP Media LLC]] |volume=30 |issue=9 |id=#376 |issn=1044-789X |publisher=[[United Business Media]] |date=2005-09-01 |series=Part III |pages=64–70 |url=http://www.drdobbs.com/tools/finding-binary-clones-with-opstrings-fu/184406247 |access-date=2016-05-28 |url-status=live |archive-url=https://web.archive.org/web/20200302185646/https://www.drdobbs.com/tools/finding-binary-clones-with-opstrings-fu/184406247?pgno=3 |archive-date=2020-03-02}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Chiba_2007&amp;quot;&amp;gt;{{cite web |title=Javassist, a Java-bytecode translator toolkit |author-first=Shigeru |author-last=Chiba |date=2007 |orig-year=1999 |url=http://www.docjar.org/html/api/javassist/bytecode/InstructionPrinter.java.html |access-date=2016-05-27 |url-status=live |archive-url=https://web.archive.org/web/20200302185725/http://www.docjar.org/html/api/javassist/bytecode/InstructionPrinter.java.html |archive-date=2020-03-02}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Hennessy_2017&amp;quot;&amp;gt;{{cite book |title=Computer architecture: A quantitative approach |author-last1=Hennessy |author-first1=John L. |author-last2=Patterson |author-first2=David A. |author-last3=Asanović |author-first3=Krste |author-link3=Krste Asanović |author-last4=Bakos |author-first4=Jason D. |author-last5=Colwell |author-first5=Robert P. |author-last6=Bhattacharjee |author-first6=Abhishek |author-last7=Conte |author-first7=Thomas M. |author-last8=Duato |author-first8=José |author-last9=Franklin |author-first9=Diana |author-last10=Goldberg |author-first10=David |author-last11=Jouppi |author-first11=Norman P. |author-last12=Li |author-first12=Sheng |author-last13=Muralimanohar |author-first13=Naveen |author-last14=Peterson |author-first14=Gregory D. |author-last15=Pinkston |author-first15=Timothy M. |author-last16=Ranganathan |author-first16=Parthasarathy |author-last17=Wood |author-first17=David A. |author-last18=Young |author-first18=Cliff |author-last19=Zaky |author-first19=Amr |date=2017-11-23 |edition=6 |publisher=[[Morgan Kaufmann Publishers]] |location=Cambridge, Massachusetts, USA |isbn=978-0-12811905-1 |oclc=983459758 }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Mansfield_1983&amp;quot;&amp;gt;{{cite book |title=Machine Language For Beginners |chapter=Introduction: Why Machine Language? |author-first=Richard |author-last=Mansfield |date=1983 |series=[[Compute! Books]] |publisher=[[COMPUTE! Publications, Inc.]], [[American Broadcasting Companies, Inc.]]; [[Small System Services, Inc.]] |location=Greensboro, North Carolina, USA |isbn=0-942386-11-6 |edition=1 |url=https://www.atariarchives.org/mlb/index.php |chapter-url=http://www.atariarchives.org/mlb/introduction.php |access-date=2016-05-28 |url-status=live |archive-url=https://web.archive.org/web/20080213090055/http://www.atariarchives.org/mlb/introduction.php |archive-date=2008-02-13}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;bytecode&amp;quot;&amp;gt;{{cite magazine |title=bytecode Definition |series=PC Magazine Encyclopedia |magazine=[[PC Magazine]] |url=https://www.pcmag.com/encyclopedia_term/0,2542,t=bytecode&amp;amp;i=39108,00.asp |access-date=2015-10-10 |url-status=dead |archive-url=https://web.archive.org/web/20121006015213/http://www.pcmag.com/encyclopedia_term/0%2C2542%2Ct%3Dbytecode%26i%3D39108%2C00.asp |archive-date=6 October 2012 }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Intel_1973_MCS-4&amp;quot;&amp;gt;{{cite book |title=MCS-4 Assembly Language Programming Manual - The INTELLEC 4 Microcomputer System Programming Manual |chapter=Appendix B - Instruction Machine Codes |edition=Preliminary |publisher=[[Intel Corporation]] |date=December 1973 |location=Santa Clara, California, USA |id=MCS-030-1273-1 |pages=B-1 – B-8 |chapter-url=http://bitsavers.trailing-edge.com/components/intel/MCS4/MCS-4_Assembly_Language_Programming_Manual_Dec73.pdf |access-date=2020-03-02 |url-status=live |archive-url=https://web.archive.org/web/20200301235541/http://bitsavers.trailing-edge.com/components/intel/MCS4/MCS-4_Assembly_Language_Programming_Manual_Dec73.pdf |archive-date=2020-03-01}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Intel_1974_MCS-40&amp;quot;&amp;gt;{{cite book |title=MCS-40 User&amp;#039;s Manual For Logic Designers |chapter=The Functions Of A Computer: Instruction Register And Decoder |publisher=[[Intel Corporation]] |editor-first=Howard A. |editor-last=Raphael |date=November 1974 |location=Santa Clara, California, USA |page=viii |chapter-url=http://bitsavers.trailing-edge.com/components/intel/MCS40/MCS-40_Users_Manual_Nov74.pdf |access-date=2020-03-03 |url-status=live |archive-url=https://web.archive.org/web/20200303024244/http://bitsavers.trailing-edge.com/components/intel/MCS40/MCS-40_Users_Manual_Nov74.pdf |archive-date=2020-03-03 |quote=[…] Each operation that the processor can perform is identified by a unique binary number known as an instruction code. […]}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{X86 assembly topics}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Machine code]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Lambtron</name></author>
	</entry>
</feed>