.model	small
 0000						.data
 0000 49 6E 20 64 61 74		msg		db	"In data segment",0dh,0ah,"$"
       61 20 73 65 67 6D
       65 6E 74 0D 0A 24
						.stack	100h
 0000						.code
 0000				main		proc
 0000  B8 ---- R				mov	ax,@data
 0003  8E D8					mov ds,ax


 0005  B8 0000			top:		mov	ax,0
 0008  83 C0 01					add	ax,1

 000B  74 F8					jz	top		;000D + FFF8 = 0005
 000D  0E E8 0090				call 	farproc		;0011 + 0090 = 00A1
 0011  E8 0095					call 	nearproc	;0014 + 0095 = 00A9
 0014  EB 7F					jmp 	short_next	;0016 + 007F = 0095
 0016  E9 0082					jmp 	near_next	;0019 + 0082 = 009B
 0019  EB EA					jmp	top		;001B + FFEA = 0005
 001B  EA ---- 00A1 R				jmp 	far ptr farproc	;00A1 is the offset

 0020  B8 0001					mov ax,1
 0023  B8 0001					mov ax,1
	...					  ...	
 008F  B8 0001					mov ax,1
 0092  B8 0001					mov ax,1
 0095				short_next:
 0095  B8 0001					mov ax,1
 0098  B8 0001					mov ax,1
 009B				near_next:
 009B  B8 4C00					mov ax,4c00h
 009E  CD 21					int 21h
 00A0  C3					ret
 00A1				main		endp
 00A1				farproc		proc	far
 00A1  B4 09					mov ah,09h
 00A3  BA 0000 R				mov dx,offset msg
 00A6  CD 21					int 21h
 00A8  CB					ret
 00A9				farproc		endp
 00A9				nearproc	proc
 00A9  B4 09					mov ah,09h
 00AB  BA 0000 R				mov dx,offset msg
 00AE  CD 21					int 21h
 00B0  C3					ret
 00B1				nearproc	endp
						end		main