CHR$(DAT[0])〜CHR$(DAT[3])の文字列変換をした際に“D“,“A“,“T“,“A“という1文字ずつの文字列になります。
一文字ずつと書いていますが正確には“D“の後ろには文字列終端の0が入っているので2*4のメモリが使われます。
最後にこれらの文字列を連結して“DATA“となり、この文字列にも終端があるので5文字分消費されます。結果13文字分メモリが使われます。
通常はこういう小さなメモリ操作はスタックと言われる瞬間的な一時メモリ上で積まれてすぐ解放されるものですが、プチコンではそういう扱いで実行しているかは分かりません。
あと変数用メモリとかあるんですかね?ソースコードに毎回「CHR$(DAT[0])+CHR$(DAT[1])+…」と書いていく方がメモリを食いそうですけど。