Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 29

1.

MULTI-BYTE ADDITION

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 C3 CLR C
4101 74,10 MOV A,#10

4103 34,20 ADDC A,#20

4105 90,45,00 MOV DPTR,#4500

4108 F0 MOVX @DPTR,A

4109 A3 INC DPTR

410A 74,10 MOV A,#10

410C 34,10 ADDC A,#10

410E F0 MOVX @DPTR,A

410F 80,FE HLT: SJMP HLT

OUTPUT:

INPUT OUTPUT
ADDRES ADDRES
DATA DATA
S S
4102 10
4500 30
4104 20

410B 10
4501 20
410D 10

2.(A) MULTIPLICATION

1|Page
ADDRESS OPCODE LABEL: MNEMONICS OPERAND
4100 74,02 MOV A,#02
4102 75,F0,03 MOV B,#03

4105 A4 MUL AB

4106 90,45,00 MOV DPTR,#4500

4109 F0 MOVX @DPTR,A

410A A3 INC DPTR

410B E5,F0 MOV A,B

410D F0 MOVX @DPTR,A

410E 80,FE HLT: SJMP HLT

OUTPUT:

INPUT OUTPUT

ADDRESS DATA ADDRESS DATA

4101 02
4500 06
4104 03

2.(B) DIVISION

2|Page
ADDRESS OPCODE LABEL: MNEMONICS OPERAND
4100 74,08 MOV A,#08
4102 75,F0,02 MOV B,#02

4105 A4 MUL AB

4106 90,45,00 MOV DPTR,#4500

4109 F0 MOVX @DPTR,A

410A A3 INC DPTR

410B E5,F0 MOV A,B

410D F0 MOVX @DPTR,A

410E 80,FE HLT: SJMP HLT

OUTPUT:

INPUT OUTPUT

ADDRES ADDRES
DATA DATA
S S

4101 08
4500 04
4104 02

3. ASCENDING ORDER

ADDRESS OPCODE LABEL: MNEMONICS OPERAND

3|Page
4100 7B,04 MOV R3,#4
4102 7C,04 MOV R4,#4

4104 90,45,00 MOV DPTR,#4500

4107 AD,82 REPT1: MOV R5,DPL

4109 AE,83 MOV R6,DPH

410B E0 MOVX A,@DPTR

410C F5,F0 MOV B,A

410E A3 REPT: INC DPTR

410F E0 MOVX A,@DPTR

4110 F8 MOV R0,A

4111 C3 CLR C

4112 95,F0 SUBB A,B

4114 50,13 JNC CHKNXT(4129)

4116 C0,82 EXCH: PUSH DPL

4118 C0,83 PUSH DPH

411A 8D,82 MOV DPL,R5

411C 8E,83 MOV DPH,R6

411E E8 MOV A,R0

411F F0 MOVX @DPTR,A

4120 D0,83 POP DPH

4122 D0,82 POP DPL

4124 E5,F0 MOV A,B

4|Page
4126 F0 MOVX @DPTR,A

4127 88,F0 MOV B,R0

4129 DB,E3 CHKNXT: DJNZ R3,REPT(410E)

412B 1C DEC R4

412C EC MOV A,R4

412D FB MOV R3,A

412E 0C INC R4

412F 8D,82 MOV DPL,R5

4131 8E,83 MOV DPH,R6

4133 A3 INC DPTR

4134 DC,D1 DJNZ R4,REPT1(4107)

4136 80,FE HLT: SJMP HLT

OUTPUT:

INPUT OUTPUT
ADDRES
DATA ADDRESS DATA
S

4500 05 4500 02

4501 04 4501 03

4502 03 4502 04

4503 02 4503 05

4. ASCii – binary conversion

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 90,45,00 MOV DPTR,#4500

5|Page
4103 74,32 MOV A,#DATA(32)

4105 C3 CLR C

4106 94,30 SUBB A,#30

4108 C3 CLR C

4109 94,0A SUBB A,#0A

410B 40,04 JC STR(4111)

410D 74,FF MOV A,#0FF

410F 80,02 SJMP L1(4113)

4111 24,0A STR: ADD A,#0A

4113 F0 L1: MOVX @DPTR,A

4114 80,FE HLT: SJMP HLT

OUTPUT:

INPUT OUTPUT

ADDRES ADDRES
DATA DATA
S S

4104 32 4500 02

EQUIVALENT DECIMAL VALUE

ASCII Decimal
Number(Hex) Equivalent

6|Page
30 00

31 01

32 02
33 03
34 04

35 05

36 06

37 07

38 08

39 09

EQUIVALENT BINARY OUTPUT

DATA: 02 8 4 2 1

0 0 1 0

ADDRESS DATA

4500 00

4501 10

5. PARITY BIT GENERATOR

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 90,45,00 MOV DPTR,#4200

7|Page
4103 E0 MOVX A,@DPTR

4104 FD MOV R5,A

4105 7A,00 MOV R2,#00

4107 7B,08 MOV R3,#08

4109 13 TOP1: RRC A

410A 50,01 JNC TOP2(410D)

410C 0A INC R2

410D DB,FA TOP2: DJNZ R3,TOP1(4109)

410F EA MOV A,R2

4110 75,F0,02 MOV B,#02

4113 84 DIV AB

4114 E5,F0 MOV A,B

4116 50,06 JNZ TOP3(411E)

4118 74,01 MOV A,#01

411A 7F,0F MOV R7,#0FF

411C 80,04 SJMP TOP4(4122)

411E 74,00 TOP3: MOV A,#00

4120 7F,00 MOV R7,#00

4122 90,45,00 TOP4: MOV DPTR,#4500

4125 F0 MOVX @DPTR,A

4126 8F,90 MOV P1,R7

4128 80,FE HLT: SJMP HLT

8|Page
OUTPUT:(EVEN PARITY)

DATA: 06
INPUT OUTPUT

ADDRESS DATA ADDRESS DATA


8 4 2 1

4200 06 4500 01 0 1 1 0

EVEN NUMBER OF 1’S

OUTPUT:(ODD PARITY)

DATA: 07
INPUT OUTPUT

ADDRESS DATA ADDRESS DATA


8 4 2 1

4200 07 4500 00 0 1 1 1

ODD NUMBER OF 1’S

6.timer/counter(TIMER 0 MODE 1)

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 75,90,00 MOV 90,#00

9|Page
4103 D2,91 LOOP: SETB 91

4105 B1,00 ACALL 4500

4107 C2,91 CLR 91

4109 B1,00 ACALL 4500

410B 80,F6 SJMP LOOP(4103)

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4500 75,89,01 MOV TMOD,#01

4503 75,8C,FD MOV TH0,#FD

4506 75,8A,00 MOV TL0,#00

4509 D2,8C SETB TR0(8C)

450B 30,80,FD L: JNB TF0(80),L(410B)

450E C2,80 CLR TF0(80)

4510 C2,8C CLR TR0(8C)

4512 22 RET

OUTPUT:

Amplitude in V AMPLITUDE:

TIME:

Time in ms

7.INTERFACING OF INPUT/OUTPUT

ADDRESS OPCODE LABEL: MNEMONICS OPERAND

4100 90,FF,C8 START: MOV DPTR,#FFC8

10 | P a g e
4103 E0 MOVX A,@DPTR

4104 90,FF,C0 MOV DPTR,#FFC0

4107 F0 MOVX @DPTR,A

4108 80,F6 SJMP START(4100)

INPUT:

D7 D6 D5 D4 D3 D2 D1 D0

1 0 1 1 0 0 1 0

OUTPUT:

D7 D6 D5 D4 D3 D2 D1 D0

1 0 1 1 0 0 1 0

LED’S ON =1

LED’S OFF = 0

8.Matrix keyboard interfacing

DEN 0FF04

DENL 04

LATCH 0FF08

LATCHL 08

IOHIGH 0FF

11 | P a g e
ADDRESS OPCODE LABEL: MNEMONICS OPERAND
4100 90,FF,0F MOV DPTR,#FF0F

4103 74,82 MOV A,#82

4105 F0 MOVX @DPTR,A

4106 74, 00 START: MOV A,#00

4108 90,FF,0C MOV DPTR,#FF0C

410B F0 MOVX @DPTR,A

410C 90,FF,0D MOV DPTR,#FF0D

410F E0 MOVX A,@DPTR

4110 54,0F ANL A,#0F

4112
B4,0F,03 CJNE A,#0F,CONT

4115 02,41,06 LJMP START

4118 12,41,1E CONT: LCALL GETDAT

411B 02,41,06 LJMP START

411E 7A,51 GETDAT: MOV R2,#51

4120 7B,00 MOV R3,#00

4122 7C,52 MOV R4,#52

4124 7D,00 MOV R5,#00

4126 74,0E MOV A,#0E

4128 12,4,3B LCALL FIND1

412B 74,0D MOV A,#0D

412D 12,41,3B LCALL FIND1

12 | P a g e
4130 74,0B MOV A,#0B

4132 12,41,3B LCALL FIND1

4135 74,07 MOV A,#07

4137 12,41,3B LCALL FIND1

413A 22 RET

413B 90,FF,0C FIND1: MOV DPTR,#FF0C

413E F0 MOVX @DPTR,A

413F 90,FF,0D MOV DPTR,#FF0D

4142 E0 MOVX A,@DPTR

4143 54,0F ANL A,#0F

4145 FE MOV R6,A

4146 7F,04 MOV R7,#04

4148 8C,83 FFN2: MOV DPH,R4

414A 8D,82 MOV DPL,R5

414C E0 MOVX A,@DPTR

414D 8E,82 MOV DPL,R6

414F B5,82,04 CJNE A,DPL,FFN3

4152 12,41,5F LCALL STOREDAT

4155 22 RET

4156 0B FFN3: INC R3

4157 0D INC R5

4158 DF,EE DJNZ R7,FFNZ

13 | P a g e
415A 7C,52 MOV R4,#52

415C 7D,00 MOV R5,#00

415E 22 RET

415F 12,41,93 STOREDAT: LCALL BSYCHK

4162 90,FF,04 MOV DPTR,#DEN

4165 74,38 MOV A,#38

4167 F0 MOVX @DPTR,A

4168 12,41,93 LCALL BSYCHK

416B 74,01 MOV A,#01

416D F0 MOVX @DPTR,A

416E 12,41,93 LCALL BSYCHK

4171 74,06 MOV A,#06

4173 F0 MOVX @DPTR,A

4174 12,41,93 LCALL BSYCHK

4177 74,0F MOV A,#0F

4179 F0 MOVX @DPTR,A

417A 12,41,93 LCALL BSYCHK

417D 74,80 MOV A,#80

@DPTR,A
417F F0 MOVX

4180 8A,83 MOV DPH,R2

4182 8B,82 MOV DPL,R3

4184 12,41,93 MORE: LCALL BSYCHK

14 | P a g e
4187 74,01 MOV A,#01

4189 75,A0,FF MOV P2,#IOHIGH

418C F2 MOVX @R0,A

418D E0 MOVX A,@DPTR

418E 75,A0,FF MOV P2,#IOHIGH

4191 F3 MOVX @R1,A

4192 22 RET

4193 79,04 BSYCHK: MOV R1,#DENL

4195
78,08 MOV R0,#LATCHL

4197 75,A0,FF MOV P2,#IOHIGH

419A 74,02 MOV A,#02

419C F2 MOVX @R0,A

419D 75,A0,FF BSY: MOV P2,#IOHIGH

41A0 E3 MOVX A,@R1

41A1 54,80 ANL A,#80H

41A3 70,F8 JNZ BSY

41A5 75,A0,FF MOV P2,#IOHIGH

41A8 74,00 MOV A,#00

41AA F2 MOVX @R0,A

41AB 22 RET

DATA TO BE STORED:

15 | P a g e
ADDRESS DATA

5100 30,31,32,33

5104 34,35,36,37

5108 38,39,41,42

510C 43,44,45,46

5200 0E,0D,0B,07

OUTPUT:

INPUT OUTPUT

0 0

1 1

2 2

3 3

4 4

5 5

6 6

7 7

8 8

16 | P a g e
9 9

A A

B B

C C

D D

E E

F F

9.INTERFACING OF SEVEN SEGMENT Display

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 90,FF,OF MOV DPTR,#FF0F

4103 74,80 MOV A,#80

4105 F0 MOVX @DPTR,A

4106 74,12 MOV A,#DATA(12)

4108 90,FF,0C MOV DPTR,#FF0C

410B F0 MOVX @DPTR,A

410C 80,FE HLT: SJMP HLT

OUTPUT

17 | P a g e
F B

G
E C

dp

8 4 2 1 8 4 2 1

dp G F E D C B A
DATA OUTPUT
0 0 0 1 0 0 1 0

12 5

1 2

10.TRAFFIC LIGHT CONTROLLER

CONTRL 0FF0F

PORTA 0FF0C

PORTB 0FF0D

PORTC 0FF0E

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 74,80 MOV A,#80

4102 90,FF,0F MOV DPTR,#CONTL

4105 F0 MOVX @DPTR,A

4106 7C,04 START: MOV R4,#04

4108 90,41,9B MOV DPTR,#LOOK1

18 | P a g e
410B AA,82 MOV R2,DPH

410D AB,82 MOV R3,DPL

410F 90,41,8F MOV DPTR,#LOOK

4112 A8,83 MOV R0,DPH

4114 A9,82 MOV R1,DPL

4116 E0 GO: MOVX A,@DPTR

4117 A8,83 MOV R0,DPH

4119 A9,82 MOV R1,DPL

411B 90,FF,0C MOV DPTR,#PORTA

411F 09 INC R1

4120 88,83 MOV DPH,R0

4122 89,92 MOV DPL,R1

4124 E0 MOVX A,@DPTR

4125 A8,83 MOV R0,DPH

4127 A9,82 MOV R1,DPL

4129 90,FF,0D MOV DPTR,#PORTB

412C F0 MOVX @DPTR,A

412D 09 INC R1

412E 88,83 MOV DPH,R0

4130 89,92 MOV DPL,R1

4132 E0 MOVX A,@DPTR

4133 A8,83 MOV R0,DPH

19 | P a g e
4135 A9,82 MOV R1,DPL

4137 90,FF,0E MOV DPTR,#PORTC

413A F0 MOVX @DPTR,A

413B 09 INC R1

413C 12,41,75 LCALL DELAY

413F 8A,83 MOV DPH,R2

4141 8B,82 MOV DPL,R3

4143 E0 MOVX A,@DPTR

4144 AA,83 MOV R2,DPH

4146 AB,82 MOV R3,DPL

4148 90,FF,0C MOV DPTR,#PORTA

414B F0 MOVX @DPTR,A

414C 0B INC R3

414D 8A,83 MOV DPH,R2

414F 8B,82 MOV DPL,R3

4151 E0 MOVX A,@DPTR

4152 AA,83 MOV R2,DPH

4154 AB,82 MOV R3,DPL

4156 90,FF,0D MOV DPTR,#PORTB

4159 F0 MOVX @DPTR,A

415A 0B INC R3

415B 8A,83 MOV DPH,R2

20 | P a g e
415D 8B,82 MOV DPL,R3

415F E0 MOVX A,@DPTR

4160 AA,83 MOV R2,DPH

4162 AB,82 MOV R3,DPL

4164 90,FF,0E MOV DPTR,#PORTC

4167 F0 MOVX @DPTR,A

4168 0B INC R3

4169 12,41,82 LCALL DELAY1

416C 88,83 MOV DPH,R0

416E 89,82 MOV DPL,R1

4170 DC,A4 DJNZ R4,GO

4172 12,41,06 LCALL START

4175 7D,12 DELAY: MOV R5,#12

4177 7E,FF L3: MOV R6,#0FF

4179 7F,FF L2: MOV R7,#0FF

417B DF,FE L1: DJNZ R7,L1

417D DE,FA DJNZ R6,L2

417F DD,F6 DJNZ R5,L3

4181 22 RET

4182 7D,12 DELAY1: MOV R5,#12

4184 7E,FF L6: MOV R6,#0FF

4186 7F,FF L5: MOV R7,#0FF

21 | P a g e
4188 DF,FE L4: DJNZ R7,L4

418A DE,FA DJNZ R6,L5

418C DD,F6 DJNZ R5,L6

418E 22 RET

418F 44,27,12 LOOK: DB 44,27,12

4192 92,2B,10 DB 92,2B,10

4195 84,9D,10 DB 84,9D,10

4198 84,2E,48 DB 84,2E,48

419B 48,27,12 DB 48,27,12

419E 92,4B,10 DB 92,4B,10

41A1 84,9D,20 DB 84,9D,20

41A4 04,2E,49 DB 04,2E,49

22 | P a g e
11.INTERFACING OF ANALOG TO DIGITAL CONVERSION
(ADC)

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 90,FF,C8 MOV DPTR,#FFC8

4103 74,10 MOV A,#10

4105 F0 MOVX @DPTR,A

4106 74,18 MOV A,#18

4108 F0 MOVX @DPTR,A

4109 74,10 MOV A,#10

410B F0 MOVX @DPTR,A

410C 80,FE HLT: SJMP HLT

OUTPUT:

ANALOG
DIGITAL OUTPUT HEX
INPUT
VALUE
VOLTAGE
D7 D6 D5 D4 D3 D2 D1 D0
(V)
0.5 0 0 0 1 1 0 1 0 1A

1 0 0 1 1 0 0 1 1 33

1.5 0 1 0 0 1 1 0 1 4D

23 | P a g e
2 0 1 1 0 0 1 1 0 66

2.5 0 1 1 1 1 1 1 1 7F

3 1 0 0 1 1 0 0 1 99

3.5 1 0 1 1 0 0 1 0 B2

4 1 1 0 0 1 1 0 0 CC

12.INTERFACING OF DIGITAL TO ANALOG CONVERSION


(DAC)

ADDRESS OPCODE LABEL: MNEMONICS OPERAND

4100 90,FF,C0 MOV DPTR,#FFC0

4103 74,00 MOV A,#00

4105 F0 LOOP: MOVX @DPTR,A

4106 04 INC A

4107 80,FC SJMP LOOP

OUTPUT:

Amplitude(V)

Time(ms)

24 | P a g e
AMPLITUDE=

TIME=

13.INTERFACING OF STEPPER MOTOR

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 90,45,00 START: MOV DPTR,#4500

4103 78,04 MOV R0,#04

4105 E0 JO: MOVX A,@DPTR

4106 C0,83 PUSH DPH

4108 C0,82 PUSH DPL

410A 90,FF,C0 MOV DPTR,#FFC0

410D 7A,04 MOV R2,#04

410F 79,0F MOV R1,#0F

4111 7B,0F DLY1: MOV R3,#0F

4113 DB,FE DLY: DJNZ R3,DLY(4113)

4115 D9,FA DJNZ R1,DLY1(4111)

4117 DA,F8 DJNZ R2,DLY1(4111)

4119 F0 MOVX @DPTR,A

411A D0,82 POP DPL

411C D0,83 POP DPH

25 | P a g e
411E A3 INC DPTR

411F D8,E4 DJNZ R0,JO(4105)

4121 80,DD SJMP START(4100)

FOR CLOCKWISE DIRECTION:

ADDRESS DATA

4500 0A

4501 06

4502 05

4503 09

FOR ANTI-CLOCKWISE DIRECTION(COUNTER CLOCKWISE)

ADDRESS DATA

4500 09

4501 05

4502 06

4503 0A

26 | P a g e
14.INTERFACING OF DC MOTOR

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 74,FF START: MOV A,#FF

4102 90,FF,C0 MOV DPTR,#FF0C

4105 F0 MOVX @DPTR,A

4104 80,FE SJMP START(4100)

15. SENDING DATA THROUGH SERIAL PORT

TRANSMITTER SIDE:

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 75,89,01 MOV TMOD,#01

4103 75,8C,FD MOV TH0,#FD

4106 75,8A,00 MOV TL0,#00

4109 75,98,50 MOV SCON,#50

410C D2,8C SETB TR0(8C)

410E 74,45 MOV A,#45(DATA)

4110 F5,99 MOV SBUF,A

27 | P a g e
4112 30,99,FD L: JNB TF0(80),L(4112)

4115 C2,8C CLR TR0(8C)

4117 80,FE HLT: SJMP HLT

RECEIVER SIDE:

ADDRESS OPCODE LABEL: MNEMONICS OPERAND


4100 75,89,01 MOV TMOD,#01

4103 75,8C,FD MOV TH0,#FD

4106 75,8A,00 MOV TL0,#00

4109 75,98,50 MOV SCON,#50

410C 30,99,FD L: JNB TF0(80),L(410C)

410F D2,8C SETB TR0(8C)

4111 E5,99 MOV A,SBUF

4114 90,45,00 MOV DPTR,#4500

4115 F0 MOVX @DPTR,A

4117 C2,8C CLR TR0(8C)

4119 80,FE HLT: SJMP HLT

OUTPUT:
ADDRESS DATA

4500 45

TRANSMITTER RECEIVER

DATA:45 ADDRESS:4500 28 | P a g e

OUTPUT DATA:45
29 | P a g e

You might also like