1. __________ is not system software.
a. Compiler
b. ChatGPT
c. Windows OS
d. Linker
2. A program ____________________.
a. is a sequence of instructions
b. is the device where information is stored
c. is a device that performs a sequence of operations specified by instructions in memory
d. none of these
3. A program in execution is called
a. Process
b. Instruction
c. Procedure
d. Function
4. Computer can run without
a. application software
b. system software
c. operating system
d. Windows
5. The output of a lexical analyzer is
a. A parse tree
b. Intermediate code
c. List of tokens
d. Machine code
6. A lexical analyzer skips ____________ while finding tokens from character stream.
a. ; (semicolon),
b. (comma)
c. Whitespace character
d. $ (dollar)
7. Parsing is also known as ____________
a. Syntax Analysis
b. Lexical Analysis
c. Semantic Analysis
d. None of the above
8. _________ phase of a compiler is responsible for syntax analysis.
a. Lexical analysis
b. Semantic analysis
c. Parsing
d. Code generation
9. Which one of the following is a top-down parser?
a. Recursive descent parser
b. Operator precedence parser
c. An LR(k) parser
d. An LALR(k) parser
10. ____________ is a top-down parsing technique.
a. Table driven predictive parsing
b. SLR parsing
c. Canonical LR parsing
d. Operator precedence parsing
11. Top-down parsing is a technique to find ___________________.
a. Leftmost derivation
b. Rightmost derivation
c. Right derivation in reverse
d. None of the above
12. An LR parser can detect a syntactic error as soon as _____________________.
a. Parsing starts
b. It is possible to do left to right scanning of input
c. It is possible to do right to left scanning of input
d. Parsing ends
13. ______________ parser is known as the shift-reduce parser.
a. Top-down
b. Both Top-down and bottom-up
c. Bottom-up
d. Recursive descent
14. Leaf nodes in a parse tree ________.
a. terminals
b. non terminals
c. strings
d. starting symbols of a grammar
15. The parsing technique that avoids back tracking is _________________.
a. Predictive parsing
b. Top-down parsing
c. Syntax tree
d. Recursive descent parsing
16. A parser for a grammar G is a program that takes as input tokens and produces ___________ as immediate output.
a. assembly code
b. string
c. parse tree
d. intermediate code
17. In top-down parsing, the starting ____________ is expanded to derive the input string.
a. non-terminal
b. terminal
c. letter
d. digit
18. The main difference between a compiler and an interpreter is –
a. Compilers execute line by line, interpreters execute at once
b. Compilers translate code all at once, interpreters translate line by line
c. Interpreters generate machine code, compilers generate intermediate code
d. Interpreters are faster than compilers.
19. ___________ grammar gives multiple parse trees for the same string.
a. Unambiguous
b. Ambiguous
c. Regular
d. LL(1)
20. The grammar, A→AA | (A) | e is not suitable for predictive-parsing because the grammar is
a. Ambiguous
b. Left Recursive
c. Right Recursive
d. Operator grammar
21. TII stands for ____________________.
a. Table of information instructions
b. Table of incomplete instructions
c. Translation of instructions information
d. Translation of information instruction
22. Main function of an assembler is to ____________________.
a. Convert high level code to machine code
b. Convert assembly language to machine code
c. Optimize code execution
d. Interpret machine code
23. Translator for low level programming language were termed as ______________.
a. Assembler
b. Compiler
c. Linker
d. Loader
24. Assembly level program instructions are written in __________.
a. binary codes
b. ASCII codes
c. Unicodes
d. mnemonics
25. The instructions like MOV or ADD are called as _____________.
a. operators
b. operands
c. labels
d. opcode
26. Turbo assembler is ____________.
a. masm
b. tasm
c. gas
d. nasm
27. In two pass assembler the target code generation is done in _________.
a. First Pass
b. Zeroth Pass
c. Second Pass
d. None of the above
28. In a two-pass assembler the object code generation is done during the _____________________.
a. Second pass
b. First pass
c. Zeroth pass
d. Not done by assembler
29. In a two-pass assembler, adding literals to literal table and address resolution of local symbols are done using ____________________.
a. First pass and second respectively
b. Both second pass
c. Second pass and first respectively
d. Both first pass
30. Another name of resident assembler is _________________.
a. One-pass assembler
b. Two-pass assembler
c. Self-assembler
d. Cross assembler
31. The assembler stores all the names and their corresponding values in ________________.
a. Special purpose Register
b. Symbol Table
c. Value map Set
d. None of the above
32. A macro is a ____________________.
a. loop
b. interrupt
c. subroutine
d. unit of specification for program generation through expansion
33. The process of macro expansion occurs _____________________.
a. During assembly process
b. After linking
c. During execution
d. After compilation
34. The translator which performs macro expansion is called a _________.
a. Macro processor
b. Macro pre-processor
c. Micro pre-processor
d. Assembler
35. Assembler directives are utilized in macro definition ___________________.
a. MACKRO
b. MEND
c. START
d. LOOP
36. Forward references in assembly language refer to as __________________.
a. Labels defined before they are used
b. Variable is referred prior to its declaration
c. Variables declared before they are initialized
d. Undefined labels in the code
37. Linker is also responsible for arranging objects in program’s _______________ space.
a. Reference
b. Address
c. Critical
d. Back
38. Static memory allocation is typically performed during __________.
a. loading
b. execution
c. compilation
d. linking
39. Dynamic memory allocation is typically performed during _________.
a. loading of the program
b. compilation of the program
c. execution of the program
d. None of the above
40. Dynamic linking occurs _____________.
a. During program loading
b. At runtime
c. During assembly
d. After program termination
41. The linker _____________________.
a. is same as the loader
b. is required to create a load module
c. is always used before programs are executed
d. None of above
42. Linking is process of binding
a. Internal part of a program
b. external functional call
c. External reference to the correct link time address
d. None of the above
43. Which is not a function of a loader?
a. Allocation
b. Translation
c. Relocation
d. Loading
44. A compiler is a software tool that translates ___________ that the computer can understand.
a. Algorithm into data
b. Source code into data
c. Computer language into data
d. None of the above
45. An interpreter is ____________.
a. A program that places programs into memory an prepares them for execution
b. A program that automates the translation of assembly language into machine language
c. A program that accepts a program written in high level language and produces an object program
d. Is a program that appears to execute a source program as if it were machine language
46. Which of the following system software resides in main memory?
a. Text editor
b. Assembler
c. Linker
d. Loader
47. Which of the following systems software does the job of merging the records from two flies into one?
a. Documentation system
b. Utility program
c. Networking software
d. Security software
48. Specialized programs that allow particular input or output devices to communicate with the rest of the computer system are called ________.
a. operating systems
b. utilities
c. device drivers
d. language translators
49. A computer cannot boot if it does not have the ____________________.
a. Compiler
b. Loader
c. operating system
d. Assembler
50. Running time of a program depends on ______________.
a. The way the registers and addressing modes are used
b. The order in which computations are performed
c. The usage of machine idioms
d. All of these
51. When a computer is first turned on or restarted, a special type of absolute loader is executed called _____________.
a. Boot loader
b. Relating loader
c. Bootstrap loader
d. “Compile and GO” loader
52. When dealing with the branching code, the assembler
a. Replaces the target with its address
b. Does not replace until the test condition is satisfied
c. Finds the Branch offset and replaces the Branch target with it
d. Replaces the target with the value specified by the DATAWORD directive
53. Relocatable programs ____________.
a. cannot be used with fixed partitions
b. can be loaded almost anywhere in memory
c. do not need a linker
d. can be loaded only at one specific location
54. A non-relocatable program is the one which ____________________.
a. can itself perform the relocation of its address sensitive portions
b. consists of a program and relevant information for its relocation
c. cannot be made to execute in any area of storage other than the one designated for it at the time of its coding or translation
d. all of these
55. A self-relocating program is ______.
a. cannot be made to exercise in any area of storage other than the one designated for it at the time of its coding or translation
b. consists of a program and relevant information for its relocation
c. one itself perform the relocation of its address sensitive positions
d. all of the above
56. ________________ are used for reduce the main memory requirements of program.
a. Heaps
b. Overlays
c. Graphs
d. None of the above
57. A system program that set up an executable program in main memory ready for execution is _______________.
a. Assembler
b. Linker
c. Loader
d. text-editor