; count 0 and 1 in a byte
; input in A
; number of 1 in R1
; number of 0 in R2
ORG 0H
DATA_ADDR EQU 4000H
MAIN:
MOV R1,#0
MOV R7,#8 ;count=08
MOV A,#97H
AGAIN: RLC A
JNC NEXT ;check for CY
INC R1 ;if CY=1 add to count
NEXT: DJNZ R7,AGAIN
MOV A, #8
CLR C
SUBB A,R1
MOV R2,A
END
Related topics:
8051 Program - search an element in an array | 8051 Program - search a byte in array and count match | 8051 Program - square of a given number 8bit | 8051 Program - square root of a given number 8bit | 8051 Program - square and cube operation | 8051 Program - count number of ones in a byte | 8051 Program - memory subroutines | 8051 Program - math subroutines | 8051 Program - conversion subroutines
List of topics: 8051
No comments:
Post a Comment