INDEX
PAGE STAFF
[Link] DATE CONTENTS
NO SIGN
ADDITION AND SUBTRACTION
1 8 BIT ADDITION
2 16 BIT ADDITION
3 8 BIT SUBTRACTION
4 BCD SUBTRACTION
MULTIPLICATION AND DIVISION
5 8 BIT MULTIPLICATION
6 BCD MULTIPLICATION
7 8 BIT DIVISION
SORTING AND SEARCHING
SEARCHING FOR AN ARRAY ELEMENT IN
8
AN ARRAY
9(A) SORTING IN ASCENDING ORDER
9(B) SORTING IN DESCENDING ORDER
FINDIND THE LARGEST ELEMENT IN AN
10(A)
ARRAY
FINDING THE SMALLEST ELEMENT IN AN
10(B)
ARRAY
11 REVERSING ARRAY ELEMENTS
12 BLOCK MOVE
PAGE STAFF
[Link] DATE CONTENTS
NO SIGN
CODE CONVERSION
13 BCD TO HEX AND HEX TO BCD
14 BINARY TO ASCII AND ASCII TO BINARY
15 ASCII TO BCD AND BCD TO ASCII
APPLICATIONS
16 SQUARE OF A SINGLE BYTE HEX NUMBER
17 SQUARE OF A TWO DIGIT BCD NUMBER
SQUARE ROOT OF A SINGLE BYTE HEX
18
NUMBER
19 SQUARE ROOT OF A TWO DIGIT BCD NUMBER
8-BIT ADDITION
PROGRAM:
LXI H,8030H
MOV A,M
INX H
MOV B,M
MVI C,00H
ADD B
JNC RES
INR C
RES: INX H
MOV M,A
INX H
MOV M,C
HLT
OUTPUT:
16-BIT ADDITION
PROGRAM:
LHLD 8030H
XCHG
LHLD 8032H
MVI C,00H
DAD D
JNC SKIP
INR C
SKIP: SHLD 8040H
MOV A,C
STA 8042H
HLT
OUTPUT:
8-BIT SUBRACTION
PROGRAM:
LXI H,8030
MOV A,M
INX H
MOV B,M
MVI C,00
SUB B
JNC RES
CMA
INR A
RES: INX H
MOV M,A
INX H
MOV M,C
HLT
OUTPUT:
BCD SUBTRACTION
PROGRAM:
LXI H,8030H
MOV A,M
INX H
MOV B,M
MVI C,00H
SUB B
CPI 09H
JC RES
DAA
RES: INX H
RES: MOV M,A
HLT
OUTPUT:
8-BIT MULTIPLICATION
PROGRAM:
LDA 4051
MOV B,A
LDA 4052
MOV C,A
MVI A,00
LOOP: ADD B
DCR C
JNZ LOOP
STA 4053
HLT
OUTPUT:
BCD MULTIPLICATION
PROGRAM:
LXI H,8030H
MOV B,M
INX H
MOV C,M
MVI A,00H
LOOP: ADD B
DAA
DCR C
JNZ LOOP
INX H
MOV M,A
HLT
OUTPUT:
8-BIT DIVISION
PROGRAM:
LXI H,8030H
MOV A,M
INX H
MOV B,M
MVI C,00H
LOOP: SUB B
JC RES;8010
INR C
JMP LOOP;8008
RES: INX H
MOV M,C
INX H
ADD B
MOV M,A
HLT
OUTPUT:
SEARCHING FOR AN ELEMENT IN AN ARRAY
PROGRAM:
MVI C,05H
LXI H,8030H
MOV A,M
LOOP: INX H
CMP M
JZ RES
DCR C
JNZ LOOP
MVI A,FFH
RES: STA 8040H
HLT
OUTPUT:
SORTING IN ASCENDING ORDER
PROGRAM:
MVI B,02
LOOP3: MVI C,02
LXI H,5000
LOOP2: MOV A,M
INX H
CMP M
JC LOOP1
JZ LOOP1
MOV D,M
MOV M,A
DCX H
MOV M,D
INX H
LOOP1: DCR C
JNZ LOOP2
DCR B
JNZ LOOP3
HLT
OUTPUT:
FINDING LARGEST ELEMENT FROM AN ARRAY
PROGRAM:
LXI H,4200H
MOV B,M
INX H
MOV A,M
DCR B
LOOP: INX H
CMP M
JNZ AHEAD
MOV A,M
AHEAD: DCR B
JNZ LOOP
STA 4300H
HLT
OUTPUT:
FINDING SMALLEST ELEMENT FROM AN ARRAY
PROGRAM:
LXI H,4200H
MOV B,M
INX H
MOV A,M
DCR B
LOOP: INX H
CMP M
JC AHEAD
MOV A,M
AHEAD: DCR B
JNZ LOOP
STA 4300H
HLT
OUTPUT:
REVERSING ARRAY ELEMENTS
PROGRAM:
MVI C,20H
LXI H,8030H
LXI D,8034
MOV B,M
LDAX D
MOV M,A
MOV A,B
STAX D
INX H
DCX D
DCR C
HLT
OUTPUT:
BLOCK MOVE
PROGRAM:
MVI C,05H
LXI H,8030H
LXI D,8040H
BMOVE: MOV A,M
STAX D
INX H
INX D
DCR C
JNZ BMOVE
HLT
OUTPUT:
SORTING IN DESCENDING ORDER
PROGRAM:
LXI H,5000
MOV C,M
DCR C
REPEAT:MOV D,C
LXI H,5001
LOOP: MOV A,M
INX H
CMP M
JNC SKIP
MOV B,M
MOV M,A
DCX H
MOV M,B
INX H
SKIP: DCR D
JNZ LOOP
DCR C
JNZ REPEAT
HLT
OUTPUT:
BCD TO BINARY(HEX)
PROGRAM:
LDA 8030H
MOV B,A
ANI 0FH
MOV C,A
MOV A,B
ANI F0H
JZ SKIPMULTIPLY
RRC
RRC
RRC
RRC
MOV D,A
XRA A
MVI E,0AH
SUM: ADD D
DCR E
JNZ SUM
SKIPMULTIPLY: ADD C
STA 8040
HLT
OUTPUT:
BINARY(HEX) TO BCD
PROGRAM:
LXI H,8025H
MVI D,00H
XRA A
MOV C,M
LOOP: ADI 01H
DAA
JNC SKIP
INR D
SKIP: DCR C
JNZ LOOP
MOV L,A
MOV H,D
SHLD 8030H
HLT
OUTPUT:
BINARY TO ASCII
PROGRAM:
LXI
H,8030H
MOV A,M
CPI 0AH JC
RES ADI
07H
RES: ADI 30H
STA
8031H
HLT
OUTPUT:
ASCII TO BINARY
PROGRAM:
LXI
H,8030H
MOV A,M
SUI 30H
CPI 0AHJC
LT9
SUI
07H
LT9: STA
8031H
HLT
OUTPUT:
ASCII TO BCD
PROGRAM:
LXI
H,8030H
MOV A,M
SBI 30 STA
8031H HLT
OUTPUT:
BCD TO ASCII
PROGRAM:
LXI
H,8030H
MOV A,M
ADI 30 STA
8031H HLT
OUTPUT:
SQUARE OF A SINGLE BYTE HEX NUMBER
PROGRAM:
LXI H,8030
MOV B,M
MOV C,M
MVI A,00
LOOP: ADD B
DCR C JNZ
LOOPINX H
MOV M,A
HLT
OUTPUT:
SQUARE OF A TWO DIGIT BCD NUMBER
PROGRAM:
LXI H,8030
MOV B,M
MOV C,M
MVI A,00
LOOP: ADD B
DAA
DCR C
JNZ LOOP
INX H MOV
M,AHLT
OUTPUT:
SQUARE ROOT OF A SINGLE BYTE HEX NUMBER
PROGRAM:
MVI D,01
MVI E,01
LDA 5000
LOOP1: SUB D JZ
LOOPINR
D INR D
INR E
JMP LOOP1
MOV A, E
LOOP: STA 5001
HLT
OUTPUT:
SQUARE ROOT OF A TWO DIGIT BCD NUMBER
PROGRAM:
LDA 8030H
MOV B,A
MVI C,01H
AGAIN: CALL SQUARE
SUB B JZ
EXITINR
C
JMP AGAIN
EXIT: MOV A,C STA
8035HLT
SQUARE: XRA A
MOV D,C
LOOP: ADD C
DAA
DCR D
JNZ LOOP
RET
OUTPUT: