Description
Step 1
Write a C language program to accomplish the following: Look through a list of type unsigned char, find the largest value, and print it to the screen. Use normal C variables.
Step 2
Compile your program, and output an assembly file. I recommend method 2.
Method 1 – GCC
On your Pi run the following command:
gcc -S your_file.c
This will output your assembly file with the extension .s
Method 2 – Godbolt.org
Go to https://www.godbolt.org, and input your C source in the left panel. Remember to set your compiler to ARM gcc 8.3.1 (none)
Step 3
Make some observations and pick apart the assembly code. Try to understand at least a few lines of the assembly code and compare and contrast it to the original C source. This is not an essay class so your observations and thoughts can be formatted any way. I recommend looking at the ARM references found on the Webcampus to try and help you understand what is going on.
What to turn in.
-
Original C source
-
Generated Assembly
-
Your observations