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.