code: function bnpBitwiseTo(a,op,r) {
    var this_array = this.array;
    var a_array    = a.array;
    var r_array    = r.array;
    var i, f, m = Math.min(a.t,this.t);
    for(i = 0; i < m; ++i) r_array[i] = op(this_array[i],a_array[i]);
    if(a.t < this.t) {
      f = a.s&BI_DM;
      for(i = m; i < this.t; ++i) r_array[i] = op(this_array[i],f);
      r.t = this.t;
    }
    else {
      f = this.s&BI_DM;
      for(i = m; i < a.t; ++i) r_array[i] = op(f,a_array[i]);
      r.t = a.t;
    }
    r.s = op(this.s,a.s);
    r.clamp();
  }
docs: (protected) r = this op a (bitwise)