      double precision function  dadx(x,n)
*     (Increment exponent of x)
*     [14-Nov-1990]
      double precision wf, x
      integer n, olde, wi(2)

*     Force storage overlay so we can twiddle bits
      equivalence (wi(1), wf)

      wf = x

*     Extract old exponent
      olde = and(rshift(wi(1),20),z'7ff')

*     Increment old exponent
      olde = and(olde + n,x'7ff')

*     Zero exponent field
      wi(1) = and(wi(1),z'800fffff')

*     Or in the new exponent field
      wi(1) = or(wi(1),lshift(olde,20))

      dadx = wf

      end
