SUBROUTINE MOVE(FROMB,TOB,COUNT) INTEGER COUNT,FROMB(COUNT),TOB(COUNT) INTEGER MASK DATA MASK /ZFFFF0000/ IDX=ISHFT(COUNT,-1) IF(IDX.LE.0)GOTO 20 DO 10 I=1,IDX TOB(I)=FROMB(I) 10 CONTINUE 20 CONTINUE IF(IAND(COUNT,1).EQ.0)GOTO 30 TOB(IDX+1)=IAND(TOB(IDX+1),NOT(MASK))+IAND(FROMB(IDX+1),MASK) 30 CONTINUE RETURN END