We said that a problem with variable length instructions is that you cannot determine instruction boundaries further down the instruction stream, because you have to decode each instruction individually to determine its length. Modern high?performance computers look ahead in the code in order to deal with branch addresses or to perform out?of?order execution, and so on. Can you think of a mechanism that would allow multiple length instructions but still allow you to determine instruction boundaries without fully decoding each instruction in the stream?

What will be an ideal response?


There are many ways of tackling this problem. One solution might involve using intelligent memory (cache) that
performs the decoding of instructions before they are fetched into the computer. Another technique might be
to have tag or template bytes placed in the code stream that define the size of instructions that follow; for
example, if you have instructions that are 1, 2, 3 or 4 words long, you could have a 16?bit template
1,1,2,1,3,4,4,2 that defined the length of the next eight instructions.

Computer Science & Information Technology

You might also like to view...

A(n) _________________________ is an overlay that hides portions of a layer.

Fill in the blank(s) with the appropriate word(s).

Computer Science & Information Technology

A ____ bitmap compresses all layers into a single layer.

A. compressed B. flattened C. concatenated D. monolayered

Computer Science & Information Technology

A ____ evaluates to a true or false value.

A. sentinel B. condition C. Boolean expression D. selection structure

Computer Science & Information Technology

The capitalization for a complimentary close with two words is illustrated correctly in the following example: Sincerely yours

Answer the following statement true (T) or false (F)

Computer Science & Information Technology