public void addOffset(int bhw,int p,int val,int[] encoding)
    {
        p=p-1;
        String o=Integer.toBinaryString(val);
        if(val>(Math.pow(2, p)*bhw-1) || val<-(Math.pow(2, p)*bhw))
        {
            System.out.println("!---------- ERROR: Offset out of range ----------!");
            System.exit(0);
        }
        for(int i=o.length()-1;i>=0;i--)
        {
            if(o.charAt(i)=='1')
                encoding[i]=1;
        }
    }