BookRags.com Literature Guides Literature
Guides
Criticism & Essays Criticism &
Essays
Questions & Answers Questions &
Answers
Lesson Plans Lesson
Plans
My Bibliography Periodic Table U.S. Presidents Shakespeare Sonnet Shake-Up
Research Anything:        
History | Encyclopedias | Films | News | Create a Bibliography | More... Login | Register | Help

Opcode

Print-Friendly
About 1 pages (340 words)

Bookmark and Share Know this topic well? Help others and get FREE products!

In computer science, an opcode (Operation Code) is the portion of a machine language instruction that specifies the operation to be performed. Their specification and format will be laid out in the instruction set architecture (ISA) of the computer hardware component in question—normally a CPU, but possibly a more specialized unit. A complete machine language instruction contains an opcode and, optionally, the specification of one or more operands—what data the operation should act upon. Some operations have implicit operands, or indeed none. Some ISAs have instructions with defined fields for opcodes and operands, while others (e.g. the Intel x86 architecture) have a more complicated and ad-hoc structure. The operands upon which opcodes operate may, depending on CPU architecture, consist of registers, values in memory, values stored on the stack, I/O ports, the bus, etc. The operations an opcode may specify can include arithmetic, data copying, logical operations, and program control. Opcodes can also be found in byte codes interpreted by a byte code interpreter (or virtual machine, in one sense of that term). In these, an instruction set architecture is created to be interpreted by software, rather than a hardware device. Often, byte code interpreters work with higher-level data types and operations than a hardware instruction set, but are constructed along similar lines. Examples include the Java programming language's Java Virtual Machine (JVM), the byte code used in GNU Emacs for compiled LISP code, and many others. Machine language is tedious and difficult for humans to program in directly, so if the abstraction given by a higher-level programming language is not desired, an assembly language is used. Here, mnemonic instructions are used that correspond to the opcode and operand specifications of the machine language instructions generated. This gives a greater level of readability and comprehensibility than working with machine language operations directly, while still giving accurate control of the machine language generated. A program called an assembler transforms assembly language into machine code.

See also

View More Summaries on Opcode
 
Ask any question on Opcode and get it answered FAST!
Answer questions in BookRags Q&A and earn points toward
discounted or even FREE Study Guides and other BookRags products!
Learn more about BookRags Q&A
Copyrights
Opcode from Wíkipedia. ©2006 by Wíkipedia. Licensed under the GNU Free Documentation License. View a list of authors or edit this article.

Article Navigation
Join BookRagslearn moreJoin BookRags




About BookRags | Customer Service | Report an Error | Terms of Use | Privacy Policy