Opcode
|
Microprocessors perform operations using binary bits (on/off/1or0). Eight bits is equal to a byte (on most modern processors), and two bytes is equal to a word.
As an example let's design a crude 4-bit microprocessor.
All registers, ALUs, counters, and addresses have a data path of 4-bits.
Also, all of our instructions must fit in a 3-bit address.
These are the
op-codes mnemonic operations explanation 000 ADD add A to B and store in b 001 mov move A to B and store in b 010 Jmp jump value in A 011 xorA xor A with next op-code store in b 100 clrA clear A 101 return return to pointer 110 counter counter value 111 end end program
when the op-code values are active at the decoders logic inputs the desired operations are performed..
This is a better explanation then whats below..cleanUpLater..
, each of which is assigned a numeric code called an opcode. To assist in the use of these numeric codes, mnemonics are used as textual abbreviations. It's much easier to remember ADD than 05, for example.
Opcodes operate on registers, values in memory, values stored on the stack, I/O ports, the bus, etc. They are used to perform arithmetic operations and move and change values. Operands are the things that opcodes operate on.
Byte codes are another term for opcodes, especially when they are used to describe higher level constructs as is the case with the Java Language's JVM (Java Virtual Machine). For instance, byte code 1A might be the "iconst_2" instruction which pushes the number 2 on the stack. This is a slightly higher level of abstraction than opcodes, which might need to load the number 2 into a register, and then push the register's value on the stack.
See