CUSTOMER_CODE SMUDE DIVISION_CODE SMUDE EVENT_CODE OCTOBER15 ASSESSMENT_CODE BC0051_OCTOBER15 QUESTION_TYPE DESCRIPTIVE_QUESTION QUESTION_ID 3450 QUESTION_TEXT Write a short on a. Lexical analysis b. Syntax analysis. SCHEME OF EVALUATION a.Lexical analysis(5 marks) b.Syntax analysis(5 marks) QUESTION_TYPE DESCRIPTIVE_QUESTION QUESTION_ID 72897 QUESTION_TEXT Discuss the purpose of following intelx86 registers. a. AX b. DX c. CX d. DI e. a. b. SCHEME OF EVALUATION c. d. e. SI AX: 2 mark DX: 2 mark CX: 2 mark DI: 2 mark SI: 2 mark QUESTION_TYPE DESCRIPTIVE_QUESTION QUESTION_ID 72898 QUESTION_TEXT Discuss Linking versus Loading. a. Program Loading: 3 marks b. Relocation: 3 marks SCHEME OF EVALUATION c. Symbol resolution: 3 marks Concluding note: 1 mark QUESTION_TYPE DESCRIPTIVE_QUESTION QUESTION_ID 114583 Explain the following LPDT: QUESTION_TEXT a. LEX b. YACC a. LEX: LEX is a tool for automatically generating lexical analyzers. A LEX source program is a specifications of a lexical analyzer, consisting of a set of regular expressions together with an action for each regular expression .The action is a piece of code which is to be executed whenever a token specified by the corresponding regular expression is recognized. Typically, an action will pass an indication of the token found to the parser, perhaps with side effects such as making an entry in the symbol table. The output of LEX is a lexical analyzer program constructed from the LEX source specification. (5 marks) SCHEME OF EVALUATION b. YACC: The main component of the input to YACC is a syntax directed definition for the translation of the source program into an IR or the target program. YACC allows the user to specify a possibly ambiguous grammar along with precedence and associatively information about operators and how YACC resolves any parsing action conflicts that arise. The user provides YACC with a grammar, and YACC builds the LALR states. YACC then attempts to select the parsing actions for each state. (5 marks) QUESTION_TYPE DESCRIPTIVE_QUESTION QUESTION_ID 114585 QUESTION_TEXT What is MASM? Explain its features. The Microsoft Macro Assembler (MASM) is an assembler for the x86 family of microprocessors, originally produces Microsoft MS-DOS operating system. (1-mark) SCHEME OF EVALUATION 1. It supported a wide variety of macro facilities and structured programming idioms, including high level constructions for looping. (1.5 marks) 2. MASM is one of the few Microsoft development tools for which there was no separate 16 bit and 32 bit version. (1.5 marks) 3. It affords the programmer looking for additional performance a three pronged approach to performance based solutions. (1.5 marks) 4. MASM can build very small high performance executable files that are well suited where size and speed matter. (1.5 marks) 5. When additional performance is required for other languages, MASM can enhance the performance of these languages with small fast and powerful dynamic link libraries. (1.5 mark) 6. For programmers who work in Microsoft visual C/C++, MASM builds modules and libraries that are in the same format (1.5 marks) QUESTION_TYPE DESCRIPTIVE_QUESTION QUESTION_ID 114587 QUESTION_TEXT Write a note on relocation and bootstrapping. SCHEME OF EVALUATION Relocation: Relocation occurs both when a linker combines object files and when a loader copies an executable file into memory in preparation for execution………. (7 marks) Boot strapping: In computing, bootstrapping refers to a process where simple system activates another more complicated system that serves the same purpose……… (3 marks)