1. : What is the primary purpose of data movement instructions?
(A) Perform arithmetic operations
(B) Transfer data between registers and memory
(C) Manage input/output operations
(D) Control the program flow
2. : Which of the following is an example of a data movement instruction?
(A) ADD
(B) MOV
(C) SUB
(D) JMP
3. : Which type of instruction performs calculations like addition or subtraction?
(A) Control instruction
(B) Arithmetic instruction
(C) Data movement instruction
(D) Logical instruction
4. : What is the function of control instructions in a program?
(A) Move data between memory and registers
(B) Perform arithmetic operations
(C) Alter the sequence of execution
(D) Perform logical operations
5. : Which of the following is a common control instruction?
(A) MOV
(B) ADD
(C) JMP
(D) SUB
6. : In most architectures, the LOAD instruction is classified as a:
(A) Data movement instruction
(B) Arithmetic instruction
(C) Logical instruction
(D) Control instruction
7. : The SUB instruction is used to:
(A) Move data from one register to another
(B) Subtract two values
(C) Control program flow
(D) Shift bits
8. : Which of the following instructions is used to control conditional program execution?
(A) CMP
(B) MOV
(C) INC
(D) ADD
9. : What is the role of the JMP instruction?
(A) Add two values
(B) Compare two values
(C) Transfer program control unconditionally
(D) Load a value into a register
10. : The MOV instruction typically performs which of the following actions?
(A) Arithmetic operations
(B) Logical comparison
(C) Transfer data between registers or memory
(D) Perform multiplication
11. : Which of the following instructions would you use to branch to a specific part of a program based on a condition?
(A) JZ (Jump if Zero)
(B) MOV
(C) INC
(D) SUB
12. : The INC instruction is used to:
(A) Decrement a value by 1
(B) Increment a value by 1
(C) Multiply two values
(D) Shift a value left
13. : The instruction JNZ performs which operation?
(A) Jump if the result is negative
(B) Jump if the zero flag is not set
(C) Jump to the next instruction
(D) Jump if the result is positive
14. : What is the purpose of the AND instruction?
(A) Perform bitwise comparison
(B) Perform addition
(C) Perform subtraction
(D) Transfer data
15. : Which instruction is typically used to move data from memory to a register?
(A) MOV
(B) ADD
(C) JMP
(D) SUB
16. : In which category does the CALL instruction fall?
(A) Data movement instruction
(B) Arithmetic instruction
(C) Control instruction
(D) Logical instruction
17. : The instruction CMP is used to:
(A) Move data
(B) Compare two values
(C) Subtract two values
(D) Multiply two values
18. : What does the HLT instruction do in a program?
(A) Adds two values
(B) Stops program execution
(C) Transfers data
(D) Compares values
19. : Which of the following is a control transfer instruction?
(A) ADD
(B) MOV
(C) JMP
(D) SUB
20. : The DEC instruction is used to:
(A) Increment a value
(B) Decrement a value
(C) Transfer data
(D) Compare values
21. : What is the purpose of the XOR instruction?
(A) Perform bitwise exclusive OR
(B) Add two values
(C) Subtract two values
(D) Transfer data
22. : Which instruction moves a constant value into a register?
(A) MOV
(B) ADD
(C) JMP
(D) DEC
23. : Which of the following instructions branches program control to a different location based on a flag condition?
(A) JZ
(B) INC
(C) MUL
(D) MOV
24. : Which instruction adds two register values and stores the result in one of the registers?
(A) ADD
(B) CMP
(C) MOV
(D) JMP
25. : Which of the following instructions is used to decrement the value in a register?
(A) INC
(B) DEC
(C) SUB
(D) MOV
26. : What is the primary purpose of arithmetic instructions like MUL and DIV?
(A) Control the flow of execution
(B) Perform calculations such as multiplication and division
(C) Move data from memory to registers
(D) Compare two values
27. : The JMP instruction performs which of the following?
(A) Compares two values
(B) Moves data between registers
(C) Transfers control to a different part of the program
(D) Adds two values
28. : Which instruction performs a division operation?
(A) DIV
(B) MUL
(C) ADD
(D) MOV
29. : Which of the following is an example of a control flow instruction?
(A) MOV
(B) ADD
(C) JMP
(D) INC
30. : Which instruction is used to move data from a register to memory?
(A) MOV
(B) ADD
(C) INC
(D) DIV
31. : The NOP instruction is used to:
(A) Subtract two numbers
(B) Do nothing (no operation)
(C) Perform a bitwise OR
(D) Move data
32. : What does the RET instruction do in a subroutine?
(A) Ends program execution
(B) Returns control to the calling procedure
(C) Moves data between registers
(D) Subtracts two values
33. : The OR instruction is used to:
(A) Perform a bitwise OR between two values
(B) Subtract two values
(C) Move data between registers
(D) Compare two values
34. : Which of the following instructions causes a jump to a subroutine?
(A) JMP
(B) CALL
(C) MOV
(D) RET
35. : The SHL instruction performs which operation?
(A) Shift bits to the left
(B) Shift bits to the right
(C) Compare two values
(D) Add two values
36. : Which instruction is used to compare the contents of two registers without modifying them?
(A) CMP
(B) ADD
(C) SUB
(D) MOV
37. : What is the primary function of the TEST instruction?
(A) Test the result of a bitwise AND operation
(B) Move data between memory and registers
(C) Compare two numbers
(D) Add two values
38. : Which instruction moves data from one register to another?
(A) MOV
(B) JMP
(C) ADD
(D) DEC
39. : The JE (Jump if Equal) instruction does what?
(A) Moves data between registers
(B) Jumps if the comparison result is equal
(C) Jumps if the result is negative
(D) Adds two values
40. : Which instruction would you use to multiply two numbers?
(A) MUL
(B) DIV
(C) ADD
(D) MOV
41. : The NEG instruction is used to:
(A) Move data between registers
(B) Perform subtraction
(C) Invert the sign of a number
(D) Compare two values
42. : What does the POP instruction do?
(A) Moves data between registers
(B) Loads a value from memory onto the stack
(C) Removes the top value from the stack
(D) Transfers control to a different part of the program
43. : Which instruction performs addition on two operands?
(A) ADD
(B) SUB
(C) MUL
(D) MOV
44. : Which instruction loads data from the stack to a register?
(A) PUSH
(B) POP
(C) JMP
(D) MOV
45. : The DIV instruction performs which function?
(A) Divides two numbers
(B) Multiplies two numbers
(C) Moves data between registers
(D) Adds two numbers
46. : The JNZ instruction transfers control if:
(A) The result is zero
(B) The result is not zero
(C) Two values are equal
(D) The result is positive
47. : The ADC instruction does what?
(A) Adds with carry
(B) Compares two values
(C) Shifts bits left
(D) Transfers control
48. : The CMP instruction is typically followed by which instruction?
(A) ADD
(B) SUB
(C) JMP
(D) MOV
49. : The SHR instruction performs which operation?
(A) Shift bits to the right
(B) Shift bits to the left
(C) Add two values
(D) Subtract two values
50. : The XCHG instruction is used to:
(A) Swap the contents of two registers
(B) Add two values
(C) Compare two values
(D) Transfer control