要素ごとに文字列をアセンブリ言語の別の文字列に移動しようとしています。問題は、アセンブリ時に「相対型を追加できません」などのエラーが発生し続けることです。これはなぜですか?また、STRING から STRING2 にすべての要素をコピーできるように修正するにはどうすればよいですか?
DATA SEGMENT PARA PUBLIC 'DATA'
STRING DB 1, 2, 3, 4 ; first string
LENGTH DB $-STRING ; length of the first string
ITERATOR DB 0
DATA ENDS
DATA SEGMENT PARA PUBLIC 'DATA'
STRING2 DB 100 DUP (?) ; second string
DATA ENDS
CODE SEGMENT PARA PUBLIC 'CODE'
START PROC FAR
ASSUME CS:CODE, DS:DATA
PUSH DS
XOR AX, AX
PUSH AX
MOV AX,DATA
MOV DS,AX
MOV CL, LENGTH ;
THELOOP:
MOV ITERATOR, CL
SUB ITERATOR, 1
MOV STRING2[ITERATOR], STRING[ITERATOR] ; this is where the error appears
LOOP THELOOP
RET
START ENDP
CODE ENDS
END START