20190428180340machine
High-level computer languages are created to be understood by humans. As a result, the keywords and the commands of these languages are easy to understand. Machine languages are harder to understand and operate.
For this assignment, you should assume that the memory cells at addresses F0 to F9 are in the machine described
here
, and that it contains the hexadecimal bit patterns described in the following table.
Note: Each memory address contains 2 values that must be used separately. For example, your first step is to read the first value from memory address F0, which is 2. When you need the next value, read it from the second part of memory address F0, which is a 0. The first part of memory address F1 is next, which is a C, and so on.
F0
20
F1
C0
F2
30
F3
F8
F4
20
F5
00
F6
30
F7
F9
F8
FF
F9
FF
- Explain (in detail) each step of the machine cycle. Show the contents of each of the registers and each of the memory cells after the execution of the code.
- Compare and contrast machine and high-level languages using resources from the Internet or AIU’s library. Be sure to explain why the hexadecimal and binary codes are important for programming in both languages.
Op-Code Operand Description
1 RXY LOAD the register R with the bit pattern found in the
memory cell whose address is XY
2 RXY LOAD the register R with the bit XY
3 RXY STORE the bit pattern found in register R in the memory
cell whose address is XY
4 0RS MOVE the bit pattern found in register R to register S
5 RST ADD the bit patterns in registers S and T as though they
were two’s complement representations and leave the
result in register R
6 RST ADD the bit patterns in registers S and T as though they
represented values in floating-point notation and leave the
result in register R
7 RST OR the bit pattern in registers S and T and place the result
in register R
8 RST AND the bit patterns in register S and T and place the
result in register R
9 RST Exclusive OR the bit patterns in registers S and T and
place the result in register R
A R0X ROTATE the bit pattern in register R one bit to the right X
times. Each time place the bit that started at the low-order
end at the high-order end.
B RXY JUMP to the instruction located in the memory cell at
address XY if the bit pattern in register R is equal to the bit
pattern in register number 0. Otherwise, continue with the
normal sequence of execution.
C 000 HALT execution