# Mpmc Quiz 2 Cse B

Approved & Edited by ProProfs Editorial Team
The editorial team at ProProfs Quizzes consists of a select group of subject experts, trivia writers, and quiz masters who have authored over 10,000 quizzes taken by more than 100 million users. This team includes our in-house seasoned quiz moderators and subject matter experts. Our editorial experts, spread across the world, are rigorously trained using our comprehensive guidelines to ensure that you receive the highest quality quizzes.
| By Ankit123
A
Ankit123
Community Contributor
Quizzes Created: 2 | Total Attempts: 228
Questions: 34 | Attempts: 112

Settings

.

• 1.

### The instruction that is used to transfer the data from source operand to destination operand is

• A.

Data copy/transfer instruction

• B.

Branch instruction

• C.

Arithmetic/logical instruction

• D.

String instruction

A. Data copy/transfer instruction
Explanation
The correct answer is data copy/transfer instruction. This instruction is used to transfer data from a source operand to a destination operand. It is specifically designed for the purpose of copying or transferring data between different memory locations or registers. This instruction ensures that the data from the source operand is accurately and efficiently transferred to the destination operand, allowing for effective data manipulation and storage within a computer system.

Rate this question:

• 2.

### Which of the following is not a data copy/transfer instruction?

• A.

MOV

• B.

PUSH

• C.

DAS

• D.

POP

C. DAS
Explanation
DAS stands for Decimal Adjust after Subtraction. It is an instruction used in assembly language programming to adjust the result of a subtraction operation to ensure that the result is in the correct decimal format. DAS is not a data copy/transfer instruction like MOV, PUSH, and POP, which are used to move or transfer data between registers, memory, or the stack. Therefore, DAS is the correct answer as it does not belong to the category of data copy/transfer instructions.

Rate this question:

• 3.

### Which of the following instruction is not valid?

• A.

MOV AX, BX

• B.

MOV DS, 5000H

• C.

MOV AX, 5000H

• D.

PUSH AX

B. MOV DS, 5000H
Explanation
The instruction "MOV DS, 5000H" is not valid because the DS (Data Segment) register is used to store the starting address of a data segment in memory, and it cannot be directly assigned a constant value like 5000H. The DS register can only be loaded with a valid memory address or a value from another register.

Rate this question:

• 4.

### In PUSH instruction, after each execution of the instruction, the stack pointer is

• A.

Incremented by 1

• B.

Decremented by 1

• C.

Incremented by 2

• D.

Decremented by 2

D. Decremented by 2
Explanation
In the PUSH instruction, the stack pointer is decremented by 2 after each execution. This means that the stack pointer is moved 2 positions downwards in the stack memory. This is because the PUSH instruction is used to add data onto the stack, and the stack grows downwards in memory. By decrementing the stack pointer by 2, it ensures that the next data pushed onto the stack will be stored in the correct memory location.

Rate this question:

• 5.

### The instruction that pushes the contents of the specified register/memory location on to the stack is

• A.

PUSHF

• B.

POPF

• C.

PUSH

• D.

POP

C. PUSH
Explanation
The instruction that pushes the contents of the specified register/memory location onto the stack is "PUSH". This instruction is used to store the value of a register or a memory location onto the stack, which is a data structure used for temporary storage in a computer's memory. By pushing the value onto the stack, it can be easily accessed and retrieved later when needed.

Rate this question:

• 6.

### Which is incorrect?

• A.

MOV [1234h], [4567h]

• B.

MOV [BX], AX

• C.

MOV [1234h], 4567h

• D.

MOV BX, [1234h]

A. MOV [1234h], [4567h]
Explanation
The incorrect statement is "MOV [1234h], [4567h]". This is because the MOV instruction is used to move data between two operands, but it does not support moving data directly from one memory location to another memory location. The correct syntax for the MOV instruction is MOV destination, source, where destination can be a register or a memory location, and source can be a register, a memory location, or an immediate value.

Rate this question:

• 7.

### The instruction that pushes the content of flag register on to the stack is

• A.

PUSHF

• B.

POPF

• C.

PUSH

• D.

POP

A. PUSHF
Explanation
The instruction that pushes the content of the flag register onto the stack is "PUSHF". This instruction is used in assembly language programming to save the current state of the flag register onto the stack. The flag register contains various status flags that indicate the outcome of previous instructions, such as the carry flag, zero flag, and overflow flag. By pushing the flag register onto the stack, the programmer can preserve the current state of these flags and restore them later if needed.

Rate this question:

• 8.

### The instruction that copy the content of stack on flag register is

• A.

PUSHF

• B.

POPF

• C.

PUSH

• D.

POP

B. POPF
Explanation
The correct answer is POPF. The POPF instruction copies the contents of the stack onto the flag register. This allows the program to retrieve the previously saved flag values from the stack and restore them to the flag register, thus restoring the state of the flags.

Rate this question:

• 9.

• A.

DAA

• B.

AAA

• C.

DAS

• D.

A. DAA
Explanation
DAA stands for Decimal Adjust Accumulator. It is an instruction used for BCD (Binary Coded Decimal) adjustment after addition. This instruction adjusts the result of an addition operation when the operands are in BCD format. It ensures that the result remains in the BCD range (0-9) and adjusts the carry flag accordingly. DAA is commonly used in assembly language programming to perform arithmetic operations on BCD numbers.

Rate this question:

• 10.

### Which instruction is used for BCD adjustment after subtraction ?

• A.

DAA

• B.

AAA

• C.

DAS

• D.

C. DAS
Explanation
DAS stands for "Decimal Adjust after Subtraction." It is an instruction used for BCD (Binary Coded Decimal) adjustment after subtraction. BCD is a way of representing decimal numbers in binary form. When subtraction is performed on BCD numbers, the result may need to be adjusted to ensure it remains in BCD format. The DAS instruction is specifically designed to perform this adjustment by correcting the result to represent a valid BCD number.

Rate this question:

• 11.

### Which instruction is used for left rotation with carry flag?

• A.

SHL

• B.

ROR

• C.

ROL

• D.

RCL

D. RCL
Explanation
The instruction used for left rotation with the carry flag is RCL (Rotate Left through Carry). This instruction shifts the bits of a value to the left by one position, and the most significant bit is moved into the carry flag. The carry flag then becomes the least significant bit. This allows for a circular rotation of the bits, with the carry flag being included in the rotation.

Rate this question:

• 12.

### Which instruction is used for left rotation without carry flag?

• A.

SHL

• B.

ROR

• C.

ROL

• D.

RCL

C. ROL
Explanation
The ROL instruction is used for left rotation without the carry flag. This instruction shifts the bits of a binary number to the left, and the leftmost bit is moved to the rightmost position. The carry flag is not affected by this operation.

Rate this question:

• 13.

### The instruction that performs logical AND operation and the result of the operation is not available is

• A.

AAA

• B.

AND

• C.

TEST

• D.

XOR

C. TEST
Explanation
The correct answer is "TEST" because the question is asking for the instruction that performs a logical AND operation and provides the result. The other options, AAA, AND, and XOR, do not specifically perform a logical AND operation.

Rate this question:

• 14.

### The processor enters the single step execution mode, if which of the following flag is set?

• A.

Direction

• B.

Trap

• C.

Interrupt

• D.

Zero

B. Trap
Explanation
The processor enters the single step execution mode when the Trap flag is set. This mode allows the processor to execute instructions one at a time, allowing for easier debugging and troubleshooting of code. When the Trap flag is set, the processor generates a trap interrupt after the execution of each instruction, allowing the programmer to analyze the state of the system at each step.

Rate this question:

• 15.

### In the RCL instruction, the contents of the destination operand undergo function as

• A.

Carry flag is pushed into LSB & MSB is pushed into carry flag

• B.

Carry flag is pushed into MSB & LSB is pushed into carry flag

• C.

Auxiliary flag is pushed into LSB & MSB is pushed into carry flag

• D.

Parity flag is pushed into MSB & LSB is pushed into carry flag

A. Carry flag is pushed into LSB & MSB is pushed into carry flag
Explanation
The correct answer is that the carry flag is pushed into the LSB (Least Significant Bit) and the MSB (Most Significant Bit) is pushed into the carry flag. This means that the value of the carry flag is stored in the lowest bit of the destination operand, while the value of the MSB is stored in the carry flag. This allows for efficient manipulation and transfer of these flags during the execution of the RCL instruction.

Rate this question:

• 16.

### Which of the following instructions is INVALID?

• A.

POP 1234H

• B.

PUSH AL

• C.

POP AL

• D.

All of the above

D. All of the above
Explanation
The given answer "All of the above" is correct because all three instructions mentioned (POP 1234H, PUSH AL, POP AL) are invalid. In assembly language, the POP instruction is used to remove the top value from the stack and store it in a register or memory location. However, the first instruction "POP 1234H" is invalid because it tries to pop a value from a specific memory address "1234H" instead of a register. Similarly, the second instruction "PUSH AL" is invalid because it tries to push the value of the AL register onto the stack, which is not allowed. Lastly, the third instruction "POP AL" is invalid because it tries to pop a value from the stack and store it in the AL register, which is also not allowed. Therefore, all three instructions mentioned are invalid.

Rate this question:

• 17.

### What properties of an 8-bit number stored at CL can be checked using the instruction TEST CL,10000001B?

• A.

Sign and divisibility of CL contents by 2

• B.

No. of 1s in CL

• C.

No. of 0s in CL

• D.

None of the above

A. Sign and divisibility of CL contents by 2
Explanation
The instruction TEST CL,10000001B performs a bitwise AND operation between the value stored in register CL and the binary value 10000001B. This means that the bits in CL are checked against the corresponding bits in 10000001B. The result of this operation can be used to determine the properties of the 8-bit number stored in CL. In this case, the instruction checks if the sign bit of CL is set (which indicates a negative number) and if CL is divisible by 2 (since the last bit of 10000001B is 1). Therefore, the correct answer is "Sign and divisibility of CL contents by 2."

Rate this question:

• 18.

### What is the effect on the contents of CL after the instruction SAR CL,01H is executed?

• A.

Divides unsigned CL by 2

• B.

Multiplies unsigned CL by 2

• C.

Divides signed CL by 2

• D.

Multiplies signed CL by 2

C. Divides signed CL by 2
Explanation
The instruction SAR CL,01H stands for Shift Arithmetic Right. When this instruction is executed, the contents of the CL register (which holds an 8-bit signed value) are divided by 2. The SAR instruction performs a signed division, meaning that it takes into account the sign of the value in CL. Therefore, the correct answer is "divides signed CL by 2."

Rate this question:

• 19.

### Which of the following addressing mode is generally used for initialization of register or memory?

• A.

Direct

• B.

Indirect

• C.

Register

• D.

Immediate

D. Immediate
Explanation
Immediate addressing mode is generally used for initialization of register or memory. This addressing mode allows the programmer to directly specify the constant value that needs to be loaded into a register or memory location. It is useful when the value to be initialized is known at compile time and does not need to be fetched from a memory location or calculated using any arithmetic operation. Immediate addressing mode saves execution time and memory space as it eliminates the need for additional instructions to fetch the value from memory.

Rate this question:

• 20.

### The instruction, “DEC” decreases the contents of the specified register or memory location by________

• A.

2

• B.

0

• C.

1

• D.

3

C. 1
Explanation
The instruction "DEC" decreases the contents of the specified register or memory location by 1.

Rate this question:

• 21.

### Which one among these is not a Flag Manipulation Instructions?

• A.

STI

• B.

STD

• C.

SBC

• D.

CLD

C. SBC
Explanation
SBC is not a Flag Manipulation Instruction. STI stands for Set Interrupt Flag, which sets the interrupt flag to 1. STD stands for Set Direction Flag, which sets the direction flag to 1. CLD stands for Clear Direction Flag, which clears the direction flag to 0. However, SBC stands for Subtract with Carry, which is an arithmetic instruction and does not manipulate the flags directly.

Rate this question:

• 22.

### The instruction that loads effective address formed by destination operand into the specified source register is

• A.

LEA

• B.

LDS

• C.

LES

• D.

LAHF

A. LEA
Explanation
The correct answer is LEA. LEA (Load Effective Address) is an instruction that loads the effective address formed by the destination operand into the specified source register. It is commonly used to calculate the address of a memory location without actually accessing the memory. This instruction is particularly useful for performing arithmetic operations on addresses or for calculating the offset of a variable within a data structure.

Rate this question:

• 23.

### The instruction that loads the AH register with the lower byte of the flag register is

• A.

SAHF

• B.

AH

• C.

LAHF

• D.

PUSHF

C. LAHF
Explanation
The instruction that loads the AH register with the lower byte of the flag register is LAHF. This instruction stands for Load AH from Flags. It copies the lower byte of the flag register into the AH register, allowing the program to access and manipulate the individual flag bits stored in the AH register. This instruction is commonly used in low-level programming and in operations that require handling and checking of the flag bits.

Rate this question:

• 24.

### CMP instruction compares the source and the destination operands by performing _______ between the source and the destination operands

• A.

Multiplication

• B.

Division

• C.

Subtraction

• D.

C. Subtraction
Explanation
The CMP instruction compares the source and destination operands by performing subtraction between them. This means that the value of the source operand is subtracted from the value of the destination operand. The result of this subtraction is then used to set the status flags, such as the zero flag (Z) and the sign flag (S), which can be used for conditional branching in the program. Therefore, subtraction is the correct operation performed by the CMP instruction.

Rate this question:

• 25.

### "IDIV" instruction is a signed _________

• A.

Multiplication

• B.

Division

• C.

• D.

Subtraction

B. Division
Explanation
The "IDIV" instruction is a signed division instruction. It is used in assembly language programming to perform division operations on signed integers. Unlike the regular division instruction, "IDIV" takes into account the sign of the operands and produces a signed quotient. It performs both the division and the calculation of the remainder in a single instruction. Therefore, the correct answer is division.

Rate this question:

• 26.

### The instruction that loads the AH register with the lower byte of the flag register is ______

• A.

AH

• B.

LAHF

• C.

PUSHF

• D.

SAHF

B. LAHF
Explanation
The instruction that loads the AH register with the lower byte of the flag register is LAHF. This instruction stands for "Load AH from Flags" and it copies the lower 8 bits of the flag register into the AH register. It is used to access and manipulate individual flag bits in the flag register.

Rate this question:

• 27.

### The instruction that supports subtraction when borrow is ________

• A.

DEC

• B.

SBB

• C.

SUB

• D.

INC

B. SBB
Explanation
SBB stands for Subtract with Borrow. It is an instruction that supports subtraction when borrow is required. This instruction subtracts the source operand from the destination operand, along with the value of the carry flag. If the carry flag is set, indicating a borrow, it subtracts an additional 1 from the result. This allows for proper subtraction when borrowing is necessary. Therefore, SBB is the correct answer for the given question.

Rate this question:

• 28.

### The instruction that supports addition when carry exists is

• A.

• B.

• C.

• D.

None of the mentioned

Explanation
The correct answer is ADC, which stands for "Add with Carry." This instruction is used in computer programming to perform addition when a carry (resulting from a previous addition) exists. It allows for the addition of larger numbers by taking into account the carry from the previous addition operation.

Rate this question:

• 29.

### The instructions that are used for reading an input port and writing an output port respectively are

• A.

MOV, XCHG

• B.

MOV, IN

• C.

IN, MOV

• D.

IN, OUT

D. IN, OUT
Explanation
The correct answer is "IN, OUT" because the "IN" instruction is used for reading an input port, while the "OUT" instruction is used for writing to an output port. This means that the "IN" instruction is used to retrieve data from an external device and store it in a register, while the "OUT" instruction is used to send data from a register to an external device. Therefore, "IN, OUT" is the correct combination of instructions for reading an input port and writing an output port.

Rate this question:

• 30.

### Which of the following instructions takes only 16 bit operand?

• A.

CLD

• B.

XLAT

• C.

PUSH

• D.

C. PUSH
Explanation
The PUSH instruction takes only a 16-bit operand. This instruction is used to push the value of a register or memory location onto the stack in the x86 assembly language. The operand can be a 16-bit register or a 16-bit memory location, and it is always 16 bits in size. This instruction is commonly used to save the value of a register before performing certain operations or to pass arguments to subroutines.

Rate this question:

• 31.

### Which of the following will update one of  the control flags?

• A.

STI

• B.

• C.

MUL

• D.

DIV

A. STI
Explanation
STI is a machine instruction that stands for Set Interrupt Flag. It is used to enable the interrupt system by setting the interrupt flag. The interrupt flag is a control flag that determines whether or not the processor should respond to interrupt requests. By updating the interrupt flag using the STI instruction, the processor allows interrupts to be processed. Therefore, STI is the correct answer as it is the only instruction listed that updates one of the control flags, specifically the interrupt flag.

Rate this question:

• 32.

### Which among the below is a CORRECT instruction?

• A.

• B.

PUSH AX, BX

• C.

MUL AX, BX

• D.

STD

D. STD
Explanation
STD is a correct instruction. STD stands for Set Direction Flag, which is a control flag used in assembly language programming. It sets the direction flag to 1, which causes string operations to decrement the memory address instead of incrementing it. This is useful when working with strings in reverse order. The other options, ADD AL, BX, PUSH AX, BX, and MUL AX, BX are incorrect instructions as they do not follow the correct syntax or are not valid instructions in assembly language.

Rate this question:

• 33.

### Which instruction can add a 8bit and 16bit number?

• A.

• B.

• C.

• D.

None of the above

Explanation
The correct answer is "ADD AX, BX" because it is the only instruction that can add a 16-bit number (BX) to an 8-bit number (AX). The other options either involve adding two 16-bit numbers or adding an 8-bit number to a 8-bit number, which is not what the question is asking for.

Rate this question:

• 34.

### Which of the following instruction divides 32 bit number by a 16 bit number?

• A.

DIV BX

• B.

DIV BL

• C.

DIV DX:AX, BX

• D.

None of the above

A. DIV BX
Explanation
The correct answer is DIV BX because the DIV instruction is used to divide a register or memory value by the specified operand, in this case, the BX register. Since BX is a 16-bit register, it can be used to divide a 32-bit number by a 16-bit number. The other options, DIV BL and DIV DX:AX, BX, are not correct because BL is an 8-bit register and DX:AX is a 32-bit register, so they cannot be used to divide a 32-bit number by a 16-bit number.

Rate this question:

Quiz Review Timeline +

Our quizzes are rigorously reviewed, monitored and continuously updated by our expert board to maintain accuracy, relevance, and timeliness.

• Current Version
• Mar 20, 2023
Quiz Edited by
ProProfs Editorial Team
• Mar 06, 2019
Quiz Created by
Ankit123

Related Topics