MCD4700 Diploma of Information Technology
MCD4700 Introduction to Computer Systems, Networks and Security T1 2024
Assignment 2 Processes and MARIE ProgrammingInstruction
Processes and programs are what makes computers do what we want them to do. In the first part of this assignment, students will investigate the processes running on their computers. The second part is about programming in MARIE assembly language. This will allow students to demonstrate their comprehension of the fundamental way a processor works.
The assignment relates to Unit Learning Outcomes 2, 3 and 4.
For part 1, you will write a short report describing the processes that are running on your computer.
For part 2, you will implement a simple game in the MARIE assembly language.
20 of your total marks for the unit
The assignment is marked out of 100 marks.
See individual instructions
11:55 pm Friday 12 April 2024 Week7
Via Moodle Assignment Submission.
Turnitin will be used for similarity checking of all submissions.
This is an individual assignment group work is not permitted.
Handwritten work is not accepted. docx for the written tasks.
MARIE files for the second part
DRAFT submission is not assessed.
You will need to explain your code in an interview.
Part 1 is assessed based on correctness and completeness of the descriptions. Part 2 is assessed based on correctness of the code, documentationcomments, and test cases.
See instructions for details.
By submitting a Special Consideration Form or visit this link: https:lms.monashcollege.edu.aucourseview.php?id1331
Without special consideration, 10 deduction per calendar day or part thereof for up to one week
Word Limit
Submission
Assessment Criteria
Late Penalties
MCD4700 Diploma of Information Technology
Assessment items will not be accepted after more than 7 calendar days unless a Special Consideration application has been approved. This 7day time frame does not apply to assessments due in Week 12.
See Moodle Assessment page
Feedback will be provided on student work via:
general cohort performance
specific student feedback ten working days post submission
This assignment has two parts. Make sure you read the instructions carefully.
You need to submit one zip file includes five files through the Moodle Assignment activity:
Plagiarism: It is an academic requirement that the work you submit be original. If there is any evidence of copying including from online sources without proper attribution, collaboration, pasting from websites or textbooks, Zero marks may be awarded for the whole assignment, the unit or you may be suspended or excluded from your course. Monash Colleges policies on plagiarism, collusion, and cheating are available here or see this link:
https:www.monashcollege.edu.audataassetspdffile001017101dip assessmentpolicy.pdf
Further Note: When you are asked to use Internet resources to answer a question, this does not mean copypasting text from websites. Write answers in your own words such that your understanding of the answer is evident. Acknowledge any sources by citing them.
Support Resources
INSTRUCTIONS
Plagiarism
The generative AI is not allowed to be used to generate any solutions for this
assessment.
1. Processes 15 marks
MCD4700 Diploma of Information Technology
Calculate the turnaround time for the following processes and subsequently calculate their average turnaround time
Process Processing Time P1 1
P4 2 P5 7 P6 4 P7 1
a In FCFS firstcome firstserved
b In SJF shortest job first
c In Round Robin with slice time2
2. MARIE 65 marks
MCD4700 Diploma of Information Technology
In this task you will develop a MARIE application that performs some manipulation of characters, strings and numbers. We will break it down into small steps for you. Most of the tasks require you to write code and test cases. The code must contain proper comments and well indented. You submit it as .mas files together with the rest of your assignment. The test cases should also be working, selfcontained MARIE assembly files without requiring much input from the user.
Background Lists of data
This section introduces the concepts you need for the rest of the assignment. A string is a sequence of characters. Its the basic data structure for storing text in a computer. There are several different ways of representing a string in memory and how to deal with strings of arbitrary length.
For this assignment, we will use the following string representation:
A string is represented in contiguous memory locations, with each address containing one character.
The characters are encoded using the ASCII encoding.
End of a string is marked by the ASCII character . i.e. dot or fullstop.
A string can be of any arbitrary length, and will be terminated by a ., and it may contain any of the following: alphabets AZ, az, numbers 09, ASCII Space Character Hex 020 and New Line Hex 00A.
Here is an example. A string Dong Satria. will be represented in memory written as hexadecimal numbers:
044 06F 06E 067 020 053 061 074 072 069 061 02E Dong Satria.
Note that, in the above example, for a string with 10 characters, we need 102 words of MARIE memory in order to store all the characters belonging to that string including a space and a . characters.
In MARIE assembly language programming, we can make use of the ADR command, the HEX keyword and a label myString to put this string into memory:
InClass interviews: You will be required to demonstrate your code to your tutor after the
submission deadline. Failure to demonstrate will lead to zero marks being awarded to the
entire programming part of this assignment.
myStringAddr, ADR myString
HEX 044 D HEX 06F o HEX 06E n HEX 067 g HEX 020 Space HEX 053 S HEX 061 a HEX 074 t HEX 072 r HEX 069 i HEX 061 a HEX 02E .
MCD4700 Diploma of Information Technology
2.1. Your name as a MARIE string 5 marks
The following example of a MARIE string myString encodes a name and an ID using ASCII characters. The name is separated from the ID by an ASCII character Hex 00A New Line. Different parts of a name are separated by another ASCII character Hex 020 Space. And the entire string, consisting of a name and an ID, is terminated by a dot . character.
Please see the example below. The label myStringAddr holds the address of the first character of the string. You need to follow this MARIE string while solving the task given below.
myStringAddr,
ADR myString
NLNew Line
MCD4700 Diploma of Information Technology
Prepare a MARIE program to encode a string that includes your full name first name and last name and your student ID using ASCII characters. Following the above example, you need to use two labels, one label e.g. myString to store the first character of the string, and another label e.g. myStringAddr to store the address of the first character of the same string.
You need to submit a MARIE file that contains codes, using the ADR command and HEX keywords like the above example, so that after assembling, your name, ID and the address of the first character of the string is stored in MARIE memory. The codes must be accompanied by appropriate comments as a paragraph before any block of code or subroutine or as inline comments wherever appropriate.
2.2. Printing string 10 marks
Prepare a MARIE program that can print the ASCII . terminated string of your name and your student ID that you have implemented in task 2.1. You may use the Output instruction to print characters in the MARIE output space. The program should be able to print any string that terminated with ..
Hint: In your program, you need to use a label myString that holds the start address of the string like, myStringAddr that you want to print. Then, you should load a character from the address myString, print the character, then increment the address by one, and keep doing that up to the character loaded from the address is a . which signals the end of the string. The output may look similar to the output below. The codes must be accompanied by appropriate comments as a paragraph before any block of code or subroutine or as inline comments wherever appropriate.
Inside the Memory
Dong Satria
Figure 1: Print your name and ID
MCD4700 Diploma of Information Technology
2.3 Subroutines to print a string and Calculate a Numerology Expression Number
Numerology is a belief system that suggests the numerical value of a name can influence various aspects of personality and professional development. The number associated with a name is often referred to as the Expression number. To calculate this number, each letter in the name is assigned a unique number from 1 to 26, following this key:
A1, B2, C3, D4, E5, F6, G7, H8, I9, J10,
K11, L12, M13, N14, O15, P16, Q17, R18,
S19, T20, U21, V22, W23, X24, Y25, Z26.
This method can be implemented with any name, assuming that all the letters are capital letters, and there are no special characters except spaces.
To find your Numerology or Expression number, follow these steps:
1. Write out the string usually a name for which you want to determine the Numerology or Expression number.
2. Match each letter in the string to its corresponding number using the key.
3. Add together all of the numbers associated with the letters in the string.
4. Reduce the sum of the string numbers:
a. If the sum is two digits, repeatedly add together the two digits until you get a single digit.
b. If the sum is greater than 2 digits, reduce the number to two digits by adding together the digits repeatedly until you get either one digit or two digits
MONASH 13 15 14 1 19 8
13 15 14 1 19 8 70 70 7 0 7
The Expression number 7 Example2:
M O N A S H space C O L L E G E 13 15 14 1 19 8 3 15 12 12 5 7 5
13 15 14 1 19 8 3 15 12 12 5 7 5 129 129 1 2 9 12
The Expression number 12
MCD4700 Diploma of Information Technology
Create two MARIE subroutines: one named subPrintString to print a string terminated with a period ., and another named subCountNumerology to calculate the Expression Number for the given string. These subroutines should follow these guidelines:
The subroutines should:
1. Print the string
2. On the second line, print the sum of the Expression Number before reducing it.
3. On the third line, print the Expression Number after the reduction.
Figure 2.a: Using subroutines to Display a string and find an Expression number
Expression Number before reducing it
Expression Number after reducing it
Figure 2.b: Using subroutines to Display a string and find an Expression number
Note: MONASH COLLEGE is just an example
MCD4700 Diploma of Information Technology
2.4 Assembly Language and Machine Language 15 marks This task is for HD students
To get HD in this assignment you have to think again before ignoring this task
Write at least four differences between at most 200 words:
Assembly Language
Machine Language
Prepare a MARIE program that initialised with three values X, Y and Z then find and print the result of XYZ in:
Assembly Language
Machine Language
Note: Assuming that the result is always between 9 and 9.
The codes must be accompanied by appropriate comments as a paragraph before any block of code or subroutine or as inline comments wherever appropriate. The code of the assemble and the machine should be in one MARIE file called AssemblyANDMachine.
The result of 10921 in assembly
The result of 10921 in
Machine language
Note: The result should be converted from decimal to Unicode ASCII to be displayed like this.
Figure 3.a: Assembly and Machine Language
MCD4700 Diploma of Information Technology
The result of 10913 in assembly
The result of 10913 in
Machine language
Note: The result should be converted from decimal to Unicode ASCII to be displayed like this.
Figure 3.b: Assembly and Machine Language
Marks for each representation:
Correct explaining: 6 marks
Correct code in assembly and machine: 6 marks
Correctly convert the decimal to Unicode and display the result as above: 3 marks
Code Documentation and Development 5 marks
All the variableslabels should have a meaningful naming convention. The code should include
proper comments.
Code Readability 5 marks
Before you submit, be sure your code is well organised and very easy to follow included code
indentation, effective use of whitespace etc.
MCD4700 Diploma of Information Technology
Report Structure and Correct files 5 marks Files to be submitted:
One folder named YourFirstNameLastNameStudentID containing the following files:
1. Report for the written tasks One Word file called YourFirstNameLastName StudentID.doc docx. The report should include your Full name, your student ID, your class number and your tutors name.
2. MARIE files for tasks 2.1 to 2.4 name them as below:
2.1NameID.mas
2.2PrintNameID.mas
2.3SubroutinesToPrintcountNumerology.mas
2.4 AssemblyANDMachine.mas
Zip the folder under the same name and submit it to Moodle. You need to make sure there are no spaces in any of the filenames.
3. Inclass oralcoding assessment 15 marks
In addition, you will be asked some questions related to MARIE to assess your level of understanding. Your tutor will ask a couple of questions about the MARIE programming language andor you are required to code a task using MARIE.
NOTE! Your submitted files must be correctly identified as described above.
Any submission that does not comply will receive an automatic 10 marks
penalty applied after marking.