Error A2006 : undefined symbol : DGROUP-Collection of common programming errors
I am trying to assembly this code, but it returns an error. Could you please help me to fix it? Thanks.
INCLUDE irvine16.inc
.data
array db 31h,32h,33h,34h ;use db to define array
COUNT = ($-array) ;The $ operator gives the value of the location counter.
.code
main proc
mov ax, @data ;copy the address of the data segment
mov ds, ax ;@data into the DS register
mov bx, offset array ;the offset operator returns the 16-bit offset of a label
mov cx, COUNT ;set up cx register as a counter register.
mov ah, 02 ;use function 2 of int 21h - display char stored in dl on screen
LP1: mov dl, [bx] ;LP1 is a label
int 21h
inc bx
loop LP1 ;decrement cx; if cx not =0,loop back to label LP1.
mov ax, 4c00h
int 21h
main endp
end main
-
DGROUP is a 16-bits concept, so the remark in pmod’s link (it is 16-bit code, DGROUP is a 16-bit concept, make sure you use the 16-bit linker) is true.
If that doesn’t resolve it, play with your memory model (.model), Dos is 16 years ago for me, but IIRC some segments only existed in some memory models.
Originally posted 2013-11-10 00:14:11.