CSCI 360-2 Assignment 3 – Basic Assembler 

$35.00

Category: You will Instantly receive a download link for .zip solution file upon Payment

Description

5/5 - (4 votes)

Part A
Write an assembler program that does the following:
• Change the program’s name to the left of the statement to .
• Change the program’s name to the right of the statement at the end of the program to .
• Declare a fullword variable in storage with label with the value 197.
• Declare a fullword variable in storage with label with the value 89.
• Subtract from . To do this, load these numbers into two separate registers using the
Load instruction ( ) for each and then use Subtract Register ( .
• Add to . To do this, load the two numbers into registers (a different pair of registers
than for the previous bullet point) and use Add Register ( ).
• Finally, use an to dump out just the registers and look at the register values to see your answers
and verify that they are correct. Remember that with or without a comma in column 16 will only
dump the registers. The comma in col. 16 is necessary if you want to do line documentation on the line
with the .
Part B
Copy your program from Part A and name it .
Modify the new assembler program as follows:
• Change the program’s name to the left of to .
• Change the program’s name to the right of the statement at the end of the program to .
• Declare two new consecutive fullwords in storage with labels and .
• Store ( ) the answer ( subtracted from ) into .
• Store ( ) the answer ( added to ) into .
• that area of storage (containing and ) using . You can use a single
to display the two fullwords, and , in storage by using the label followed by
the length of the field like this:
• Go into the output and verify your math is correct and stored at the correct locations in memory.
Part C
Now copy your program from Part B and name it . Modify the new assembler program as
follows:
• Change the program’s name to the left of to .
• Change the program’s name to the right of the statement at the end of the program to .
CSCI 360-2 Assignment 3 – Basic Assembler Page 2 of 2
• You may not use the label names , , and in this version of the
Part B program.
• Rewrite the instructions referencing the labels using explicit addressing. This means on the and ,
remove the labels as the operands and fill in the addresses of the various fullword
variables.
• Remove the labels from storage too! Note that you can get the information to form a proper
address for the operand of each of the instructions by reviewing your program listing from
Part B.
• Be sure you still have the single P that dumps the contents of what were and .
Other Notes
To get started on this assignment, copy the code – from the top to the bottom of the file – of your
member in your PDSE, open a new one in the IDz editor, paste into the new member what you
copied from and, when you have done that, save the new member as . Then, begin
editing the new member, , by removing the following three lines of instructions but nothing
more than these three lines from the code in your new member:
Now, begin Part A described above.
Once again, you are encouraged to complete Part A as a PDSE member named in your own
PDSE. Then, for Part B, copy the code from into a new member named
and, when you are ready, copy the code from into a new member named .
Be sure to follow the documentation standards described in Documentation and Coding Guidelines
found in Course Documents on Blackboard.
Submit your three output .txt files representing your successful runs of your jobs for Parts A, B and C on
Blackboard.