department of electronics and … · 3. 8 bit multiplication. address location label mnemonics 3000...
TRANSCRIPT
MICRO PROCESSOR AND MICRO CONTROLLER
LABORATORY MANUAL
DEPARTMENT OF ELECTRONICS AND COMMUNICATION
ENGINEERING
NRI INSTITUTE OF TECHNOLOGY (Approved by AICTE, New Delhi: Affiliated to JNTUK, Kakinada)
POTHAVARAPPADU (V), (via) Nunna, Agiripalli (M),
Krishna District, A.P. PIN: 521212 Ph: 08656-324999 Website: nrigroupofcolleges.com e-mail: [email protected]
List of Experiments
S. No. Experiment Name Page No.
Processor Programs
1 8 Bit Arithmetic Operation 1
2 16 Bit Arithmetic Operation 3
3 Decimal Addition & Subtraction Operation 5
4 ASCII Addition & Subtraction Operation 6
5 Shift and Rotate Operation 7
6 BCD to ASCII Conversion 10
7 String Operation 11
8. Multi byte Arithmetic Operations 13
9. Signed Multiplication, Division 17
10. ASCII Arithmetic Operations 19
11. Packed to Unpacked BCD 21
12. Unpacked to Packed BCD 23
13. BCD to ASCII conversion 24
14. ASCII to BCD conversion 26
15. Keyboard Display 28
16. 8255 Interfacing 30
17. Interrupt Controller 33
1. 8 Bit Arithmetic Operations
Aim: To perform 8 bit Arithmetic operations like addition, subtraction, multiplication and
division.
Components and Tools required:
1. 8086 Microprocessor Kit.
2. Power Supply.
3. Keyboard.
Programs:
1. 8 Bit Addition.
Address Location Label Mnemonics
3000
3002
3004
3006
MOV AL,05H
MOV BL,07H
ADD AL,BL
INT 3
Input: AL-> 05H
BL-> 07H
Output: AL->0CH
Result: Successfully performed 8 Bit Addition.
2. 8 Bit Subtraction.
Address Location Label Mnemonics
3000
3002
3004
3006
MOV AL,07H
MOV BL,05H
SUB AL,BL
INT 3
Input: AL-> 07H
BL-> 05H
Output: AL->02H
Result: Successfully performed 8 Bit Subtraction.
3. 8 Bit Multiplication.
Address Location Label Mnemonics
3000
3002
3004
3006
MOV AL,05H
MOV BL,02H
MUL BL
INT 3
Input: AL-> 05H
BL-> 02H
Output: AL->0AH
Result: Successfully performed 8 Bit Multiplication.
4. 8 Bit Division.
Address Location Label Mnemonics
3000
3002
3004
3006
MOV AL,04H
MOV BL,02H
DIV BL
INT 3
Input: AL-> 04H
BL-> 02H
Output: AL->02H
Result: Successfully performed 8 Bit Division.
Result: Successfully performed 8 Bit Arithmetic Operations.
2. 16 Bit Arithmetic Operations
Aim: To perform 16 bit Arithmetic operations like Addition, Subtraction, Multiplication and
Division.
Components and Tools required:
1. 8086 Microprocessor Kit.
2. Power Supply.
3. Keyboard.
Programs:
1. 16 Bit Addition.
Address Location Label Mnemonics
3000
3003
3006
3008
MOV AX,0505H
MOV BX,0707H
ADC AX,BX
INT 3
Input: AX-> 0505H
BX-> 0707H
Output: AX->0C0CH
Result: Successfully performed 16 Bit Addition.
2. 16 Bit Subtraction.
Address Location Label Mnemonics
3000
3003
3006
3008
MOV AX,0707H
MOV BX,0505H
SBB AX,BX
INT 3
Input: AX-> 0707H
BX-> 0505H
Output: AX->0202H
Result: Successfully performed 16 Bit Subtraction.
3. 16 Bit Multiplication.
Address Location Label Mnemonics
3000
3003
3006
3008
MOV AX,0505H
MOV BX,0202H
MUL BX
INT 3
Input: AX-> 0505H
BX-> 0202H
Output: AX->0A0AH
Result: Successfully performed 16 Bit Multiplication.
4. 16 Bit Division.
Address Location Label Mnemonics
3000
3003
3006
3008
MOV AX,0404H
MOV BX,0202H
DIV BX
INT 3
Input: AX-> 0404H
BX-> 0202H
Output: AX->0202H
Result: Successfully performed 16 Bit Division.
Result: Successfully performed 16 Bit Arithmetic Operations.
3. Decimal Arithmetic Operations
Aim: To perform Decimal Arithmetic operations like Addition and Subtraction.
Components and Tools required:
1. 8086 Microprocessor Kit.
2. Power Supply.
3. Keyboard.
Programs:
1. Decimal Addition.
Address Location Label Mnemonics
3000
3003
3006
3008
3009
MOV AX,1234
MOV BX,5678
ADC AX,BX
DAA
INT 3
Input: AX-> 1234
BX-> 5678
Output: AX->6812
Result: Successfully performed Decimal Addition.
2. Decimal Subtraction.
Address Location Label Mnemonics
3000
3003
3006
3008
3009
MOV AX,1234
MOV BX,5678
SBB AX,BX
DAS
INT 3
Input: AX-> 5678
BX-> 1234
Output: AX->4444
Result: Successfully performed Decimal Subtraction.
Result: Successfully performed Decimal Arithmetic Operations.
4. ASCII Arithmetic Operations
Aim: To perform ASCII Arithmetic operations like Addition and Subtraction.
Components and Tools required:
1. 8086 Microprocessor Kit.
2. Power Supply.
3. Keyboard.
Programs:
1. ASCII Addition.
Address Location Label Mnemonics
3000
3003
3005
3007
3009
300C
300E
300F
MOV AX,0000
MOV AL,07
ADD AL,30
MOV BL,03
ADD BL,30
ADC AL,BL
AAA
INT 3
Input: AL-> 07, BX-> 03
Output: AX->0100
Result: Successfully performed ASCII Addition.
2. ASCII Subtraction.
Address Location Label Mnemonics
3000
3003
3005
3007
3009
300C
300E
300F
MOV AX,0000
MOV AL,07
ADD AL,30
MOV BL,03
ADD BL,30
SBB AL,BL
AAS
INT 3
Input: AL-> 07, BX-> 03
Output: AX->0004
Result: Successfully performed ASCII Subtraction.
Result: Successfully performed ASCII Arithmetic Operations.
5. Shift and Rotate Operations
Aim: To perform Shift and Rotate operations.
Components and Tools required:
1. 8086 Microprocessor Kit.
2. Power Supply.
3. Keyboard.
Programs:
1. Shift Left Operation.
Address Location Label Mnemonics
3000
3003
3005
3007
3009
MOV AX,0000
MOV AL,95H
MOV CL,04H
SHL AL,CL
INT 3
Input: AX-> 0000
AL-> 95
Output: AX->0950
Result: Successfully performed Shift Left Operation.
2. Shift Right Operation.
Address Location Label Mnemonics
3000
3003
3005
3007
3009
MOV AX,0000
MOV AL,95H
MOV CL,04H
SHR AL,CL
INT 3
Input: AX-> 0000
AL-> 95
Output: AX->0009
Result: Successfully performed Shift Right Operation.
3. Shift Adjust Left Operation.
Address Location Label Mnemonics
3000
3003
3005
3007
3009
MOV AX,0000
MOV AL,95H
MOV CL,03H
SAL AL,CL
INT 3
Input: AX-> 0000
AL-> 95
Output: AX->00A8
Result: Successfully performed Shift Adjust Left Operation.
4. Shift Adjust Right Operation.
Address Location Label Mnemonics
3000
3003
3005
3007
3009
MOV AX,0000
MOV AL,95H
MOV CL,03H
SAR AL,CL
INT 3
Input: AX-> 0000
AL-> 95
Output: AX->0012
Result: Successfully performed Shift Right Operation.
5. Rotate Left Operation.
Address Location Label Mnemonics
3000
3003
3005
3007
3009
MOV AX,0000
MOV AL,95H
MOV CL,04H
ROL AL,CL
INT 3
Input: AX-> 0000
AL-> 95
Output: AX->0059
Result: Successfully performed Rotate Left Operation.
6. Rotate Right Operation.
Address Location Label Mnemonics
3000
3003
3005
3007
3009
MOV AX,0000
MOV AL,95H
MOV CL,04H
ROR AL,CL
INT 3
Input: AX-> 0000
AL-> 95
Output: AX->0059
Result: Successfully performed Rotate Right Operation.
7. Rotate Carry Left Operation.
Address Location Label Mnemonics
3000
3003
3005
3007
3009
MOV AX,0000
MOV AL,95H
MOV CL,04H
RCL AL,CL
INT 3
Input: AX-> 0000
AL-> 95
Output: AX->0054
Result: Successfully performed Rotate Carry Left Operation.
8. Rotate Carry Right Operation.
Address Location Label Mnemonics
3000
3003
3005
3007
3009
MOV AX,0000
MOV AL,95H
MOV CL,04H
RCR AL,CL
INT 3
Input: AX-> 0000
AL-> 95
Output: AX->00A9
Result: Successfully performed Rotate Carry Right Operation.
Result: Successfully performed Shift and Rotate Operations
6. BCD to ASCII Conversion
Aim: To convert BCD to ASCII numbers.
Components and Tools required:
1. 8086 Microprocessor Kit.
2. Power Supply.
3. Keyboard.
Programs:
Address Location Label Mnemonics
3000
3002
3004
3006
3009
300B
300E
MOV AL,63
MOV AH,AL
MOV CL,04
AND AX,0F00F
ROL AH,CL
ADD AX,3030
INT 3
Input: AL-> 63
AX-> 3030
CL->4
Output: AX->3633
Result: Successfully performed the conversion of BCD to ASCII numbers.
7. String Operations
Aim: To perform String operations like Moving, Compare, Insert & Delete.
Components and Tools required:
1. 8086 Microprocessor Kit.
2. Power Supply.
3. Keyboard.
Programs:
1. Moving a Block of Data.
Address Location Label Mnemonics
3000
3003
3006
3007
3008
3009
MOV SI,7000
MOV DI,9000
CLD
REP
MOVSB
INT 3
Input: SI-> 7000 => 12H, 34H, 56H, 78H
Output: DI->9000 => 12H, 34H, 56H, 78H
Result: Successfully Moved the Block of Data from one location to another location.
2. Compare two Strings.
Address Location Label Mnemonics
3000
3003
3006
3009
300A
300B
300C
300F
3011
MOV SI,7000
MOV DI,9000
MOV CL,5
CLE
REPE
CMPSB
MOV BX,7000
MOV BX,SI
INT 3
Input: SI-> 7000 => 12H, 34H, 56H, 78H
DI-> 9000 => 12H, 34H, 51H, 78H
Output: BX->8000 => 9003
Result: Successfully compared two different Strings.
3. Insert the Data into the String.
Address Location Label Mnemonics
3000
3003
3006
3009
300B
300D
300E
300F
3010
3012
MOV SI,7000
MOV DI,9000
MOV CL,4
MOV BL,05
MOV [DI],BL
INC DI
CLD
REP
MOV SB
INT 3
Input: SI-> 7000 => 12H, 34H, 56H, 78H
Output: DI->9000 => 05H, 12H, 34H, 56H, 78H
Result: Successfully Inserted the Data into the String.
4. Delete the Data from the String.
Address Location Label Mnemonics
3000
3003
3006
3009
300A
300B
300C
300D
MOV SI,7000
MOV DI,9000
MOV CX,4
DEC CX
CLD
REP
MOV SB
INT 3
Input: SI-> 7000 => 12H, 34H, 56H, 78H
Output: DI->9000 => 34H, 56H, 78H
Result: Successfully Deleted the Data from a string.
Result : Successfully performed Different String Operations.
8. MULTIBYTE ARITHMETIC OPERATIONS
Aim: To perform The Multibyte Arithmetic Operations
Components and Tools required:
1. MASM Software
2. A Personal Computer
Programs:
1. MULTIBYTE ADDITION
DATA SEGMENT
N1 DB 55H, 66H, 77H
N2 DB 11H, 22H, 33H
RESULT DB ?
COUNT DB 03H
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA
START: MOV AX, DATA
MOV DS, AX
MOV SI, OFFSET N1
MOV DI, OFFSET N2
MOV BX, OFFSET RESULT
MOV CL,COUNT
BACK: MOV AL, [SI]
MOV DL, [DI]
ADD AL, DL
MOV [BX], AL
INC SI
INC DI
INC BX
DEC CL
JNZ BACK
MOV AH, 4CH
INT 21H
CODE END
END START
Result: Successfully performed the Addition.
2..MULTIBYTE SUBTRACTION
DATA SEGMENT
N1 DB 55H, 66H, 77H
N2 DB 11H, 22H, 33H
RESULT DB ?
COUNT DB 03H
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA
START: MOV AX, DATA
MOV DS, AX
MOV SI, OFFSET N1
MOV DI, OFFSET N2
MOV BX, OFFSET RESULT
MOV CL,COUNT
BACK: MOV AL, [SI]
MOV DL, [DI]
SUB AL, DL
MOV [BX], AL
INC SI
INC DI
INC BX
DEC CL
JNZ BACK
MOV AH, 4CH
INT 21H
CODE ENDS
END START
Result: Successfully performed the Subtraction
3. MULTIBYTE MULTIPLICATION
DATA SEGMENT
N1 DB 15H, 24H, 25H
N2 DB 21H, 22H, 26H
RESULT DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA
START: MOV AX, DATA
MOV DS, AX
MOV SI, OFFSET N1
MOV DI, OFFSET N2
MOV BX, OFFSET RESULT
MOV CL, 03H
BACK: MOV AL, [SI]
MOV DH, [DI]
MUL DH
MOV [BX], AX
INC SI
INC DI
INC BX
INC BX
DEC CL
JNZ BACK
MOV AH, 4CH
INT 21H
CODE ENDS
END START
Result: Successfully performed the Multiplication
4. MULTIBYTE DIVISION
DATA SEGMENT
NUM1 DB 72H
NUM2 DB 02H
QUO DB 1 DUP(0)
REM DB 1 DUP(0)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV AL,NUM1
MOV AH,0H
DIV NUM2
MOV QUO,AL
MOV REM,AH
MOV AH,4CH
INT 21H
CODE ENDS
END START
Result: Successfully performed the Division
9. Signed Multiplication, Division
Aim: To perform The Signed Multiplication, Division
Components and Tools required:
1. MASM Software
2. A Personal Computer
PROGRAM:
1. SIGNED MULTIPLICATION
DATA SEGMENT
NUM DB -02H,01H
PROD DW 2 DUP(0)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV SI,OFFSET NUM
MOV AL,[SI]
MOV BL,[SI+1]
IMUL BL
MOV PROD,AX
MOV AH,4CH
INT 21H
CODE ENDS
END START
Result: Successfully performed the Signed Multiplication
2.SIGNED DIVISION
DATA SEGMENT
NUM1 DB -10
NUM2 DB 02
QUO DB 1 DUP(0)
REM DB 1 DUP(0)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV AL,NUM1
CBW
IDIV NUM2
MOV QUO,AL
MOV REM,AH
MOV AH,4CH
INT 21H
CODE ENDS
END START
Result: Successfully performed the Signed Division
10. ASCII ARITHMETIC OPERATIONS
Aim: To perform The ASCII Arithmetic Operations
Components and Tools required:
1. MASM Software
2. A Personal Computer
PROGRAM:
CODE SEGMENT
ASSUME CS:CODE
START:
MOV AX,31H
ADD AX,39H
AAA
ADD AX,3030H
MOV BL,9
MOV AX,0702H
AAD
DIV BL
MOV AL,5
MOV CL,5
MUL CL
AAM ;
ADD AX,3030H
MOV AX,38H
SUB AX,31H
AAS
AX,3030H
MOV AH,4CH
INT 21H
CODE ENDS
END START
Result: Successfully performed the ASCII Arithmetic Operations
11. PACKED BCD TO UNPACKED BC
Aim: To Convert A Packed BCD to Unpacked BCD
Components and Tools required:
1. MASM Software
2. A Personal Computer
PROGRAM:
DATA SEGMENT
N EQU 29H
RESULT DB 02H DUP (0)
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA
START: MOV AX, DATA
MOV DS, AX
MOV AL, N
MOV BL, N
MOV CL, 04H
AND AL, 0Fh
AND BL, 0F0h
ROR BL, CL
MOV [RESULT], BL
MOV [RESULT+1], AL
MOV AH, 4Ch
INT 21h
CODE ENDS
END START
12. UNPACKED BCD TO PACKED BCD
Aim: To Convert a Unpacked BCD number to Packed BCD Number
Components and Tools required:
1. MASM Software
2. A Personal Computer
PROGRAM:
DATA SEGMENT
N1 DB 05H, 06H
BCD DB ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DS, AX
XOR AX, AX
MOV AL, N1
MOV BL, N1+1
MOV CL, 04H
ROR BL, CL
OR AL, BL
MOV BCD,AL
MOV AH, 4CH
INT 21H
CODE ENDS
END START
Result: Successfully performed the Unpacked BCD to Packed BCD
13. BCD to ASCII Conversion
Aim: To Perform BCD to ASCII Conversion
Components and Tools required:
1. MASM Software
2. A Personal Computer
PROGRAM:
DATA SEGMENT
BCD DB 17H
ASCII DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA
START: MOV AX, DATA
MOV DS, AX
MOV AL, BCD
MOV CL, 04
MOV AH, AL
AND AL, 0FH
AND AH, 0F0H
ROR AH, CL
OR AL, 30H
OR AH, 30H
MOV ASCII, AX
MOV AH, 4CH
INT 21H
CODE ENDS
END START
14. ASCII to BCD Conversion
Aim: To perform ASCII to BCD Conversion
Components and Tools required:
1. MASM Software
2. A Personal Computer
PROGRAM:
ASCII to BCD CONVERSION
DATA SEGMENT
ASCII1 DB ‘1’
ASCII2 DB ‘7’
BCD DB ?
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA
START: MOV AX, DATA
MOV DS, AX
MOV CL, 04H
MOV AL, ASCII1
MOV BL, ASCII2
AND AL, 0FH
AND BL, 0FH
ROR AL, CL
OR AL, BL
MOV BCD, AL
15. Keyboard Display
Aim: To display the characters based on the key pressed on the key pad.
Components and Tools required:
1. 8086 Microprocessor Kit.
2. 8279 Study Card.
3. Cables.
4. Power Supply.
5. Keyboard.
Programs:
Address Location Label Mnemonics
3000
3003
3006
3008
3009
300B
300C
300F
3011
3014
3015
3017
301A
301D
301E
3020
3022
3024
3025
3028
3029
302B
302D
302F
3032
3034
3035
3038
303A
303B
303E
ADDR1:
ADDR3:
ADDR2:
MOV BX,00
MOV DX,0FFC2
MOV AL,00
OUT DX,AL
MOV AL,90
OUT DX,AL
MOV CX,0008
MOV AL,00
MOV DX,0FFC0
OUT DX,AL
LOOP ADDR1
MOV SI,2500
MOV DX,0FFC2
IN AL,DX
AND AL,07
JZ ADDR2
MOV AL,40
OUT DX,AL
MOV DX,0FFC0
IN AL,DX
AND AL,1F
MOV BL,AL
ADD SI,BX
MOV DX,0FFC2
MOV AL,94
MOV DX,AL
MOV DX,0FFC0
MOV AL,0F3
OUT DX,AL
MOV DX,0FFC2
MOV AL,95
3040
3041
3044
3046
3047
3049
OUT DX,AL
MOV DX,0FFC0
MOV AL,[SI]
OUT DX,AL
JMP ADDR3
INT 3
Input: SI-> 2050 => F3H, 60H, B5H, F4H, 66H, D6H, D7H, 70H, F7H, 76H,
77H, C7H, 93H, E5H, 97H, 17H
Output: Displayed on the screen the character pressed.
Result: Successfully displayed the character on the screen.
16. 8255 Interfacing
Aim: To generate the sin, triangle and saw tooth wave forms on the CRO by using 8255
interfacing devices.
Components and Tools required:
1. 8086 Microprocessor Kit.
2. 8255 Study Card.
3. 8255 Power Supply.
4. CRO.
5. Power Supply.
6. Keyboard.
Programs:
1. Sinusoidal Wave Form
Address Location Label Mnemonics
3000
3002
3005
3006
3009
300C
300E
3011
3012
3015
3016
3017
3018
301A
301C
ADDR2:
ADDR1:
MOV AL,80
MOV DX,0FFE6
OUT DX,AL
MOV SI,2500
MOV CX,000C
MOV AL,[SI]
MOV DX,0FFE0
OUT DX,AL
MOV DX,0FFC2
OUT DX,AL
INC SI
DEC CX
JNE ADDR1
JMP ADDR2
INT 3
Input: SI-> 2500 => 80H, C0H, EEH, FFH, EEH, C0H, 80H, 40H, 12H, 00H,
12H, 40H, 80H
Output: Time Period: 1/F=
Amplitude =
Result: Successfully generated the sine wave on the CRO and noted down the time
period and Amplitude.
2. Triangle Wave Form
Address Loca
Tion
Label Mnemonics
3000
3003
3005
3006
3009
300B
300D
3010
3011
3014
3015
3017
301A
301C
301E
3021
3022
3025
3026
3028
302A
ADDR1:
ADDR2:
ADDR3:
MOV DX,0FFE6
MOV AL,80
OUT DX,AL
MOV CX,00FF
MOV AL,00
INC AL
MOV DX,0FFE0
OUT DX,AL
MOV DX,0FFE2
OUT DX,AL
LOOP ADDR2
MOV CX,00FF
MOV AX,CX
DEC AL
MOV DX,0FFE0
OUT DX,AL
MOV DX,0FFE2
OUT DX,AL
LOOP ADDR3
JMP ADDR1
INT 3
Output: Time Period: 1/F=
Amplitude =
Result: Successfully generated the Triangle wave on the CRO and noted down the
time period and Amplitude.
3. Sawtooth Wave Form
Address Location Label Mnemonics
3000
3003
3005
3006
3008
300B
300C
300F
3010
3012
3014
ADDR1:
MOV DX,0FFE0
MOV AL,80
OUT DX,AL
MOV AL,00
MOV DX,0FFE0
OUT DX,AL
MOV DX,0FFE2
OUT DX,AL
INC AL
JMP ADDR1
INT 3
Output: Time Period: 1/F=
Amplitude =
Result: Successfully generated the Saw tooth wave on the CRO and noted down the time period
and Amplitude.
Result: Successfully displayed the wave forms on the CRO.
17. 8259 Interrupt Controller Interfacing
Aim: To generate an interrupt by using 8259 interrupt controller.
Components and Tools required:
1. 8086 Microprocessor Kit.
2. 8259 Study Card.
3. Power Supply.
4. Keyboard.
Programs:
Address Location Label Mnemonics
3000
3003
3005
3006
3009
300B
300C
300E
300F
3011
3012
3013
3015
ADDR:
MOV DX,0FFC8
MOV AL,17
OUT DX,AL
MOV DX,0FFCA
MOV AL,48
OUT DX,AL
MOV AL,03
OUT DX,AL
MOV AL,00
OUT DX,AL
STI
JMP ADDR
INT 3
Address Location Label Mnemonics
2200
2201
2205
2208
CLI
LEA DX,@2100
JMP 2300
INT 3
Address Location Label Mnemonics
2210
2211
2215
2218
CLI
LEA DX,@2110
JMP 2300
INT 3
Address Location Label Mnemonics
2220
2221
CLI
LEA DX,@2120
2225
2228
JMP 2300
INT 3
Address Location Label Mnemonics
2230
2231
2235
2238
CLI
LEA DX,@2130
JMP 2300
INT 3
Address Location Label Mnemonics
2240
2241
2245
2248
CLI
LEA DX,@2140
JMP 2300
INT 3
Address Location Label Mnemonics
2250
2251
2255
2258
CLI
LEA DX,@2150
JMP 2300
INT 3
Address Location Label Mnemonics
2260
2261
2265
2268
CLI
LEA DX,@2160
JMP 2300
INT 3
Address Location Label Mnemonics
2270
2271
2275
2278
CLI
LEA DX,@2170
JMP 2300
INT 3
Address Location Label Mnemonics
2300
2302
2305
2307
230C
230D
230F
MOV SI,DX
MOV CX,0005
MOV AL,[SI]
CALLS 0FE00:0000
INC SI
LOOP 2305
STI, IRET
Input:
2100 -- 49H, 4EH, 54H, 00H, 30H
2110 -- 49H, 4EH, 54H, 00H, 31H
2120 -- 49H, 4EH, 54H, 00H, 32H
2130 -- 49H, 4EH, 54H, 00H, 33H
2140 -- 49H, 4EH, 54H, 00H, 34H
2150 -- 49H, 4EH, 54H, 00H, 35H
2160 -- 49H, 4EH, 54H, 00H, 36H
2170 -- 49H, 4EH, 54H, 00H, 37H
IR-0: 0120 - 00H
0121 - 22H
0122 - 00H
0123 - 00H
IR-1: 0124 - 10H
0125 - 22H
0126 - 00H
0127 - 00H
IR-2: 0128 - 20H
0129 - 22H
012A - 00H
012B - 00H
IR-3: 012C - 30H
012D - 22H
012E - 00H
012F - 00H
IR-4: 0130 - 40H
0131 - 22H
0132 - 00H
0133 - 00H
IR-5: 0134 - 50H
0135 - 22H
0136 - 00H
0137 - 00H
IR-6: 0138 - 60H
0139 - 22H
013A - 00H
013B - 00H
IR-7: 013C - 70H
013D - 22H
013E - 00H
013F - 00H
Output:
4 Way Switch