Δ = 
        N[Table[(2^(-i)), {i, 1, 30}], 16];
CosΔ = 
        Cos[Δ];
SinΔ = 
        Sin[Δ];

TanΔ = 
        Tan[Δ];
CosProd  =  Apply[Times,  CosΔ];

Clear[x, y, z, k]
{x[1], y[1], z[1]} = {1, 0, 0}; 
x[k_] := x[k] = 
        CosShifts[[k - 1]] x[k - 1]  -  
          SinShifts[[k - 1]] 
            y[k - 1]; 
y[k_] := y[k] = 
        CosShifts[[k - 1]] y[k - 1]  +  
          SinShifts[[k - 1]] 
            x[k - 1]; 
z[k_] := z[k] = z[k - 1] + Shifts[[k - 1]]

\(CORDICComp[ΔIn_] := 
      Module[
{x, y, z, 
          k}, 
{x[1], y[1], z[1]} = {1, 0, 
            0}; 
Do[
Switch[
ΔIn[[
              k]], 
1, \ \((
x[k] = 
                CosΔ[\([\)\(k - 1\)\(]\)]\ x[k - 1]\  - \ 
                  SinΔ[\([\)\(k - 1\)\(]\)] 
                    y[k - 1]; 
y[k] = 
                CosΔ[\([\)\(k - 1\)\(]\)]\ y[k - 1]\  + \ 
                  SinΔ[\([\)\(k - 1\)\(]\)] 
                    x[k - 1]; 
z[k] = 
                z[k - 1] + Δ[\([\)\(k - 
                      1\)\(]\)]; 
)\), 
0, \ \((
x[k] = 
                x[k - 1]; 
y[k] = 
                y[k - 1]; 
z[k] = 
                z[k - 1]; 
)\), 
_, \ 
            Print["Not suitable Δ List"]
], 
{k, 2, 
            Length[ΔIn]}
]; 
p = 
          Length[ΔIn]; 
{
{x[p], y[p]}, 
z[
            p], 
{Cos[z[p]], 
            Sin[z[p]]}
}
]\)

CORDICComp[{1, 1, 0, 0, 1, 1, 1}]

(1* 1/2  +  1. * 1/4  +  0*1/8  +  0* 1/16  +  
        1*1/32  +  1* 1/64  +  1* 1/128 )

?Switch