Opcode
Machine code |
---|
General concepts |
Instructions |
In
Overview
Specifications and format of the opcodes are laid out in the instruction set architecture (ISA) of the processor in question, which may be a general CPU or a more specialized processing unit.[10] Opcodes for a given instruction set can be described through the use of an opcode table detailing all possible opcodes. Apart from the opcode itself, an instruction normally also has one or more specifiers for operands (i.e. data) on which the operation should act, although some operations may have implicit operands, or none at all.[10] There are instruction sets with nearly uniform fields for opcode and operand specifiers, as well as others (the x86 architecture for instance) with a more complicated, variable-length structure.[10][11] Instruction sets can be extended through the use of opcode prefixes which add a subset of new instructions made up of existing opcodes following reserved byte sequences.[citation needed]
Operands
Depending on architecture, the operands may be
Assembly language, or just assembly, is a low-level programming language, which uses mnemonic instructions and operands to represent machine code.[10] This enhances the readability while still giving precise control over the machine instructions. Most programming is currently done using high-level programming languages,[12] which are typically easier for humans to understand and write.[10] These languages need to be compiled (translated into assembly language) by a system-specific compiler, or run through other compiled programs.[13]
Software instruction sets
Opcodes can also be found in so-called
See also
- Gadget (machine instruction sequence)
- Illegal opcode
- Syllable (computing)
- Fused operation
References
- ^ LCCN 78-19961. (xii+100 pages)
- ^ a b Chiba, Shigeru (2007) [1999]. "Javassist, a Java-bytecode translator toolkit". Archived from the original on 2020-03-02. Retrieved 2016-05-27.
- Intel Corporation. December 1973. pp. B-1–B-8. MCS-030-1273-1. Archived(PDF) from the original on 2020-03-01. Retrieved 2020-03-02.
- Intel Corporation. p. viii. Archived(PDF) from the original on 2020-03-03. Retrieved 2020-03-03.
[…] Each operation that the processor can perform is identified by a unique binary number known as an instruction code. […]
- S2CID 17280173.
- ISBN 978-83-62652-42-6. Archivedfrom the original on 2020-03-02. Retrieved 2016-05-28.
- ^ Smotherman, Mark (2016) [2013]. "Multiple Instruction Issue". School of Computing, Clemson University. Archived from the original on 2016-05-28. Retrieved 2016-05-28.
- The University of Iowa, Department of Computer Science. Archivedfrom the original on 2020-03-02. Retrieved 2016-05-28.
- from the original on 2020-03-02. Retrieved 2016-05-28.
- ^ OCLC 983459758.
- ISBN 0-942386-11-6. Archivedfrom the original on 2008-02-13. Retrieved 2016-05-28.
- ^ "Programming Language Popularity". langpop.com. 2013-10-25. Archived from the original on 2015-04-11. Retrieved 2015-10-10.
- ^ Swanson, William (2001). "Introduction to Assembly Language". Swanson Technologies. Archived from the original on 2020-03-02. Retrieved 2015-10-10.
- PC Magazine. PC Magazine Encyclopedia. Archived from the originalon 2012-10-06. Retrieved 2015-10-10.
Further reading
- Hyde, Randall (2004). Write Great Code: Thinking Low-level, Writing High-level. Vol. 1. San Francisco, California, USA: )