AIM:
To perform logical operations AND, OR, XOR, and NOT on 8051
APPARATUS:
PC with Keil software
; main.asm
; 8051 Logical Operations - AND, OR, XOR, NOT
ORG 0000H
MOV A, #0F0H ; A = 11110000b
MOV R1, #0AAH ; R1 = 10101010b
ANL A, R1 ; AND → A = A & R1
MOV 30H, A ; Result → 30H
MOV A, #0F0H
ORL A, R1 ; OR
MOV 31H, A
MOV A, #0F0H
XRL A, R1 ; XOR
MOV 32H, A
MOV A, #0F0H
CPL A ; NOT (complement)
MOV 33H, A
SJMP $
END
OUTPUT:
30H = A0H (AND result: 11110000 & 10101010 = 10100000)
31H = FAH (OR result: 11110000 | 10101010 = 11111010)
32H = 5AH (XOR result: 11110000 ^ 10101010 = 01011010)
33H = 0FH (NOT result: ~11110000 = 00001111)