Opcode-microprocessor, Assembly Language

Opcode :

The opcode generally appear in the first byte.but in a few instructions, a register objective is in the first byte and few other instructions may have their 3-bits of opcode in the second byte. The opcodes contain single bit indicators. Their definitions and significance's are described below.

 

  • W-bit: This indicates whether the instruction is to operate above 8-bit or 16-bit data/operands. If bit is 0, the operand is of8-bits and if W is equal to I, the operand is of 16-bits.
  • D-bit: This is valid in case of double operand instructions. One of the operands might be a register indicated by the REG field. The register indicated by REG is source operand ifD value is 0; else, it is a destination operand.
  • S-bit: This bit is known as sign extension bit. The S bit is utilized along with W-bit to show the type of the operation. For an example

            a) 8-bit operation with 8-bit immediate operand is specified by S = 0, W = 0;
            b) 16-bit operation with 16-bit immediate operand is specified by S = 0, W = 1 and
            c) 16-bit operation with a sign extended immediate data is given by S = 1, W = 1

 

  • V-bit: This is utilized in case ofrotate and shift instructions. This bit is set with the value 0, if shift count is 1 and it is set for value 0, if CL contains the shift count.
  • Z-bit: This bit is utilized by REP instruction to control the loop. If Z bit is equivalent to I, the instruction with REPprefix is executed till the 0 flag matches the Z bit.

 

The REG code of the different registers (either as destination operandsor source) in the op code byte is assigned with binary codes.  The  segment  registers  are just  four  in  number  hence  2  binary  bits  will  be enough to code them. The other registers are eight in number, so at least 3-bits will be required for coding them. To permit the use of 16-bit registers as two 8-bit registers they are coded with W bit as described in Table

 

1303_opcode 1.jpg

528_opcode2.jpg

Please  note  that generally  all the  addressing  modes  contain  DS as the  default  data  segment.  Though, the addressing modes by using SP and BP have SS as the default segment register.

To search theR/M and MOD fields of a specific instruction, one should first decide the addressing mode of the instruction. The addressing mode depends on the suggestionand operands how the effective address can be computed for locating the operand, if it lies into the memory. The different addressing modes of the 8086 instructions are listed in given table. The R/M column and addressing mode row element indicate the R/M field, whereas the addressing mode column indicates the MOD field.

325_opcode3.jpg

When a data is to be indicated as an operand and, DS: default data segment register. CS is the default code segment register for the purpose of storing program codes (executable codes). SS is the default segment register for thecause of stack data accesses and operations. ES is a default segment register for the destination data storage. All the segments existing (defined in a particular program) may be written or read as data segments by newly defining the data segment as needed.  There is no physical difference in the memory structure or no physical separation between the segment areas. They might / might not overlap with each other.

 

Posted Date: 10/10/2012 4:49:27 AM | Location : United States







Related Discussions:- Opcode-microprocessor, Assignment Help, Ask Question on Opcode-microprocessor, Get Answer, Expert's Help, Opcode-microprocessor Discussions

Write discussion on Opcode-microprocessor
Your posts are moderated
Related Questions
Intel's 8237 DMA controller : 1) The 8237 contain 4 independent I/O channels 2) It contains 27 registers, 7 of which are system-wide registers and 5 for each channel. 3)

Zero flag: The next line compares the value in register. A with the value 1. If they are equivalent, the Zero flag is set (to 1). The next line then jumps to start: only if th

SHORT  : The  SHORT operator denoted to the assembler that only one byte is needed to code the displacement for a jump (for example displacement is within -128 to +127 bytes fr

need algorithm for multiplication in assembly with out mul function?

Read Architecture: Look Through Main memory that located is conflicting the system interface. The least concerning feature of this cache unit is that it remain between the proc

Write a program that defines symbolic constants for all of the days of the week

Data copy/transfer Instructions MOV: This data transfer instruction transfers data from one register or memory location to another register or memory location. The source can

Program: Write a program to perform addition of a series of 8-bit numbers. The series have 100 (numbers). Solution : In the first program, we have been implemented the add

External Hardware-Interrupts External hardware-interrupts are generated by controllers of external devices or coprocessors and are connected to the processor pin for Non Mask a

Interrupt Priority Management The interrupt priority management logic indicated in given figure can be implemented in several ways. It does not required to be present in system