I am not sure why you must shift the data instead of using the index ( you can use one or more indices to keep track of the DM that you program is working with). But if you really must shift data, you can write a FOR NEXT loop.
E.g. The following routine shift data from DM[N-1] to DM[N], then DM[N-2] to DM[N-1] and so on until DM[1] to DM[2] .
The new data is stored into DM[1]. You have to test the condition of N = 160 and decide what you want to do when it reaches 160.
E.g.
A$ = INPUT$(1)
IF LEN (A$) <> 0
N = N+1
' IF N = 160 THEN...... ELSE...ENDIF
FOR I = N to 2 STEP -1
DM[N] = DM[N-1]
NEXT
DM[1] = VAL(A$)
ENDIF