Opcode: Difference between revisions

Content deleted Content added
Tags: Reverted Mobile edit Mobile web edit
m Unexplained deletion of anchor. Undid revision 1000251269 by 66604ExileAB (talk)
Line 12:
[[Assembly language]], or just ''assembly'', is a [[low-level programming language]], which uses [[Assembly language#Opcode mnemonics and extended mnemonics|mnemonic]] instructions and operands to represent [[machine code]].<ref name="Hennessy_2017"/> This enhances the readability while still giving precise control over the machine instructions. Most programming is currently done using [[high-level programming language]]s,<ref name="langpop"/> which are typically easier to read and write.<ref name="Hennessy_2017"/> These languages need to be compiled (translated into assembly language) by a [[Operating system|system]]-specific [[compiler]], or run through other compiled programs.<ref name="Swanson_2001"/>
 
=={{Anchor|SIS}}Software instruction sets==
Opcodes can also be found in so-called [[byte code]]s and other representations intended for a software interpreter rather than a hardware device. These software-based instruction sets often employ slightly higher-level data types and operations than most hardware counterparts, but are nevertheless constructed along similar lines. Examples include the byte code found in [[Java class file]]s which are then interpreted by the [[Java Virtual Machine]] (JVM), the byte code used in [[GNU Emacs]] for compiled [[LISP]] code, .NET [[Common Intermediate Language]] (CIL), and many others.<ref name="bytecode"/>