"prompt":"[20 points] will be given for correctly creating ~/csci206/Labs/Lab01 and placing your lab01.txt file in the right location.",
"points":20,
"execute":"ls -lah"
},
"short_answers":
{
"index":2,
"name":"Short answers",
"points":80,
"prompt":"<ol><li>[15 points] One line mkdir ~/csci206/Labs/Lab01 command.</li><li>[5 point each] One sentence description of each of the following commands do: cat, more, less, head, and tail.</li><li>[10 points] The complete command line to start up emacs without a GUI.</li><li>[10 points] What is the command to show line numbers in vim?</li><li>[10 points] What is the command to show line numbers in emacs?</li><li>[10 points] Complete this sentence in your file: After careful consideration, I will use <vim or emacs> in csci206 as my text editor.</li></ol>",
"prompt":"<ul>\t<li>[1 point each, 4 total] Exercise 1: Debugging questions answered correctly.</li>\t<li>[2 points each, 12 total] Exercise 2: Answers for the register groups $at, $a0-$a3, $t0-$t9, $s0-$s7, $gp, and $sp.</li>\t<li>[1 points each, 4 total] Exercise 3: Each instruction and its effect are described accurately.</li>\t<li>[1 point each, 5 total] Exercise 4: Base conversions show intermediate steps and arrive at the correct result.</li></ul>",
"points":25,
"show":"prelab.txt"
},
"ex1_2":
{
"index":2,
"name":"mystery.asm",
"points":35,
"prompt":"All register numbers in mystery.asm converted to the appropriately named register. -1 for each register not converted. Comments added to mystery.asm clearly indicate an understanding of what the program is doing (not just what each line does in isolation).",
"show":"mystery.asm"
},
"ex3a":
{
"index":3,
"name":"c_mystery.c",
"points":20,
"prompt":"c_mystery.c was created and it implements the proper algorithm.",
"prompt":" Exercise 1: calc.c program works as described and follows good coding conventions. -5 if it does not compile or has warnings. -1 for each minor error. -2 for each significant error.",
"prompt":"Exercise 2: head.c program works as described and follows good coding conventions. -5 if it does not compile or has warnings. -1 for each minor error. -2 for each significant error.",
"prompt":"Exercise 2: notes.txt created and correctly describes creat, open, read, write, close (2 points each). <br>Exercise 4: notes.txt correctly describes fopen(3), fgets(3), fprintf(3), fseek(3), and fclose(3) (2 points each).",
"show":"notes.txt"
},
"ex3_1":
{
"index":5,
"name":"head2",
"points":5,
"prompt":"Makefile created to compile head2.c using head2.o and fileio.o. -5 points for: gcc –Wall head2.c fileio.c –o head2.",
"show":"makefile",
"execute":[
"make head2"
]
},
"ex3_2":
{
"index":6,
"name":"read_file_bytes",
"points":5,
"prompt":"Exercise 3: read_file_bytes removed from head2.c and added to fileio.c. fileio.h has correct declaration with include guard.",
"show":["head2.c","fileio.h","fileio.c"],
"execute":[
"./head2 alice100.txt 50"
]
},
"ex4":
{
"index":7,
"name":"head3",
"points":10,
"prompt":"Exercise 4: head3.c created and uses read_file_lines in fileio.c/.h to read lines using the standard libraries. -5 if it does not compile or has warnings. -1 for each minor error. -2 for each significant error.",
"show":["head3.c","fileio.h","fileio.c"],
"execute":[
"make head3",
"./head3 alice100.txt"
]
},
"ex5":
{
"index":8,
"name":"string_token",
"points":15,
"prompt":"Exercise 5: string_token.c created; notes.txt updated with the output of the original string_token program which generates something like 1: Hello --> Hello 2: world, --> world 3: how --> how 4: are --> are 5: you? --> you . If notes.txt doesn't contain this segment, -4. Visually examine the source code string_token.c. If code style is bad, -2; if the program doesn't compile, -4; if the program compiles with warning(s), -2.",
"prompt":"[2 points each, 20 total] Exercise 1: In notes.txt, 10 values (7 addresses and 3 sizes) should show. The only ones that are blank (unknown) should be the ending address and the size of Heap.",
"show":"notes.txt"
},
"ex2":
{
"index":2,
"name":"syscalls",
"points":10,
"prompt":"[2 point each, 10 total] Exercise 2: In notes.txt, the 5 syscalls are provided with the correct details to run using functionality from SPIM or MARS (GUI).",
"show":"notes.txt"
},
"ex3":
{
"index":3,
"name":"searcharray",
"points":20,
"prompt":"[20 points] Exercise 3: searcharray.s was modified to prompt the user for the value to search for and stop if the value is not found and print value not found.",
"prompt":"[20 points] Exercise 4: sumarray.s completed, correctly detects the length of the array and computes the sum (including if it is zero-length) using the appropriate array access method.",
"show":"sumarray.s",
"execute":["java -jar $(MARS_FILE) sumarray.s"]
},
"ex5":
{
"index":5,
"name":"sumsquares",
"points":30,
"prompt":"[30 points] Exercise 5: sumsquares.s completed and runs; output matches the C version (minor formatting variations are acceptable).",
"prompt":"Leaf procedure implemented in prelab.s. Function returns the proper value. The static variable C is properly defined in the data segment. $ra is noted for the two calls to my_func in a comment.",