Purchase Solution

Hardware Theory

Not what you're looking for?

Ask Custom Question

I have been having a lot of problems with this and really have no clue as to what to do.. Please include steps as well as answer.. Thanks

Design an expanding opcode to allow all the following to be encoded in a 36-bit instructions:

7 instructions with three 15-bit addresses and two 3-bit register number
500 instructions with two 15-bit addresses and one 3-bit register number
50 instructions with no addresses or registers.

Thanks in advance

Purchase this Solution

Solution Summary

Hardware Theory is addressed.

Solution Preview

For the first group of instructions, besides the opcode, you need
<br>3*15 + 2*3 = 45 + 6 = 51 bits
<br>For the second group, besides the opcode, you need
<br>2*15 + 3 = 30 + 3 = 33 bits
<br>For the second group, besides the opcode, you need
<br>0 bits.
<br>Right here, you can say that the problem is not well formed, because you cannot put 51 bits of information in a 36-bit instruction. You COULD say that some of the 15-bit addresses come from a particular register or from the stack. Since that was not specifically allowed in the problem, I am assuming that those options are not available to you.
<br>So, what WOULD be the minimum instruction size to allow you to use expanding opcode techniques to get this variety of instructions encoded?
<br>It only takes 3 bits to distinguish 7 instructions ...

Purchase this Solution

Free BrainMass Quizzes
Inserting and deleting in a linked list

This quiz tests your understanding of how to insert and delete elements in a linked list. Understanding of the use of linked lists, and the related performance aspects, is an important fundamental skill of computer science data structures.

Basic Computer Terms

We use many basic terms like bit, pixel in our usual conversations about computers. Are we aware of what these mean? This little quiz is an attempt towards discovering that.

Javscript Basics

Quiz on basics of javascript programming language.

C# variables and classes

This quiz contains questions about C# classes and variables.

Java loops

This quiz checks your knowledge of for and while loops in Java. For and while loops are essential building blocks for all Java programs. Having a solid understanding of these constructs is critical for success in programming Java.