UNT &gt; 63)
THEN
    DEST[63:0] ← 0
ELSE
    DEST[63:0]←ZeroExtend(SRC[63:0] &gt;&gt; COUNT);
FI;
LOGICAL_RIGHT_SHIFT_WORDS_256b(SRC, COUNT_SRC)
COUNT ←COUNT_SRC[63:0];
IF (COUNT &gt; 15)
THEN
    DEST[255:0] ←0
ELSE
    DEST[15:0]←ZeroExtend(SRC[15:0] &gt;&gt; COUNT);
    (* Repeat shift operation for 2nd through 15th words *)
    DEST[255:240]←ZeroExtend(SRC[255:240] &gt;&gt; COUNT);
FI;
LOGICAL_RIGHT_SHIFT_WORDS(SRC, COUNT_SRC)
COUNT ←COUNT_SRC[63:0];
IF (COUNT &gt; 15)
THEN
    DEST[127:0