
PROGRAMMING CONCEPTS – IV 183
TAKE_IN: MOV TMPS[BX], AL ;transfer data to memory
INC DX ;increment port address
INC BX ;increment memory address pointer
LOOP TAKE_IN ;repeat until CX = 0
MOV AH, MAX ;copy maximum temperature to AH.
MOV DX, 0200H ;get address of fi rst o/p port
MOV AL, 01 ;get data for alarm, in AL
MOV CX, 20 ;CX = count
MOV BX, 0 ;BX = 0
AGAIN: CMP TMPS[BX], AH ;compare data in memory with MAX
JA ALARM ;if data>MAX, go to ALARM
OTHER: INC DX ;increment port address
INC BX ;increment address pointer
LOOP AGAIN ;repeat until CX = 0
JMP EXEET ;jump to exit point
ALARM: OUT DX, AL ;output alarm data to o/p port ...