Académique Documents
Professionnel Documents
Culture Documents
Assistant Professor
NIT Delhi
8086 Microprocessor
(v) Find the number of times (i.e., count n) the loop in the
delay program has to be executed by dividing the required
time delay (td) by the time taken to execute the loop once,
which is m X T
Count (n) = td/ (m X T)
The time delay obtained using this method is sufficiently
accurate to be used in many problems. When more accurate
delays are required, the programmable timer IC 8253 or the
8254 can be used.
Dheeraj Suri
Assistant Professor
NIT Delhi
8086 Microprocessor
L1:
Instruction
DEC BX
NOP
JNZ L1
16
RET
Dheeraj Suri
Assistant Professor
NIT Delhi
8086 Microprocessor
Assistant Professor
NIT Delhi
8086 Microprocessor
Assistant Professor
NIT Delhi
8086 Microprocessor
No. of T-states
DEC Register
NOP
JNZ Label
16
RET
Assistant Professor
NIT Delhi
8086 Microprocessor
NEXT
;Description
;No of T-states
DEC BX
NOP
JNZ NEXT
16
RET
Dheeraj Suri
Assistant Professor
NIT Delhi
8086 Microprocessor
No. of T-states
DEC Register
NOP
JNZ Label
16
RET
Dheeraj Suri
Assistant Professor
NIT Delhi
8086 Microprocessor
Assembler Directives
Assistant Professor
NIT Delhi
8086 Microprocessor
Assembler Directives
Dheeraj Suri
Assistant Professor
NIT Delhi
10
8086 Microprocessor
Dheeraj Suri
Assistant Professor
NIT Delhi
11
8086 Microprocessor
Example:
DATA 1 DB 20h
CITY DB NARELA
DATA2 DW 1020h
Dheeraj Suri
Assistant Professor
NIT Delhi
12
8086 Microprocessor
Array DB 20 DUP(0)
ARRAY2 DB 50 DUP
(64h)
;
;
;
;
Dheeraj Suri
NIT Delhi
13
8086 Microprocessor
Dheeraj Suri
Assistant Professor
NIT Delhi
14
8086 Microprocessor
Dheeraj Suri
Assistant Professor
NIT Delhi
15
8086 Microprocessor
Dheeraj Suri
Assistant Professor
NIT Delhi
16
8086 Microprocessor
Example:
EVEN
RESULT
PROC NEAR
..
RESULT
; Instructions in the
;RESULT Procedure
ENDP
Dheeraj Suri
Assistant Professor
NIT Delhi
17
8086 Microprocessor
Dheeraj Suri
Assistant Professor
NIT Delhi
18
8086 Microprocessor
LABEL NEAR
CALCULATE
LABEL FAR
Dheeraj Suri
Assistant Professor
NIT Delhi
19
8086 Microprocessor
Assistant Professor
NIT Delhi
20
8086 Microprocessor
; Instructions of CODE 1
segment
CODE 1 ENDS
Dheeraj Suri
Assistant Professor
NIT Delhi
21
8086 Microprocessor
Dheeraj Suri
Assistant Professor
NIT Delhi
22
8086 Microprocessor
Dheeraj Suri
Assistant Professor
NIT Delhi
23
8086 Microprocessor
MOV DS, AX
Dheeraj Suri
Assistant Professor
NIT Delhi
24
8086 Microprocessor
Dheeraj Suri
Assistant Professor
NIT Delhi
25
8086 Microprocessor
;Procedure
; Code of SALARY
SALARY ENDP
Dheeraj Suri
Assistant Professor
NIT Delhi
26
8086 Microprocessor
MODULE1 SEGMENT
PUBLIC SQURE_ROOT
SQUARE_ROOT PROC FAR
.
; CODE OF SQUARE_ROOT
PROCEDURE
SQUARE_ROOT ENDP
MODULE1 ENDS
; Code continued on next
; slide
Dheeraj Suri
Assistant Professor
NIT Delhi
27
8086 Microprocessor
MODULE2 SEGMENT
EXTRN SQUARE_ROOT FAR
; CODE OF MODULE2
CALL SQUARE_ROOT
MODULE 2 ENDS
NOTE:
Dheeraj Suri
Assistant Professor
NIT Delhi
28
8086 Microprocessor
MODULE2 SEGMENT
EXTRN SQUARE_ROOT FAR
; CODE OF MODULE2
CALL SQUARE_ROOT
MODULE 2 ENDS
NOTE:
Dheeraj Suri
Assistant Professor
NIT Delhi
29
8086 Microprocessor
PTR
Examples:
GLOBAL
Example:
LOCAL
Example:
Assistant Professor
NIT Delhi
30
8086 Microprocessor
NAME
SHORT
TYPE
Dheeraj Suri
Assistant Professor
NIT Delhi
31
8086 Microprocessor
Assistant Professor
NIT Delhi
32
8086 Microprocessor
Dheeraj Suri
Assistant Professor
NIT Delhi
33
8086 Microprocessor
DATA1 SEGMENT
;data segment
; starts
; 10 bytes are
; stored
COUNT EQU 10
; Count is the
; number of bytes
; in the array
AVERAGE DB 01 DUP(0)
DATA1 ENDS
; data segment
; ends
Dheeraj Suri
Assistant Professor
NIT Delhi
34
8086 Microprocessor
START:
CODE1 SEGMENT
; Code segment
; starts
; Segment address
of DATA1 is moved
to AX
MOV DS, AX
; MOV AX contents
to DS
; Move offset
; address of
ARRAY to SI
XOR AX, AX
; Clear AX and
Carry
; Flag
; Clear BX
; Move COUNT to
CX
Dheeraj Suri
Assistant Professor
NIT Delhi
35
8086 Microprocessor
ADD AX, BX
; Add AX and BX
INC SI
; Increment SI to
point to next byte
LOOP NEXT
; Repeat Loop
; NEXT CX times
; MOV Count to DH
DIV DH
;Divide AX by CH
MOV AVERAGE, AL
; Store AL contents
; in AVERAGE
CODE1 ENDS
;Code Segment
ends
Dheeraj Suri
Assistant Professor
NIT Delhi
36
8086 Microprocessor
Dheeraj Suri
Assistant Professor
NIT Delhi
37