Study Of 8086

  • June 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Study Of 8086 as PDF for free.

More details

  • Words: 4,891
  • Pages: 27
Ex.No.2 ADDITION OF TWO 8 BIT NUMBERS Aim: To write a program for adding the given two 8- bit number and store the result in the memory . Specifications: Microprocessor :Intel 8085 Operating Frequency :3.012MHz User RAM Area :4100-5FFF Algorithm: 1. Load the accumulator by data in the address 4200H 2. Move the contents of the accumulator to B Register 3. Load the accumulator by data in the address 4201H 4. Clear C Register 5. Add the content of the accumulator to B Register content 6. If no carry jump to loop 7. Increment C Register 8. Shift the content of the accumulator to the location 4203 9. Move the contents of the C Register to accumulator. 10. Shift the content of the accumulator to the location 4204 11. Hault the current Program

Program: ADDRESS

HEX CODE

LABEL

MNEMONICS

OPERAND

4100

3A,00,42

LDA

4200

4103

47

MOV

B,A

4104

3A,01,42

LDA

4201

4107

0E,00

MVI

C,00

4109

80

ADD

B

410A

D2,0E,41

JNC

loop

410D

0C

INR

C

410E

32,02,42

STA

4202

Loop 4111

79

MOV

A,C

4112

32,03,42

STA

4203

4115

76

HLT

COMMENTS

Load the accumulator with data in 4200 Move the contents of the accumulator to B Register Load the accumulator with data in 4201 Clear C Register Add the content of the B Register to accumulator. If no carry jump to loop Increment C Register Shift the content of the accumulator to the location 4202 Move the contents of the C Register to the accumulator. Shift the content of the accumulator to the location 4203 Stop the current Program

Procedure: 1. Key in opcode from the address specified 2. Enter data to 4200, 4201. 3. Execute the program and check the result at 4202 and 4203. Result: Thus the 8-bit addition with carry is performed. CONTENT INPUT FIELD

ADDRESS FIELD

DATA FIELD

4200 4201

04H 09H

4202 4203

0DH 00H

OUTPUT FIELD

Ex.No.3 ADDITION OF TWO 16 BIT NUMBERS Aim: To write an assembly language program to add the given two 16- bit number with carry and store the result in the memory . Specifications: Microprocessor :Intel 8085 Operating Frequency :3.012MHz User RAM Area :4100-5FFF Algorithm: 1. Load the LSB of first data accumulator 2. Move it to B Register 3. Load the LSB of the second data in accumulator 4. Add the content of the accumulator and B Register. 5. Store the result in the given location 6. Load the MSB of the first data in the accumulator. 7. Move it to B Register 8. Load the MSB of the second data in accumulator 9. Add the content if no carry jump to address specified 10. If carry exist increment C Register 11. Shift the content of the accumulator to the desired location 12. Move the contents of the C Register to accumulator. 13. Shift the content of the accumulator to the desired location 14. Hault the current Program

Program: ADDRESS

HEX CODE

LABEL

MNEMONICS

4100

3A,00,42

LDA

4200

Load the accumulator with data in 4200

4103

47

MOV

B,A

4104

3A,02,42

LDA

4202

4107

80

ADD

B

4108

32,04,42

STA

4204

Move the contents of the accumulator to B Register Load the accumulator with data in 4202 Add the content of the B Register to accumulator. Store the content of the A to the location 4204

410B

0E,00

MVI

C,00

410D

3A,01,42

LDA

4201

4110

47

MOV

B,A

4111

3A,03,42

LDA

4203

4114

88

ADC

B

4115 4118 4119

D2,19,41 0C 32,05,42

JNC INR STA

Loop C 4205

411C

79

MOV

A,C

411D

32,06,42

STA

4206

411E

76

HLT

Loop

OPERAND

COMMENTS

Clear C Register Load the content of the accumulator to the location Move the contents of the accumulator to B Register Load the content of A to the location 4203 Add B register with Accumulator and carry If no carry Jump to Loop Increment C register Store the content of A to the location 4205 Move the content of C to Accumulator Store the content of A to the location 4206 Stop the current Program

Procedure: 1. Key in opcode from the address specified 2. Enter data to 4200, 4203 3. Execute the program and check the result at the specified location Result: Thus the 16-bit addition with carry is performed. CONTENT ADDRESS FIELD INPUT FIELD 4200

DATA FIELD

4201 4202 4203

15H A0H 75H B1H

4204 4205 4206

8AH 51H 01H

OUTPUT FIELD

Ex.No. 4 SUBTRACTION OF 8 BIT NUMBERS Aim: To write an assembly language program to subtract the given 8 bit number and to store the result in the memory . Specifications: Microprocessor :Intel 8085 Operating Frequency :3.012MHz User RAM Area :4100-5FFF Algorithm: 1. Load the accumulator by data in the address 4200H 2. Move the contents of the accumulator to B Register 3. Load the accumulator by data in the address 4201H 4. Clear C Register 5. Subtract the content of the accumulator from B Register content 6. If no carry jump to loop 7. Increment C Register 8. Shift the content of the accumulator to the location 4203 9. Move the contents of the C Register to accumulator. 10. Shift the content of the accumulator to the location 4204 11. Hault the current Program

Program: ADDRESS

HEX CODE

LABEL

MNEMONICS OPERAND

4100

3A,00,42

LDA

4200

4103

47

MOV

B,A

4104

3A,01,42

LDA

4201

4107

0E,00

MVI

C,00

4109

90

SUB

B

410A

D2,11,41

JNC

Loop

410D 410E 410F 4111

0C 2F C6,01 32,02,42

INR CMA ADI STA

C A 01H 4202

Loop 4114

79

MOV

A,C

4115

32,03,42

STA

4203

4118

76

HLT

COMMENTS

Load the accumulator with data in 4200 Move the contents of the accumulator to B Register Load the accumulator with data in 4201 Clear C Register Subtract the content of the B Register to accumulator. If no carry jump to loop Increment C Register Complement A register Add immediately 01H Shift the content of the accumulator to the location 4202 Move the contents of the C Register to the accumulator. Shift the content of the accumulator to the location 4203 Stop the current Program

Procedure: 1. Key in opcode from the address specified 2. Enter data to 4200, 4201. 3. Execute the program and check the result at 4202 and 4203. Result: Thus the 8-bit Subtraction is performed. CONTENT INPUT FIELD

ADDRESS FIELD

DATA FIELD

4200 4201

AAH BBH

4202 4207

EFH 01H

OUTPUT FIELD

Ex.No. 5 BCD SUBTRACTION Aim: To write an assembly language program to subtract the given BCD numbers and to store the result in the memory. Specifications: Microprocessor :Intel 8085 Operating Frequency :3.012MHz User RAM Area :4100-5FFF Algorithm: 1. Load the accumulator by data in the address 4200H 2. Move the contents of the accumulator to B Register 3. Load the accumulator by data in the address 4201H 4. Move the contents of the accumulator to E Register 5. Load Immediate 99 to find 9’s Complement 6. Subtract the content of the E Register content with accumulator 7. Add 01H with Accumulator 8. Add the content of B register with Accumulator 9. Adjust Accumulator content to Decimal 10. Store the result 11. Hault the current Program

Program: ADDRESS

HEX CODE

LABEL

MNEMONICS OPERAND

4100

3A,00,42

LDA

4200

4103

47

MOV

B,A

4104

3A,01,42

LDA

4201

4107

4F

MOV

C,A

4108

3E,99

MVI

A,99

410A

91

SUB

C

410B 410D

C6,01 80

ADI ADD

01 B

410E 410F

27 32,02,42

DAA STA

4202

4112

76

HLT

COMMENTS

Load the accumulator with data in 4200 Move the contents of the accumulator to B Register Load the accumulator with data in 4201 Move the contents of the accumulator to C Register Move the value to Accumulator Subtract the content of the C Register to accumulator. Add immediate value 01 Add the value of accumulator to C Convert it to BCD value Store the content of the accumulator to the location 4202 Stop the current Program

Procedure: 1. Key in opcode from the address specified 2. Enter data to 4200, 4201. 3. Execute the program and check the result at 4202 Result: Thus the BCD Subtraction is performed. CONTENT

ADDRESS FIELD

INPUT FIELD

DATA FIELD

4200 4201

25H 50H

4202

25H

OUTPUT FIELD

Ex.No.6 8 – BIT MULTIPLICATION Aim: To write a program for multiplying the given two 8- bit number and store the result in the memory. Specifications: Microprocessor :Intel 8085 Operating Frequency :3.012MHz User RAM Area :4100-5FFF Algorithm: 1. Load the accumulator by data in the address 4200H 2. Move the contents of the accumulator to B Register 3. Load the accumulator by data in the address 4201H 4. Move the contents of the accumulator to C Register 5. Clear C Register and Accumulator 6. Add the content of the accumulator to B Register content 7. If no carry jump to loop 8. Increment D Register 9. Decrement C Register 10. Jump on no zero to loop1 11. Store the content of the accumulator to the desired location 12. Move the contents of the D Register to accumulator 13. Shift the content of the accumulator to the desired location 14. Hault the current Program

Program: ADDRESS

HEX CODE

LABEL

4100

3A,00,42

LDA

4200

4103

47

MOV

B,A

4104

3A,01,42

LDA

4201

4107

4F

MOV

C,A

4108 4109 410B

AF 16,00 80

XRA MVI ADD

A D,00 B

410C

D2,10,41

JNC

Loop

410F

14

INR

D

4110 4111

0D C2,0B,41

DCR JNZ

C Loop1

4114

32,02,42

STA

4202

4117

7A

MOV

A,D

4118

32,03,42

STA

4203

411B

76

HLT

Loop1

Loop

MNEMONICS OPERAND

COMMENTS

Load the accumulator with data in 4200 Move the contents of the accumulator to B Register Load the accumulator with data in 4201 Move the contents of the accumulator to C Register Clear A register Clear D register Add the contents of accumulator to B register Jump to given location if there is no carry Increment the D register Decrement the C register Jump to given location if it is not zero Store the content of A to the location 4202 Move the contents of D register to accumulator Store the content of A to the location 4203 Stop the current Program

Procedure: 1. Key in opcode from the address specified 2. Enter data to 4200, 4201. 3. Execute the program and check the result at 4202 and 4203. Result: Thus the 8-bit multiplication is performed. CONTENT

ADDRESS FIELD

INPUT FIELD

DATA FIELD

4200 4201

04H 03H

4202 4203

0CH 00H

OUTPUT FIELD

Ex.No.7 BCD MULTIPLICATION Aim: To write a program for multiplying the given two 8-bit BCD number and store the result in the memory. Specifications: Microprocessor :Intel 8085 Operating Frequency :3.012MHz User RAM Area :4100-5FFF Algorithm: 1. Load the accumulator by data in the address 4200H 2. Move the contents of the accumulator to B Register 3. Load the accumulator by data in the address 4201H 4. Move the contents of the accumulator to C Register 5. Clear D Register and Accumulator 6. Add the content of the accumulator to B Register content 7. Adjust for decimal 8. If no carry jump to loop 9. Increment D Register 10. Decrement C Register 11. Jump on no zero to loop1 12. Store the content of the accumulator to the desired location 13. Move the contents of the D Register to accumulator 14. Store the content of the accumulator to the desired location 15. Hault the current Program

Program: ADDRESS

HEX CODE

4100

LABEL

MNEMONICS

OPERAND

3A,00,42

LDA

4200

4103

47

MOV

B,A

4104

3A,01,42

LDA

4201

4107

4F

MOV

C,A

4108 4109

AF 16,00

XRA MVI

A D,00

410B

80

ADD

B

410C

27

DAA

410D

D2,11,41

JNC

Loop

4110 4111 4112 4115

14 0D C2,0B,41 32,02,42

INR DCR JNZ STA

D C Loop1 4202

4118

7A

MOV

A,D

4119

32,03,42

STA

4203

411C

76

HLT

Loop1

Loop

COMMENTS

Load the accumulator with data in 4200 Move the contents of the accumulator to B Register Load the accumulator with data in 4201 Move the contents of the accumulator to C Register Clear A register Clear D register Add the contents of B register to A Decimal adjust the contents of accumulator Jump to given location if there is no carry Increment the D register Decrement the C register Jump on no zero to Loop1 Store the content of A to the location 4202 Move the contents of the to D Register to accumulator Store the content of A to the location 4202 Stop the current Program

Procedure: 1. Key in opcode from the address specified 2. Enter data to 4200, 4201. 3. Execute the program and check the result at 4202 and 4203. Result: Thus the 8-bit BCD multiplication is performed. CONTENT

ADDRESS FIELD

INPUT FIELD

DATA FIELD

4200 4201

04H 03H

4202 4203

12H 00H

OUTPUT FIELD

EX.NO.8 8 BIT DIVISION Aim: To write a program for dividing the given 8- bit number and store the result in the memory Specifications: Microprocessor :Intel 8085 Operating Frequency :3.012MHz User RAM Area :4100-5FFF Algorithm: 1. Load the accumulator by data in the address 4200H 2. Move the contents of the accumulator to C Register 3. Load the accumulator by data in the address 4201H 4. Clear D Register 5. Subtract B Register 6. Increment C Register and compare B register with accumulator 7. If no carry jump to loop 8. Store the content of the accumulator to the location 4203 9. Move the contents of the D register to accumulator. 10. Store the content of the accumulator to the location 4204 11. Hault the current Program

Program: ADDRESS

HEX CODE

4100

LABEL

MNEMONICS

OPERAND

COMMENTS

3A,00,42

LDA

4200

4103

48

MOV

C,A

4104

3A,01,42

LDA

4201

4107 4109

16,00 91

MVI SUB

D,00 C

Load the accumulator with data in 4200 Move the contents of the accumulator to C Register Load the accumulator with data in 4201 Clear D Register Subtract the content of the C Register to accumulator.

410A

14

INR

D

410B 410C 410F

B9 D2,09,41 32,02,42

CMP JNC STA

C Loop 4202

4111

7A

MOV

A,D

4112

32,03,42

STA

4203

4115

76

HLT

Loop

Increment D Register Compare with C reg If no carry jump to loop Store the content of A to the location 4202 Move the contents of the D Register to the A Store the content of A to the location 4203 Terminate the program

Procedure: 1. Key in opcode from the address specified 2. Enter data to 4200, 4201. 3. Execute the program and check the result at 4202 and 4203. Result: Thus the 8-bit Division is performed. CONTENT INPUT FIELD

ADDRESS FIELD

DATA FIELD

4200 4201

02H 70H

4202 4208

00H 35H

OUTPUT FIELD

EX.NO.9 BLOCK MOVE AND REVERSING AN ARRAY OF ELEMENTS Aim: To write an assembly language program to perform block move and reversing an array of elements. Specification: Microprocessor Operating frequency User RAM area

: Intel 8085 : 3.102 MHZ : 4100-5FFFH

Algorithm: Block Move: 1. 2. 3. 4. 5. 6. 7. 8. 9.

Move immediately the data 05H to the register C. Load the HL-register pair with data. Load the DE-register pair with data. Move the contents of memory to the accumulator. Store the content of the DE register pair. Increment the HL-register pair. Decrement the register-C. If no zero jump to the loop. Stop the program.

Reversing An Array Of Elements: 1. Load the HL register pair with some data in 4200 2. Load the BC register pair in 4300 3. Move immediately the data 05H to the register D. 4. Move the C-register value to the accumulator. 5. Add the content of the accumulator with D-register. 6. Move the accumulator content to the C-register. 7. Decrement the content of the BE-register pair. 8. Move the content of M to the accumulator. 9. Store the content of the BC-register pair. 10. Increment the content of the HL-register pair. 11. Decrement the content of the BC-register pair. 12. Decrement the content of D-register. 13. If no zero jump to the loop. 14. Stop the process.

Program: Block Move: ADDRESS

HEXCODE

4100

LABEL

MNEMONIC

OPERAND

COMENTS

0E,05

MVI

C,05

4102

21.00,42

LXI

H,4200

4105

01,00,43

LXI

D,4300

4108

7E

MOV

A,M

4109

12

STAX

D

410A

23

INX

H

410B

13

INX

D

410C 410D 4110

0D C2,08,41 76

DCR JNZ HLT

C Loop

Move immediately the data 05H to the register C. Load the HL-register pair with data. Load the DE-register pair with data. Move the contents of memory to the accumulator. Store the content of the DE register pair. Increment the HL-register pair. Increment the DE-register pair. Decrement the register-C. If no zero jump to the loop. Stop the program.

Loop

Reversing An Array Of Elements: ADDRESS

HEXCODE

LABEL

MNEMONICS

OPERAND

4100

21,00,42

LXI

H,4200

4103 4106

D1,00,43 16,05

LXI MVI

B,4300 D,05

4108

79

MOV

A,C

4109

82

ADD

D

410A

4F

MOV

C,A

410B

0B

DCX

B

410C

7E

MOV

A,M

410D

02

STAX

B

410E

23

INX

H

410F

0B

DCX

B

4110

15

DCR

D

4111

62,0C,41

JNC

Loop

4114

76

HLT

Loop

COMMENTS

Load the HL pair with some data in 4200 Load the BC pair in 4300 Move immediately the data 05H to D register Move the C-register value to the A Add the content of D with Accumulator Move the accumulator content to the C-register Decrement the content of the BE-register pair Move the content of M to the accumulator Store the content of the BC-register pair Increment the content of the HL-register pair Decrement the content of the BC-register pair. Decrement the content of D-register. If no carry jump to the loop. Stop the process.

Procedure: Block Move and Reversing

An Array Of Element:

1. Key in opcode from the specified location. 2. Enter the data into the memory and execute the program. 3. Check for the result and stop the program. Reversing An Array Of Elements: Result:

Thus block moving and reversing an array of element is executed successfully and the output is verified. Block Move: CONTENT

ADDRESS FIELD

INPUT FIELD

DATA FIELD

4200 4201 4202 4203 4204

01H 02H 03H 04H 05H

4300 4301 4302 4303 4304

01H 02H 03H 04H 05H

OUTPUT FIELD

Reversing An Array Of Elements: CONTENT ADDRESS FIELD INPUT FIELD 4200

OUTPUT FIELD

DATA FIELD

4201 4202 4203 4204

01H 02H 03H 04H 05H

4300 4301 4302 4303 4304

05H 04H 03H 02H 01H

Ex.No.10 ASCENDING ORDER AND DESCENDING ORDER Aim: To write an assembly language program to perform ascending order and descending order. Specification: Microprocessor : INTEL 8085 Operating frequency : 3.102 MHZ User RAM area : 4100-5FFFH Algoritham: Ascending Order and Descending Order: 1. 2. 3. 4. 5. 6. 7.

Move immediately the data 04H to C-register. Load the HL-register pair in the location 4200H Move immediately the data 03H to D-register Move the content if M to the accumulator Increment the content of Hl register pair Compare the content of M register with accumulator. If carry is present jump to loop for ascending order and jump on no carry to loop for descending order. 8. Move the content of M to the B-register 9. Move the accumulator content to M-register pair 10. Decrement the content of the HL-register pair. 11. Move the content of B-register to M register. 12. Increment the HL-register pair 13. Decrement the D-register. 14. If no zero jump to the loop 15. Decrement the content of C-register. 16. If no zero jump to the loop 17. Stop the program.

Program: ADDRESS

HEXCODE

4100

0E,04

4102

21,00,42

4105

16,03

4107

7E

4108

LABEL

MNEMONICS

OPERAND

COMMENTS

MVI

C,04

LXI

H,4200

MVI

D,03

MOV

A,M

23

INX

H

4109

BE

CMP

M

410A

DA,12,41

JC

Loop1

410D

46

MOV

B,M

410E

77

MOV

M,A

410F

2B

DCX

H

4110

70

MOV

M,B

4111 4112 4113 4116

23 15 C2,07,41 0D

INX DCR JNZ DCR

H D Loop2 C

4117

C2,02,41

JNZ

Loop3

411A

76

HLT

Move immediately 04H to C-register. Load the HL-register pair in the location 4200 Move immediately the data 03H to D-register Move the content if M to the accumulator Increment the content of HL register pair Compare contents of M with accumulator. If carry is present jump to Loop1 Move the content of M to the B-register Move the accumulator content to M-register pair Decrement the content of the HL-register pair. Move the content of B to M register. Increment the HL pair Decrement the D reg. If no jump to the Loop2 Decrement the content of C-register. Jump on zero to the loop3 Stop the program.

Loop3

Loop2

Loop1

Program: ADDRESS

HEXCODE

LABEL

MNEMONICS

OPERAND

COMMENTS

4100 4102 4105

0E,04 21,00,42 16,03

Loop3

MVI LXI MVI

C,04 H,4200 D,03

4107

7E

Loop2

MOV

A,M

4108

23

INX

H

4109

BE

CMP

M

410A 410D

D2,12,41 46

JNC MOV

Loop1 B,M

410E

77

MOV

M,A

410F

2B

DCX

H

Move the 04H to C-register Load the HL-register pair Move immediately the data 03H to D-register Move the content if M to the accumulator Increment the content of HL register pair Compare the M with accumulator. If no carry jump to loop1 Move the content of M to the B-register Move the accumulator content to M-register Decrement the content of

4110

70

MOV

M,B

4111

23

INX

H

4112

15

DCR

D

4113 4116

C2,07,41 0D

JNZ DCR

Loop2 C

4117 411A

C2,02,41 76

JNZ HLT

Loop3

Loop1

the HL-register pair. Move the content of Bregister to M register. Increment the content of HL-register pair Decrement the content of D-register. Jump on no zero to loop2 Decrement the content of C-register. Jump on no zero to loop3 Stop the program.

Procedure: Ascending Order And Descending Order: 1. Key in opcode from the specified location. 2. Enter the data into the memory and execute the program. 3. Check for the result and stop the program. Result: Thus the ascending order and descending order are executed successfully and the output is verified Ascending Order: CONTENT INPUT FIELD

OUTPUT FIELD

ADDRESS FIELD

DATA FIELD

4200 4201 4202 4203

06H 01H 08H 02H

4200 4201 4202 4203

01H 02H 06H 08H

Descending Order: CONTENT INPUT FIELD

OUTPUT FIELD

ADDRESS FIELD

DATA FIELD

4200 4201 4202 4203

05H 01H 07H 03H

4200 4201 4202 4203

07H 05H 03H 01H

Ex.No.11 TRAFFIC CONTROLLER Aim: To write an assembly language program to do traffic signal controller and store result in memory. Specification: Microprocessor : INTEL 8085 Operating frequency : 3.102 MHZ User RAM area : 4100-5FFFH Algorithm: 1. Load the HL-register pair, move the data OC to C-register. 2. Move the pair to A-register, out the counter 3. Increment HL pair, move HL pair to A-register. 4. Out the port A, increment HL pair. 5. Move the HL pair to A-register, out port B, call delay. 6. Increment HL pair, decrement C register. 7. If no jump to loop1, jump to start. 8. Push B, initialize 05 to C-register. 9. Move D-register to accumulator 10. OR the E-register 11. If no jump to loop, decrement C register. 12. If no jump to loop, pop the B-register. 13. Return.

Program: ADDRESS

HEXCODE

LABEL

MNEMONICS

OPERAND

COMMENTS

4100 4103 4105

21,00,45 OE,OC 7E

Start

LXI MVI MOV

H,4500 C,OC A,M

OUT INX MOV

CNT H A,M

D3,OC 23 7E

OUT INX MOV

A H A,M

410E 4110 4113 4114 4115 4118 411B 411C 411E 4121 4122

D3,OD CD,1B,41 23 OD C2,09,41 C3,00,41 C5 OE,05 11,FF,FF 1B 7A

OUT CALL INX DCR JNZ JMP PUSH MVI LXI DCX MOV

B Delay H C LOOP1 Start B C,05 D,FF,FF D A,D

4123 4124 4127 4128 412B 412C

B3 C2,21,41 OD C2,1E,41 C1 C9

ORA JNZ DCR JNZ POP RET

E Loop2 C Loop3 B

Load the HL-register pair Move data OC to C register Move HL contents to accumulator Count the value Increment HL pair Move the content of M to A-register Out A port Increment HL register pair Move the content of M to accumulator Out B port Call the Delay Increment HL pair Decrement the C register If no zero jump to loop Jump to Start Push B register Move data 05 to C register Load the DE-pair Decrement D-register Move D-register to accumulator OR the E-register If no zero jump to Loop2 Decrement C-register If no zero jump to Loop3 Pop the B-register Return

4106 4108 4109

D3,OF 23 7E

410A 410C 410D

Loop1

Delay Loop3 Loop2

Procedure: 4. Key in opcode from the specified location. 5. Enter the data in 4500 to 4508. Result: Thus the traffic signal controller is carried out. CONTENT Input field

ADDRESS FIELD 4500

DATA FIELD 80,1A,A1,64, A4,81,5A,64,54

Ex.No.12 STUDY OF 8086 MICROPROCESSOR Aim: To study about the operation of 8086 Microprocessor Specification: 1. Processor, Clock Frequency: Intel 8086/8088CPU at 5/4.77 MHz Clock 2. Memory: MONITOR EPROM

: F000:0000-3FFF for 16K

EPROM EXPANSION

: F000:0000-1FFF for 64K

SYSTEM RAM

: 0000:1000-3FFF for 16K

SYSTEM RAM EXPANSION

: 0000:1000-FFFF for 64K

INTERRUPT VECTORS

: 0000:0000-03FF

STACK/DATA AREA

: 0000:0400-0FFF

(MONITOR,ASM/DSM,EDITOR) 3. PERIPHERALS: PARALLEL I/O : 48 I/O lines using two numbers of 8255 SERIAL

: one number of RS232C – Serial Interface using 8251A USART

Timer

: 3 Channel 16- Programmable Timer 8253. Channel 0 used as baud rate generator for the Serial Port

4. DISPLAY

: 16*2 LCD DISPLAY

5. KEYBOARD

: IBM PC-AT KEYBOARD

6. AUDIO CASSETTE INTERFACE WITH FILE MANAGEMENT 7. SYSTEM POWER CONSUMPTION: +5V : 1.5 Amps 8. POWER SUPPLY SPECIFICATIONS: Model

: SMPS-01

Mains

: 230V AC at 50Hz

Input

: 230V AC at 50H

Output

:

+5Volts, 3 Amps regulated +12Volts, 250 mA regulated -12Volts, 250 mA regulated +30Volts, 250mA regulated

9. PHYSICAL CHARACTERISTICS: M -86/88 LCD PCB

: 830mm*680mm

10. Bus Expansion: A new concept of VXT_Bus has been incorporated in M – 86/88 LCD which facilitates addition of extra hardware on to M-86/88 LCD. An unlimited number of Add-On Boards can be added to this expansion bus. All buffered address, data and control signals are brought out to this bus. The trainer provision for one VXT_Bus connectors. COMMAND KEY FUNCTION MEMORY: RES

: This RES key allows the user to terminate any activity and return the M- 86/88

LCD to an initialized state. When pressed, message appears in the display for a few seconds and then the monitor will come to the command prompt “TECH-8086” only after this prompt is displayed, the commands will be accepted. INT

: The INT key allows the user to interrupt any activity and return to the

command prompt. Substitute Memory Command: Function: This command is used to examine the contents of selected memory location and modify the RAM contents if desired. Syntax: (i) #SB



#SB

-

Substitute byte command word



-

User can enter the address in segment



-

Keyboard Return

(ii) #SW



#SW

-

Substitute Word command word



-

address either segment



-

Keyboard Return

R

-

Register view/modify command word



-

Carriage Return

Register Command: Syntax: #R



Go and Execute Command: Function: The Go and Execute command is used to run a program. This command transfers control of the 8086A CPU from the monitor program to user programs. Syntax: #GO #GO

-

Go command



-

16 bit address



-

Carriage Return

Go and Execute Command with break point: Function: This command executes a block of program whose start and end address are specified. Syntax: #GO <Start ADDR><End ADDR> #GO

-

Go with break command

<start ADDR>

-

Program start address

<End ADDR>

-

Program end address



-

Carriage Return

Trace command: Function: This command helps the user to execute programs in steps i.e Instruction. This command will be very helpful while debugging programs. Syntax: #TR #TR

-

Trace command word



-

Program starting address



-

Carriage Return

Fill command: Function: This command permits a block of RAM memory to be filled with desired data byte. Syntax: (i) #FB

<Start ADDR><End ADDR>

# FB

-

Fill byte command word

<Start ADDR >

-

Block starting address

<End ADDR>

-

Block ending address



-

Word data to be filled



-

Carriage Return

(ii) #FW

<Start ADDR><End ADDR>

# FW

-

Fill Word command word

<Start ADDR >

-

Block starting address

<End ADDR>

-

Block ending address



-

Word data to be filled



-

Carriage Return

Insert command: Function: This command inserts specified file bytes in the desired memory location. Syntax: #ISB # ISB

-

Insert Byte command Prompt



-

Insert address



-

End address of the block



-

Carriage Return

Delete command: Function: This command deletes a block of bytes from a memory. Syntax: #DEB

<Start ADDR><End ADDR>

# DEB

-

Delete Byte command Word

<start ADDR>

-

Delete block start address

<End ADDR>

-

Delete block End address



-

Program End Address



-

Carriage Return

Input command: Function: This command Inputs data from the desired Port.

Syntax: #IB



# IB

-

Input Byte command Word



-

Valid Input address



-

Carriage Return

Output command: Function: This command Outputs data to the desired Port. Syntax: #OB #OB

-

Output Byte command Word



-

Valid Output address



-

Output Data



-

Carriage Return

RESULT: Thus, the operation of 8086 microprocessor is studied.

Related Documents

Study Of 8086
June 2020 2
8086
November 2019 32
8086
May 2020 14
8086
September 2019 28
8086
June 2020 7
Pin Diagram Of 8086
June 2020 0