no
32 byte
32 byte
6 bytes
In 8086 the instruction queue is 6 byte long. This is because even the longest 8086 instruction is 6 byte long. Thus it is possible to prefetch even the longest instruction in the instruction set.
An instruction queue is used in the 8086 to speed up the average time it takes to process an instruction. Some instructions are faster than the bus, while some are slower. If the CPU had to wait for all of the instructions, there would be gaps of time where the CPU is doing nothing. The queue helps to eliminate that gap by prefetching instructions in the hope that they will be ready for use when the CPU gets to them.
The 8086/8088 instruction queue is a buffer that holds opcode bytes that have been prefetched by the bus interface unit. This speed up operations of the processor by helping to reduce fetches latency, i.e. to improve the probability that an opcode byte fetched by the processor is already available. This works best when there is no branching, as a branch would invalidate the queue. Advanced processors attempt to "predict" the branch, making the probability even better.
The 8086/8088 instruction queue is a buffer that holds opcode bytes that have been prefetched by the bus interface unit. This speeds up operations of the processor by helping to reduce fetch latency, i.e. to improve the probability that an opcode byte fetched by the processor is already available.
it goes to queue for next instruction
6 bytes
increases speed
Because that's how Intel designed it. They chose a 6 byte queue in the 8086 in order to optimize speed versus latency of the execution unit versus the bus interface unit. The decision for 6 bytes, as compared to 4 or 8 or some other number was a cost tradeoff and a recognition of the average mix of instruction execution cycle times in a typical processing thread.
pata nai