0% found this document useful (0 votes)
34 views

Logical Instructions5

This document describes logical instructions that can perform operations on data in registers and memory. It explains the AND, OR, XOR, rotate, compare, and complement operations. It provides details on how each instruction works, including examples of opcodes and operands. The instructions modify status flags to indicate results.

Uploaded by

ihg9
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views

Logical Instructions5

This document describes logical instructions that can perform operations on data in registers and memory. It explains the AND, OR, XOR, rotate, compare, and complement operations. It provides details on how each instruction works, including examples of opcodes and operands. The instructions modify status flags to indicate results.

Uploaded by

ihg9
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 23

Logical Instructions

 These instructions perform logical operations on data


stored in registers, memory and status flags.

 The logical operations are:


 AND
 OR
 XOR
 Rotate
 Compare
 Complement

2
AND, OR, XOR
 Any 8-bit data, or the contents of register, or
memory location can logically have
 AND operation

 OR operation

 XOR operation

with the contents of accumulator.

 The result is stored in accumulator.


3
Rotat
e
 Each bit in the accumulator
or right to the next position.
can be shifted either left

4
Compare
 Any 8-bit data, or the contents of register, or
memory location can be compares for:
 Equality

 Greater Than

 Less Than

with the contents of accumulator.

 The result is reflected in status


flags. 5
Complement
 The contents of accumulator can be
complemented.

 Each 0 is replaced by 1 and each 1 is replaced by 0.

6
Logical Instructions
Opcode Operand Description
CMP R Compare register or memory
M with accumulator

 The contents of the operand (register or memory)


are compared with the contents of the accumulator.

 Both contents are preserved .

 The result of the comparison is shown by setting the


flags of the PSW as follows:

7
Logical Instructions
Opcode Operand Description
CMP R Compare register or memory
M with accumulator

 if (A) < (reg/mem): carry flag is set

 if (A) = (reg/mem): zero flag is set

 if (A) > (reg/mem): carry and zero flags are


reset.

 Example: CMP B or CMP M

8
Logical Instructions
Opcode Operand Description
CPI 8-bit data Compare immediate with accumulator

 The 8-bit data is compared with the contents of


accumulator.

 The values being compared remain


unchanged.

 The result of the comparison is shown by setting the


flags of the PSW as follows:
9
Logical Instructions
Opcode Operand Description
CPI 8-bit data Compare immediate with accumulator

 if (A) < data: carry flag is set

 if (A) = data: zero flag is set

 if (A) > data: carry and zero flags are


reset

 Example: CPI 89H

10
Logical Instructions
Opcode Operand Description
ANA R Logical AND register or memory
M with accumulator

 The contents of the accumulator are logically ANDed with the


contents
of register or memory.
 The result is placed in the accumulator.
 If the operand is a memory location, its address is specified by the
contents of H-L pair.
 S, Z, P are modified to reflect the result of the operation.
 CY is reset and AC is set.
 Example: ANA B or ANA M.
11
Logical Instructions
Opcode Operand Description
ANI 8-bit data Logical AND immediate with accumulator

 The contents of the accumulator are logically ANDed with


the 8-bit data.
 The result is placed in the accumulator.
 S, Z, P are modified to reflect the result.
 CY is reset, AC is set.

 Example: ANI
86H.
12
Logical Instructions
Opcode Operand Description
ORA R Logical OR register or memory
M with accumulator

 The contents of the accumulator are logically ORed with the contents of the register or
memory.

 The result is placed in the accumulator.

 If the operand is a memory location, its address is specified by the contents of H-L
pair.

 S, Z, P are modified to reflect the result.

 CY and AC are reset.


 Example: ORA B or ORA M.

13
Logical Instructions
Opcode Operand Description
ORI 8-bit data Logical OR immediate with accumulator

 The contents of the accumulator are logically ORed with


the 8-bit data.
 The result is placed in the accumulator.
 S, Z, P are modified to reflect the result.
 CY and AC are reset.

 Example: ORI
86H.
14
Logical Instructions
Opcode Operand Description
XRA R Logical XOR register or memory
M with accumulator

 The contents of the accumulator are XORed with the contents


of
the register or memory.
 The result is placed in the accumulator.
 If the operand is a memory location, its address is specified by
the contents of H-L pair.
 S, Z, P are modified to reflect the result of the operation.
 CY and AC are reset.
 Example: XRA B or XRA
M.
15
Logical Instructions
Opcode Operand Description
XRI 8-bit data XOR immediate with accumulator

 The contents of the accumulator are XORed with the


8-bit data.
 The result is placed in the accumulator.
 S, Z, P are modified to reflect the result.
 CY and AC are reset.
Example: XRI
86H.
16
Logical Instructions
Opcode Operand Description
RLC None Rotate accumulator left

 Each binary bit of the accumulator is rotated left by


one position.
 Bit D7 is placed in the position of D0 as well as in the
Carry flag.
 CY is modified according to bit D7.
 S, Z, P, AC are not affected.
Example:
RLC.
17
Logical Instructions
Opcode Operand Description
RRC None Rotate accumulator right

 Each binary bit of the accumulator is rotated right by


one position.
 Bit D0 is placed in the position of D7 as well as in the
Carry flag.
 CY is modified according to bit D0.
 S, Z, P, AC are not affected.
Example:
RRC.
18
Logical Instructions
Opcode Operand Description
RAL None Rotate accumulator left through carry

 Each binary bit of the accumulator is rotated left by


one position through the Carry flag.
 Bit D7 is placed in the Carry flag, and the Carry flag is
placed in the least significant position D0.
 CY is modified according to bit D7.
 S, Z, P, AC are not affected.
 Example: RAL.

56
Logical Instructions
Opcode Operand Description
RAR None Rotate accumulator right through carry

 Each binary bit of the accumulator is rotated right by


one position through the Carry flag.
 Bit D0 is placed in the Carry flag, and the Carry flag is
placed in the most significant position D7.
 CY is modified according to bit D0.
 S, Z, P, AC are not affected.
 Example: RAR.

20
Logical Instructions
Opcode Operand Description
CMA None Complement accumulator

 The contents of the accumulator are


complemented.
 No flags are affected.

 Example: CMA.

21
Logical Instructions
Opcode Operand Description
CMC None Complement carry

 The Carry flag is complemented.

 No other flags are affected.

 Example: CMC.

22
Logical Instructions
Opcode Operand Description
STC None Set carry

 The Carry flag is set to 1.

 No other flags are affected.

 Example: STC.

23

You might also like