1. What is the purpose of a makefile? -A makefile is used to collect the individual commands to compile code. 2. Draw the five-step flowchart that takes main.c and creates main.hex in the compilation process. -main.c->Preprocessor->Complier->main.s->Assembler->main.o->Linker->main.elf->Hex2bin->main.hex 3. Write the value of PORTD in 16-bit (4-digit) hex when pins 0,1,4,5 are HIGH and the rest are LOW. -0x33 4. Rewrite the following lines with one line of code, each using only one of LATACLR, LATASET, and LATAINV. Give the values in 16-bit (4-digit) hex. A. LATAbits.LATA4 = 1; -LATASET = 0x0010; B. LATAbits.LATA5 = !LATAbits.LATA5; -LATAINV = 0x0020; C. LATA &= 0b1111 1111 0011 0101; (spaces added for readability; they're not really there) -LATACLR = 0x00CA; 5. What do the 3 most significant bits in a virtual address signify? -Wether the address is cacheable. 6. Which two of the following four properties are set by the Device Configuration Registers? Primary oscillator mode, Peripheral bus clock divisor